Hello,
I have a problem with a driver that control gadget serial linking with the USB device in a S3C2443 platform and I need some help. I work in a critical control system and I have to configurate it throw the USB device. The problem appear when I connect a Windows 7 PC with a USB 3.0 hub device to my system, if I connect the two ports of the Hub, one with the USB wire and the other for example with a optical mouse the kernel keep totally freeze, until I disconnect the USB wire and don’t respond to any command. In fact my system make a reset due to an external watch-dog.
I think the problem is in the S3C2443_udc.c driver that control the IRQ handlers and the endpoints of the USB device. I attach the source file for more information. I activate the Debug traces and I reproduce the problem explained before:
….
<7>s3c2443-udc: s3c24xx_udc_irq() High Speed interrupt
<7>s3c2443-udc: s3c24xx_udc_irq() UDC IRQ: stat 0x00000050 (0x00000010) | in 0x00000000 | out 0x00000000
<7>s3c2443-udc: s3c24xx_udc_irq() High Speed interrupt
<7>s3c2443-udc: s3c24xx_udc_irq() UDC IRQ: stat 0x00000050 (0x00000010) | in 0x00000000 | out 0x00000000
………….
This traces repeat over and over again until I plug-out the USB wire. I think the system enter in a infinite loop handling this interrupt. Could you help me? I need a patch for this issue or an explanation to make a patch. I need that my system never halt due to plug-in a USB wire.
Thanks in advance.