xhci_hcd HC died; cleaning up with TUSB7340 and µPD720201

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We are developing a product based on the TI AM5728 EVM.  The product utilizes a TUSB7340 PCIe USB host for additional ports.  The TUSB7340 is detected and setup properly and works OK with low data rate devices.  However, hot plugging a Realtek USB network adapter and doing Ethernet transfer bandwidth testing using iperf3 causes the TUSB7340 host to be  locked out.  The TUSB7340 host appears to no longer communicate and the logging indicates xhci_hcd 0000:01:00.0: HC died; cleaning up.  Same issue occurs with another USB Ethernet adapter I tried (Asus).

We looked at using another host and found a mini PCIe card that utilizes the µPD720201 and can be directly installed on the TI AM5728 EVM.  The card is detected properly and we reran the transfer test.  The uPD720201 gets locks out with the same problem.

The AM5728 testing was performed using the TI SD card stock am57xx-evm-linux-04.00.00.04.img, kernel am57xx-evm 4.9.28-geed43d1050, and it reports that it is using the TI AM572x EVM Rev A3 device tree.

It shows the following logging when it fails (this is with the TI EVM and uPD720201).

[  630.400899] xhci_hcd 0000:01:00.0: xHCI host not responding to stop endpoint command.
[  630.408769] xhci_hcd 0000:01:00.0: Assuming host is dying, halting host.
[  630.420849] r8152 2-4:1.0 enp1s0u4: Tx status -108
[  630.425667] r8152 2-4:1.0 enp1s0u4: Tx status -108
[  630.430483] r8152 2-4:1.0 enp1s0u4: Tx status -108
[  630.435297] r8152 2-4:1.0 enp1s0u4: Tx status -108
[  630.440122] xhci_hcd 0000:01:00.0: HC died; cleaning up
[  630.453961] usb 2-4: USB disconnect, device number 2

The problem appears to be a general driver issue given we get the same problem with both the  TUSB7340 and the µPD720201.

I've tried the 4.4.49, 4.12.3 and 4.13.1 kernels and they also fail.

I tried the TI E2E support community and they were unable to provide any solutions.

Here is a sample session with the TUSB7340:

root@arm:~# !iperf3
iperf3 -c 10.14.21.95 -t 6000
Connecting to host 10.14.21.95, port 5201
[ 4] local 10.14.21.89 port 60978 connected to 10.14.21.95 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 14.2 MBytes 119 Mbits/sec 1 1.41 KBytes
[ 4] 1.00-2.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 2.00-3.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 3.00-4.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 4.00-5.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 5.00-6.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
[ 4] 6.00-7.00 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
^C[ 4] 7.00-7.48 sec 0.00 Bytes 0.00 bits/sec 0 1.41 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-7.48 sec 14.2 MBytes 15.9 Mbits/sec 1 sender
[ 4] 0.00-7.48 sec 0.00 Bytes 0.00 bits/sec receiver
iperf3: interrupt - the client has terminated
root@arm:~# [ 118.187204] xhci_hcd 0001:07:00.0: xHCI host controller not responding, assume dead
[ 118.196419] xhci_hcd 0001:07:00.0: HC died; cleaning up

Any suggestions on how we can address this problem?

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux