USB Q&A
Q1:如何配置usb2.0的host,使usb支持u盘和鼠标?
编译kernel时打开选项:make menuconfig:
Device Drivers --->
[*] USB support --->
<M> Support for Host-side USB
<M> EHCI HCD (USB2.0) USB
[*] Root Hub Transaction Translators
[*] Improved Transaction Translator scheduing
<M> USB Mass Storage support
在kernel/modules/生成的驱动按insmod顺序如下表:
| Module Name | Sequence | Module Name | Sequence |
|---|---|---|---|
| usbcore.ko | 1 | ehci-hcd.ko | 2 |
| scsi_mod.ko | built-in | sd_mod.ko | built-in |
| usb-storage.ko | 3 |
将U盘插入到板端的HOST口,可以识别到U盘。并且可以在/dev/看到sda设备节点。运行mount /dev/sda /tmp后可以对U盘进行读写。
如果要支持识别HID设备,还需要配如下config:
Device Drivers --->
[*] HID support --->
USB HID support --->
<M> USB HID transport layer
生成usbhid.ko,insmod usbhid.ko 板端的USB HOST就能识别到HID设备比如鼠标,键盘。
在insmod 时,需要按照顺序进行insmod,顺序如下:
usb-common.ko (必须要先insmod,否则下面的ko会insmod失败)
usbcore.ko
ehci-hcd.ko
usb-storage.ko
usbhid.ko