研究了一下我的mt716的usb驱动,主要目的是想知道手机能不能通过usb口使用移动硬盘。
搜索了一下,关键在于2处:
1. 硬件芯片是否支持usb otg。
2. 驱动是否实现了otg功能。
手机的sys和dev目录结构如下:
/sys/class
|----usb_host
|----usb_host1 -> /sys/devices/platform/ohci.0
|----usb_host2 -> /sys/devices/platform/musb_hdrc
|----usb_device
|----usbdev1.1 -> /sys/devices/platform/ohci.0/usb1
|----usbdev2.1 -> /sys/devices/platform/musb_hdrc/usb2
|----usbdev1.2 -> /sys/devices/platform/ohci.0/usb1/1-3
|----usb_endpoint
|----usbdev1.1_ep81
|----usbdev1.1_ep00
|----usbdev2.1_ep81
|----usbdev2.1_ep00
|----usbdev1.2_ep05
|----usbdev1.2_ep85
|----usbdev1.2_ep02
|----usbdev1.2_ep82
|----usbdev1.2_ep00
|----usbmon
|----usbmon0
|----usbmon1
|----usbmon2
/dev
|----usbdev1.1 // 同sys目录
|----usbdev1.1_ep* // 同sys目录
|----usbdev2.1 // 同sys目录
|----usbdev2.1_ep* // 同sys目录
|----usbdev1.2 // 同sys目录
|----usbdev1.2_ep* // 同sys目录
|----usbmon* // 同sys目录
|----usb10 ~ usb20
usbdev1.1的vendor id是1d6b,product id是0002
usbdev2.1的vendor id和product id同上,在linux-usb.org中查不到这个vendor,觉得这两个设备是moto自己的。
usbdev1.2的product信息为"NexperiaTM System Solution",百度了一下,这个usb设备是3G模块。
顺便发现一个问题,/proc/bus/usb下没有文件,按理说所有usb设备都应该对应这个目录下的一个文件的?