Hello!
I have BaseBoard from LogicPD and SOM for OMAP-L138. I use Linux kernel from TI's DaVinci-PSP-SDK-03.20.00.14. My target is creation of HighSpeed network bridge. I use two network interfaces usb0 and eth0. For this I have configured Linux to support USB gadget stack and I use g_ether.ko module. I have configured Inventra musb_hdrc.ko to work in perephirial mode. Also I have configured Linux to support bridging and use "brctl" utility to configure bridge over USB <-> Ethernet. After device configuration my bridge works fine and I can use it to get access into network. But after few minutes of fine working my network connection becomes broken. I lose connection to any machine in the network. I have investigated that duration of stable working relates with traffic over my bridge. But for small traffic appearance of unstability is the question of time.
I connect the device to PC over USB. I have tried to use different mini USB cabeles with different length to detect dependence on it. Also I have used different host PC OSs, like Windows and Linux. For different host PC OSs g_ether works in different configurations. For Windows it works in RNDIS mode (g_ether gadget: high speed config #2: RNDIS), for Linux it works in CDC mode (g_ether gadget: high speed config #1: CDC Ethernet (ECM)). But failure result doesn't depend from this parameters.
When connection becomes failure I shouldn't power off my device but I should always reinitialize my device in PC OSs. This is only one way to repare connection over bridge. By reason of this I think that main problem concentraited in USB stack. For example after device reinitialization sometimes I saw similar errors in terminal:
usb_tx_ch_teardown 931: Invalid PD(c1ca4040)popped from TearDn completionqueue
Sometimes when connection is broken I can see an other errors:
da8xx_interrupt 512: Unhandled USB IRQ 00080000
da8xx_interrupt 512: Unhandled USB IRQ 00080000
da8xx_interrupt 512: Unhandled USB IRQ 00080000
da8xx_interrupt 512: Unhandled USB IRQ 00080000
Can anybody give me advices to solve this problem?
And one question more. Everytime when my device is being initialized in PC OS I see similar error:
da8xx_interrupt 512: Unhandled USB IRQ 00090000
What does it mean? Is it mean that musb_hdrc doesn't support some standard USB requests? I have read in an other post that when musb_hdrc for OMAP-L138 is configered for non Host mode it doesn't support few standard request.