AnsweredAssumed Answered

USB hub disconnects and fails to re-enumerate

Question asked by Ben Tuline on Feb 6, 2019
Latest reply on Feb 8, 2019 by igorpadykov

Hi All,

 

On a custom board I'm working on I'm running into a periodic issue with a set of cascaded USB hubs. What I'm seeing is that occasionally one of the hubs (hub 3 in the attached schematic) will disconnect, start to reconnect, and then fail to negotiate current draw. This same scheme worked fine on an AM3352 based board in the past. I've tried manually toggling the reset line (which is mapped to GPIO4_20), but I wasn't able to replicate the same behavior. The disconnect would happen, but the hubs would reconnect normally. 

 

For some extra information, the hub outputs are connected to FTDI USB to serial converters, and add up to a total of 20 serial ports. When we access said serial ports, we only keep 1 file handle open at a time to avoid overloading the bus. 

 

Relevant dmesg output:

 

[  763.290938] ftdi_sio ttyUSB8: ftdi_set_termios FAILED to set databits/stopbits/parity
[  763.303290] ftdi_sio ttyUSB8: ftdi_set_termios urb failed to set baudrate
[  763.314718] ftdi_sio ttyUSB8: urb failed to clear flow control
[  763.330184] ftdi_sio ttyUSB8: urb failed to clear flow control
[  763.340727] ftdi_sio ttyUSB8: usb_serial_generic_write_bulk_callback - nonzero urb status: -71
[  763.353476] ftdi_sio ttyUSB8: usb_serial_generic_write_bulk_callback - nonzero urb status: -71
[  763.366210] ftdi_sio ttyUSB8: usb_serial_generic_write_bulk_callback - nonzero urb status: -71
[  763.381691] ftdi_sio ttyUSB8: failed to get modem status: -71
[  763.408374] usb 1-1-port2: disabled by hub (EMI?), re-enabling...
[  763.414651] usb 1-1.2: USB disconnect, device number 4
[  763.419892] usb 1-1.2.1: USB disconnect, device number 6
[  763.428256] ftdi_sio ttyUSB4: FTDI USB Serial Device converter now disconnected from ttyUSB4
[  763.448669] ftdi_sio 1-1.2.1:1.0: device disconnected
[  763.460769] ftdi_sio ttyUSB5: FTDI USB Serial Device converter now disconnected from ttyUSB5
[  763.489257] ftdi_sio ttyUSB9: ftdi_set_termios FAILED to set databits/stopbits/parity
[  763.489280] ftdi_sio ttyUSB9: ftdi_set_termios urb failed to set baudrate
[  763.489294] ftdi_sio ttyUSB9: urb failed to clear flow control
[  763.535049] ftdi_sio 1-1.2.1:1.1: device disconnected
[  763.553915] ftdi_sio ttyUSB6: FTDI USB Serial Device converter now disconnected from ttyUSB6
[  763.575931] ftdi_sio 1-1.2.1:1.2: device disconnected
[  763.603563] ftdi_sio ttyUSB7: FTDI USB Serial Device converter now disconnected from ttyUSB7
[  763.630838] ftdi_sio 1-1.2.1:1.3: device disconnected
[  763.647798] usb 1-1.2.2: USB disconnect, device number 7
[  763.672288] ftdi_sio ttyUSB8: FTDI USB Serial Device converter now disconnected from ttyUSB8
[  763.696842] ftdi_sio 1-1.2.2:1.0: device disconnected
[  763.715115] ftdi_sio ttyUSB9: FTDI USB Serial Device converter now disconnected from ttyUSB9
[  763.737166] ftdi_sio ttyUSB10: ftdi_set_termios FAILED to set databits/stopbits/parity
[  763.737188] ftdi_sio ttyUSB10: ftdi_set_termios urb failed to set baudrate
[  763.737202] ftdi_sio ttyUSB10: urb failed to clear flow control
[  763.744071] ftdi_sio ttyUSB11: ftdi_set_termios FAILED to set databits/stopbits/parity
[  763.744095] ftdi_sio ttyUSB11: ftdi_set_termios urb failed to set baudrate
[  763.744108] ftdi_sio ttyUSB11: urb failed to clear flow control
[  763.846938] ftdi_sio 1-1.2.2:1.1: device disconnected
[  763.861900] ftdi_sio ttyUSB10: FTDI USB Serial Device converter now disconnected from ttyUSB10
[  763.885289] ftdi_sio 1-1.2.2:1.2: device disconnected
[  763.901899] ftdi_sio ttyUSB11: FTDI USB Serial Device converter now disconnected from ttyUSB11
[  763.925304] ftdi_sio 1-1.2.2:1.3: device disconnected
[  764.243684] usb 1-1.2: new high-speed USB device number 10 using ci_hdrc
[  764.394932] usb 1-1.2: New USB device found, idVendor=0424, idProduct=2513
[  764.401958] usb 1-1.2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[  764.425790] hub 1-1.2:1.0: USB hub found
[  764.434009] hub 1-1.2:1.0: 3 ports detected
[  764.773789] usb 1-1.2.1: new high-speed USB device number 11 using ci_hdrc
[  764.925629] usb 1-1.2.1: New USB device found, idVendor=0403, idProduct=6011
[  764.932906] usb 1-1.2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  764.940658] usb 1-1.2.1: Product: Quad RS232-HS
[  764.945647] usb 1-1.2.1: Manufacturer: FTDI
[  764.957543] usb 1-1.2.1: rejected 1 configuration due to insufficient available bus power
[  764.966944] usb 1-1.2.1: no configuration chosen from 1 choice
[  765.073683] usb 1-1.2.2: new high-speed USB device number 12 using ci_hdrc
[  765.225633] usb 1-1.2.2: New USB device found, idVendor=0403, idProduct=6011
[  765.232962] usb 1-1.2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  765.240704] usb 1-1.2.2: Product: Quad RS232-HS
[  765.245581] usb 1-1.2.2: Manufacturer: FTDI
[  765.264172] usb 1-1.2.2: rejected 1 configuration due to insufficient available bus power
[  765.273914] usb 1-1.2.2: no configuration chosen from 1 choice
Let me know if there's something obvious I should be considering. In the meantime I'll keep investigating. 

Attachments

Outcomes