Hello,
I'm using the TI814X PG2.1 with the latest EZSDK (5_05_01_04) and cannot bring the file_storage to live. I'm loading the following modules:
insmod musb_hdrc.ko
insmod cppi41dma.ko
insmod nop-usb-xceiv.ko
insmod ti81xx.ko
insmod g_file_storage.ko file=/dev/mmcblk0p7 stall=0 removable=1
/dev/mmcblk0p7 is a non-mounted vFat partition. J23 is unplugged while J22 is plugged - it's not working on both connectors. I'm booting a kernel with only peripheral mode configured - when booting a kernel with only host-mode, the connected USB-stick can be accessed - thus the HW is working.
My problem is right now, that the module runs into sleep_thread() and doesn't recover:
# insmod g_file_storage.ko file=/dev/mmcblk0p7 stall=0 removable=1
fsg: fsg_init
fsg: fsg_alloc
musb_g.c: usb_gadget_probe_driver - start
musb_g.c: usb_gadget_probe_driver - driver id=0
musb_g.c: usb_gadget_probe_driver - retval=0
fsg: fsg_bind
fsg: check_parameters
g_file_storage gadget: No serial-number string provided!
g_file_storage gadget: File-backed Storage Gadget, version: 1 September 2010
g_file_storage gadget: Number of LUNs=1
g_file_storage gadget-lun0: ro=0, nofua=0, file: /dev/mmcblk0p7
musb_gadget.c: CALL musb_start!
musb_core.c: musb_start !!!
musb_core.h: musb_platform_enable
musb_gadget.c: probe driver returns 0
fsg: fsg_init finished with 0
fsg: fsg_main_thread
fsg: main_thread going to sleep
fsg: sleep_thread - start
fsg: sleep_thread - loop
#
I also tried to figure out, who could wakeup the thread - e.g. a bulk_in_complete or an exception. So I checked the interrupts (e.g. ti81xx_interrupt() from ti81xx.c) and none is called.
Anyone has an idea what's wrong in my configuration?
Thanks a lot,
Charly
PS: I followed the wiki about "MUSB controller in gadget mode" and "USB-ID pin configuration selection for TI81XX".