天天看点

Linux下OTG支持USB摄像头

 https://www.cnblogs.com/rockyching2009/p/11271498.html

一、USB和OTG简介

1、USB不支持P2P(Peer to Peer)的传输,因此必需是Master/Slave

2、比如U盘等无源设备插入电脑,电脑为host,U盘为device

3.在没有电脑的情况下,两个device要传输,仍然需要满足Master/Slave架构,因此就有了OTG这个技术,使得device间可籍由协议(HNP,Host negotiation protocol)的沟通决定谁是host/device。

echo 1 > /sys/bus/platform/drivers/usb20_otg/force_usb_mode

二、内核配置

CONFIG_VIDEO_DEV=y
CONFIG_VIDEO_V4L2_COMMON=y
CONFIG_VIDEO_MEDIA=y
CONFIG_USB_VIDEO_CLASS=y
CONFIG_V4L_USB_DRIVERS=y
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
      

三、验证

编译内核,烧录。

这时内核有如下打印:

[ 2468.668465] usb 1-1: new high-speed USB device number 3 using dwc2

[ 2468.877999] uvcvideo: Found UVC 1.00 device USB2.0 UVC PC Camera (05e3:0510)

[ 2468.911102] input: USB2.0 UVC PC Camera as /devices/platform/ff400000.usb/usb1/1-1/1-1:1.0/input/input2

说明USB摄像头(UVC)驱动加载正常,接着在/dev/目录下将会生成对应的设备节点:/dev/videoX。

另,运行mjpg_streamer工具,在PC的浏览器可以看到摄像头实时图像。