Tegra-xusb 3530000.xhci: controller firmware hang

Hi,

We are trying to use USB2 and USB3 port simultaneously on our TX2 with a custom carrier board as below:

  1. rs232 to usb converter on USB2 type port 1.
  2. usb camera on USB3 type port 1 via a usb3 HUB.

We are facing the “controller firmware hang” issue. Previously if we only use USB3 type, it worked pretty well. Your response in solving issue will be really appreciated.

We use sdkmanager_1.5.1.7814, Jetpack 4.4, the log as below:


[ 0.000000] Kernel command line: root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0 video=tegrafb no_console_suspend=1 earlycon=uart8250,mmio32,0x3100000 nvdumper_reserved=0x2772e0000 gpt usbcore.old_scheme_first=1 tegraid=18.1.2.0.0 maxcpus=6 boot.slot_suffix= boot.ratchetvalues=0.2031647.1 bl_prof_dataptr=0x10000@0x275840000 sdhci_tegra.en_boot_part_access=1 quiet
[ 0.532311] usbcore: registered new interface driver usbfs
[ 0.532352] usbcore: registered new interface driver hub
[ 0.532427] usbcore: registered new device driver usb
[ 0.613936] vdd-usb0-5v: 5000 mV
[ 0.614395] vdd-usb1-5v: 5000 mV
[ 0.627722] vdd-usb2-5v: 5000 mV
[ 1.123303] tegra-xusb-padctl 3520000.xusb_padctl: VBUS over-current detection enabled
[ 1.269328] usbcore: registered new interface driver r8152
[ 1.269366] usbcore: registered new interface driver asix
[ 1.269399] usbcore: registered new interface driver ax88179_178a
[ 1.269447] usbcore: registered new interface driver cdc_ether
[ 1.269477] usbcore: registered new interface driver net1080
[ 1.269510] usbcore: registered new interface driver cdc_subset
[ 1.269539] usbcore: registered new interface driver zaurus
[ 1.269583] usbcore: registered new interface driver cdc_ncm
[ 1.271453] ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver
[ 1.271508] ohci_hcd: USB 1.1 ‘Open’ Host Controller (OHCI) Driver
[ 1.277530] tegra-xusb 3530000.xhci: USB2 port 0 has OTG_CAP
[ 1.279278] tegra-xusb 3530000.xhci: extcon 0: ffffffc1eb310c00 id
[ 1.280071] usbcore: registered new interface driver uas
[ 1.280115] usbcore: registered new interface driver usb-storage
[ 1.280203] usbcore: registered new interface driver usbserial
[ 1.281753] tegra-xusb 3530000.xhci: Firmware timestamp: 2019-07-08 19:32:42 UTC, Version: 55.15 release
[ 1.307083] tegra-xusb 3530000.xhci: xHCI Host Controller
[ 1.307110] tegra-xusb 3530000.xhci: new USB bus registered, assigned bus number 1
[ 1.307984] tegra-xusb 3530000.xhci: hcc params 0x0184fd25 hci version 0x100 quirks 0x00050810
[ 1.308042] tegra-xusb 3530000.xhci: irq 70, io mem 0x03530000
[ 1.308304] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 1.308313] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.308319] usb usb1: Product: xHCI Host Controller
[ 1.308324] usb usb1: Manufacturer: Linux 4.9.140-tegra xhci-hcd
[ 1.308337] usb usb1: SerialNumber: 3530000.xhci
[ 1.308834] hub 1-0:1.0: USB hub found
[ 1.309256] tegra-xusb 3530000.xhci: xHCI Host Controller
[ 1.309269] tegra-xusb 3530000.xhci: new USB bus registered, assigned bus number 2
[ 1.309490] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[ 1.309497] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 1.309502] usb usb2: Product: xHCI Host Controller
[ 1.309508] usb usb2: Manufacturer: Linux 4.9.140-tegra xhci-hcd
[ 1.309513] usb usb2: SerialNumber: 3530000.xhci
[ 1.310010] hub 2-0:1.0: USB hub found
[ 1.634719] usb 1-2: new high-speed USB device number 2 using tegra-xusb
[ 1.666191] usb 1-2: New USB device found, idVendor=0bda, idProduct=5411
[ 1.666200] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 1.666207] usb 1-2: Product: 4-Port USB 2.0 Hub
[ 1.666212] usb 1-2: Manufacturer: Generic
[ 1.667235] hub 1-2:1.0: USB hub found
[ 1.725288] tegra-xusb-padctl 3520000.xusb_padctl: tegra186_xusb_padctl_utmi_pad_dcd: DCD timeout 418 ms
[ 1.770771] tegra-usb-cd usb_cd: notification status (0x0, 0x1)
[ 1.770779] tegra-usb-cd usb_cd: connected to SDP
[ 1.771679] usbcore: registered new interface driver xpad
[ 1.786744] usb 1-3: new full-speed USB device number 3 using tegra-xusb
[ 1.814072] usb 1-3: New USB device found, idVendor=0403, idProduct=6001
[ 1.814082] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1.814088] usb 1-3: Product: FT232R USB UART
[ 1.814094] usb 1-3: Manufacturer: FTDI
[ 1.814099] usb 1-3: SerialNumber: AQ00QXR9
[ 1.921527] usbcore: registered new interface driver usbhid
[ 1.921531] usbhid: USB HID core driver
[ 1.955160] usb 1-2.2: new full-speed USB device number 4 using tegra-xusb
[ 1.964004] usbcore: registered new interface driver snd-usb-audio
[ 1.982254] usb 1-2.2: New USB device found, idVendor=0403, idProduct=6001
[ 1.982260] usb 1-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1.982271] usb 1-2.2: Product: FT232R USB UART
[ 1.982275] usb 1-2.2: Manufacturer: FTDI
[ 1.982278] usb 1-2.2: SerialNumber: AG0JVBPT
[ 2.235867] vdd-usb0-5v: disabling
[ 2.235870] vdd-usb1-5v: disabling
[ 4.186735] usb 1-2.3: new high-speed USB device number 5 using tegra-xusb
[ 4.207494] usb 1-2.3: New USB device found, idVendor=04b4, idProduct=e032
[ 4.207500] usb 1-2.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 4.207503] usb 1-2.3: Product: USB 2.0 Camera
[ 4.207505] usb 1-2.3: Manufacturer: DO3THINK
[ 4.446872] tegra-xusb 3530000.xhci: Upgrade port 0 to USB3.0
[ 4.446877] tegra-xusb 3530000.xhci: Upgrade port 1 to USB3.0
[ 4.745827] usb0: HOST MAC ba:59:4c:74:13:12
[ 4.746121] usb0: MAC ba:59:4c:74:13:13
[ 4.770176] l4tbr0: port 2(usb0) entered blocking state
[ 4.770181] l4tbr0: port 2(usb0) entered disabled state
[ 4.770327] device usb0 entered promiscuous mode
[ 4.771282] usb 2-1: new SuperSpeed USB device number 2 using tegra-xusb
[ 4.775322] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[ 4.803655] usb 2-1: New USB device found, idVendor=0bda, idProduct=0411
[ 4.803664] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 4.803669] usb 2-1: Product: 4-Port USB 3.0 Hub
[ 4.803675] usb 2-1: Manufacturer: Generic
[ 4.812537] hub 2-1:1.0: USB hub found
[ 4.974765] usb 2-1: usb_suspend_both: status 0
[ 4.974930] usb usb2: usb_suspend_both: status 0
[ 5.682185] usbcore: registered new interface driver ftdi_sio
[ 5.682256] usbserial: USB Serial support registered for FTDI USB Serial Device
[ 5.682334] ftdi_sio 1-3:1.0: FTDI USB Serial Device converter detected
[ 5.682459] usb 1-3: Detected FT232RL
[ 5.688318] usb 1-3: FTDI USB Serial Device converter now attached to ttyUSB0
[ 5.695473] ftdi_sio 1-2.2:1.0: FTDI USB Serial Device converter detected
[ 5.695575] usb 1-2.2: Detected FT232RL
[ 5.728122] usb 1-2.2: FTDI USB Serial Device converter now attached to ttyUSB1
[ 6.762816] tegra-usb-cd usb_cd: notification status (0x1, 0xa)
[ 6.762821] tegra-usb-cd usb_cd: connected to non-standard charger
[44441.041069] tegra-xusb 3530000.xhci: controller firmware hang
[44441.046841] tegra-xusb 3530000.xhci: hcd_reinit is disabled or in progress
[44445.242860] tegra-xusb 3530000.xhci: xHCI host not responding to stop endpoint command.
[44445.250889] tegra-xusb 3530000.xhci: Assuming host is dying, halting host.
[44445.298945] tegra-xusb 3530000.xhci: Host not halted after 16000 microseconds.
[44445.306233] tegra-xusb 3530000.xhci: Non-responsive xHCI host is not halting.
[44445.313384] tegra-xusb 3530000.xhci: Completing active URBs anyway.
[44445.320749] tegra-xusb 3530000.xhci: HC died; cleaning up
[44445.326257] tegra-xusb 3530000.xhci: hcd_reinit is disabled or in progress
[44464.646190] tegra-xusb 3530000.xhci: Stopped the command ring failed, maybe the host is dead
[44464.693205] tegra-xusb 3530000.xhci: Host not halted after 16000 microseconds.
[44464.700420] tegra-xusb 3530000.xhci: Abort command ring failed
[44464.708898] tegra-xusb 3530000.xhci: HC died; cleaning up
[44464.708909] tegra-xusb 3530000.xhci: hcd_reinit is disabled or in progress
[44464.708925] usb 1-2: USB disconnect, device number 2
[44464.708934] usb 1-2.2: USB disconnect, device number 4
[44464.717662] ftdi_sio ttyUSB1: error from flowcontrol urb
[44464.723709] usb 2-1: USB disconnect, device number 2
[44464.726585] ftdi_sio ttyUSB1: FTDI USB Serial Device converter now disconnected from ttyUSB1
[44464.739055] usb 1-2.3: USB disconnect, device number 5
[44464.741816] usb 1-3: USB disconnect, device number 3
[44464.741928] ftdi_sio ttyUSB0: error from flowcontrol urb
[44464.762091] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0

What if you use other usb 3 and usb2 devices? Will they also hit fw hang issue?

We are trying to reproduce the issue, and it is not 100% reproducible with our testing. I will post more testing result here ASAP. Are you able to see anything from the kernel log output, or would you recommend a possible better way to reproduce the usb issue ?

Thanks!

The only TX2 usb firmware issue that we had was a case from some usb devices which don’t follow the spec of usb spec.

Is your usb device working well on our devkit?

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.