Re: XHCI regression on v4.10-rc1

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

 




On 09.01.2017 11:51, Patrice Chotard wrote:
Hi Mathias, Greg

Hi


I am working on ARM STi platform, since v4.10-rc1, when booting B2260 or B2120 STi boards platform
with nothing plugged on USB3 connector, i observed the following kernel logs :

....
[  801.953836] usb usb6-port1: Cannot enable. Maybe the USB cable is bad?

That's odd, why does it try to reset the port if there's nothing there?

[  801.960455] xhci-hcd xhci-hcd.0.auto: Cannot set link state.

This makes sense, nothing is connected, and we try to set link to U3 (PORT_PE == 0)

[  801.966611] usb usb6-port1: cannot disable (err = -32)
xhci reutns -EPIPE as we try to set link state to U3 while port is not enabled (PORT_PE == 0)

[  806.083772] usb usb6-port1: Cannot enable. Maybe the USB cable is bad?

Again, about 5 seconds later the same port is reset, while nothing is connected.
Odd

[  806.090370] xhci-hcd xhci-hcd.0.auto: Cannot set link state.
[  806.096494] usb usb6-port1: cannot disable (err = -32)
[  810.208766] usb usb6-port1: Cannot enable. Maybe the USB cable is bad?
[  810.215374] xhci-hcd xhci-hcd.0.auto: Cannot set link state.
[  810.221478] usb usb6-port1: cannot disable (err = -32)
[  814.333767] usb usb6-port1: Cannot enable. Maybe the USB cable is bad?
[  814.340364] xhci-hcd xhci-hcd.0.auto: Cannot set link state.
.....

Another interesting thing is even if i plugged a device (a mass storage device in my case) on the USB3 connector,
the above logs continue to appear.

This is due to commit 37be66767e3ca "usb: hub: Fix auto-remount of safely removed or ejected USB-3 devices".

I don't know if STi platforms are the only impacted by this issue.

On v4.9 everything was ok.


Was there not a single "Cannot enable. Maybe USB cable is bad" message with 4.9?

Before commit 37be66767e3ca we forced the port to RxDetect state via Disabled state,
and cleared port change flags when a usb3_port_disable() was called.

after we just set the port to U3. Maybe those STi platforms depend on that cycle somehow?

Could you take logs (dmesg) of both 4.9 and 4.10-rc1 with both usb core and xhci debugging enabled:

echo -n 'module xhci_hcd =p' > /sys/kernel/debug/dynamic_debug/control
echo 'module usbcore =p' >/sys/kernel/debug/dynamic_debug/control

-Mathias

--
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