This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3352: USB devices disconnecting from Host

Part Number: AM3352

Hello,

I have a customer using the AM335x and are having an issue with USB devices disconnecting from their host system using AM335x.  They are seeing "USB Babble interrupt" errors, after which the USB devices disconnect and are un-powered.  These devices will not re-connect until they restart the Sitara based host system.  The issue is intermittent and reproducible, although not consistently.  

Are tehre any known errata or patches related to USB issues?  They are using the TI SDK 5.04.01 as their base for their products toolchain/OS.

Thanks,
Josh

  • Hi,

    SDK 5.04.01 ??? Latest version of Processor SDK is 04.00.00.04: software-dl.ti.com/.../index_FDS.html
    If they are using the old Linux EZSDK, this has been obsoleted since at least 2 years and is no longer supported by TI.
  • Yes, we are using an older version of the SDK. Unfortunately, migrating to a later version of the Processor SDK (different libraries, different compiler, 64-bit VM, etc.) is not a possibility for our product at this point in time.

    The question remains: is this a known issue that has a specific fix that we could possibly back-port to our version of the SDK?

    Thanks,

    Neil

  • Hi Neil,

    Can you check if you the following patch : www.serverphorums.com/read.php
  • Thank you - I will definitely look into this and post back. This sounds similar to what we have done so far, which is to restart at least part of the USB system (driver, etc.) to get it to recover. This post makes it sound like that "workaround" is what has to be done, in the end.
  • Hi Neil,

    I am not sure if you are using custom Board and cable. If so, please do make sure your cable is fine(may be try another cable): there is no electrical interference or shorting between D+ and D- occasionally when it occurs. Just another thought!
  • Hi Dwarakesh,
    I'm Neil's colleague.
    We are using a custom board. We have quite a number of units running on site which normally are running fine.
    The symptom described here appears intermittently, once it happens only restarting can recover the USB port.
    I think there're already some workaround in the driver to handle babble interrupts, but in this particular case USB device cannot enumerate. Below is the kernel log captured on site:

    [336376.127075] ti81xx_interrupt 1093: CAUTION: musb0: Babble Interrupt Occured
    [336376.134521] ti81xx_interrupt 1093: CAUTION: musb0: Babble Interrupt Occured
    [336376.142242] musb_stage0_irq 847: unhandled DISCONNECT transition (a_wait_bcon)
    [336376.149902] musb_babble_workaround 899: Babble: devtcl(90)Restarting musb....
    [336376.257720] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
    [336376.257720] musb-hdrc: MHDRC RTL version 2.0
    [336376.257751] musb-hdrc: setup fifo_mode 4
    [336376.257781] musb-hdrc: 28/31 max ep, 16384/16384 memory
    [336376.257781] musb-hdrc.0: bulk split disabled
    [336376.257781] musb-hdrc.0: bulk combine disabled
    [336400.003631] usb 2-1: USB disconnect, device number 2
    [336400.008972] usb 2-1.1: USB disconnect, device number 6
    [336400.029235] usb 2-1.2: USB disconnect, device number 5
    [336400.515563] ti81xx_interrupt 1093: CAUTION: musb0: Babble Interrupt Occured
    [336400.523498] musb_babble_workaround 899: Babble: devtcl(90)Restarting musb....
    [336400.631469] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
    [336400.631500] musb-hdrc: MHDRC RTL version 2.0
    [336400.631500] musb-hdrc: setup fifo_mode 4
    [336400.631530] musb-hdrc: 28/31 max ep, 16384/16384 memory
    [336400.631561] musb-hdrc.0: bulk split disabled
    [336400.631561] musb-hdrc.0: bulk combine disabled
    [336400.633178] usb 2-1: new full-speed USB device number 7 using musb-hdrc
    [336400.692596] hub 2-0:1.0: unable to enumerate USB device on port 1
    [336401.016540] ti81xx_interrupt 1093: CAUTION: musb0: Babble Interrupt Occured
    [336401.024414] musb_babble_workaround 899: Babble: devtcl(90)Restarting musb....
    [336401.132263] musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
    [336401.132293] musb-hdrc: MHDRC RTL version 2.0
    [336401.132293] musb-hdrc: setup fifo_mode 4
    [336401.132324] musb-hdrc: 28/31 max ep, 16384/16384 memory
    [336401.132354] musb-hdrc.0: bulk split disabled
    [336401.132354] musb-hdrc.0: bulk combine disabled
    [336401.133880] usb 2-1: new full-speed USB device number 8 using musb-hdrc
    [336401.192626] hub 2-0:1.0: unable to enumerate USB device on port 1


    Thanks.
    Albert Bao
  • Hi Albert,

    One suggestion would be to download latest package and try to backport the babble fixes into your kernel and check if it is making any difference.
  • Hi Dwarakesh,

    Thanks for the suggestion, will try that.

    Thank you.