为什么这不能正确配置 file_storage 设备 USB?
在嵌入式 linux 目标上:
/ # modprobe g_file_storage file=/dev/mmcblk0
musb_hdrc: version 6.0, cppi-dma, peripheral, debug=0
musb_hdrc: USB Peripheral mode controller at fec64000 using DMA, IRQ 12
g_file_storage gadget: File-backed Storage Gadget, version: 20 November 2008
g_file_storage gadget: Number of LUNs=1
g_file_storage gadget-lun0: ro=0, file: /dev/mmcblk0
/ # lsusb
lsusb: /sys/bus/usb/devices: No such file or directory
/ # cat /lib/modules/2.6.32-17-ridgerun/modules.dep | grep usb
kernel/drivers/usb/otg/nop-usb-xceiv.ko:
kernel/drivers/usb/musb/musb_hdrc.ko: kernel/drivers/usb/otg/nop-usb-xceiv.ko
kernel/drivers/usb/gadget/g_file_storage.ko: kernel/drivers/usb/musb/musb_hdrc.ko kernel/drivers/usb/otg/nop-usb-xceiv.ko
在 Ubuntu 10.04 主机上:
$ fgrep USB $DEVDIR/kernel/linux*/.config | grep -v '^#'
CONFIG_USB_SUPPORT=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_MUSB_HDRC=m
CONFIG_USB_MUSB_SOC=y
CONFIG_USB_MUSB_PERIPHERAL=y
CONFIG_USB_GADGET_MUSB_HDRC=y
CONFIG_USB_TI_CPPI_DMA=y
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET_VBUS_DRAW=2
CONFIG_USB_GADGET_SELECTED=y
CONFIG_USB_GADGET_DUALSPEED=y
CONFIG_USB_FILE_STORAGE=m
CONFIG_USB_OTG_UTILS=y
CONFIG_NOP_USB_XCEIV=m
$ lsusb
Bus 002 Device 003: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Bus 002 Device 002: ID 8087:0024
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 005: ID 058f:6362 Alcor Micro Corp. Hi-Speed 21-in-1 Flash Card Reader/Writer (Internal/External)
Bus 001 Device 004: ID 04ca:003a Lite-On Technology Corp.