Re: Plugging USB-C adapter into one port results in `Failed to set U2 timeout to 0x3f,error code -110`

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

 



Dear Mathias,


Thank you for your reply.


Am 14.08.25 um 15:49 schrieb Mathias Nyman:
On 13.8.2025 10.47, Paul Menzel wrote:

On an Intel Kaby Lake-R Dell XPS 13 9370, plugging in an 8-port LMP USB-C mini Dock into the port on the left side closer to the panel, Linux 6.16 logs:

     [    0.000000] Linux version 6.16-amd64 (debian-kernel@xxxxxxxxxxxxxxxx) (x86_64-linux-gnu-gcc-14 (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 SMP PREEMPT_DYNAMIC Debian 6.16-1~exp1 (2025-07-31)
     […]
     [    0.000000] DMI: Dell Inc. XPS 13 9370/0RMYH9, BIOS 1.21.0 07/06/2022
     […]
     [   99.566522] xhci_hcd 0000:39:00.0: WARN Set TR Deq Ptr cmd failed due to incorrect slot or ep state.
     [   99.566565] usb 4-2.1: Failed to set U2 timeout to 0x3f,error code -110
     [   99.566787] hub 4-2.1:1.0: USB hub found
     [   99.587655] hub 4-2.1:1.0: config failed, can't read hub descriptor (err -22)
     [   99.594669] usb 4-2.1: Failed to suspend device, error -19
     […]

Looks like the left side port is connected to a PCI hotpluggable Alpine Ridge xHCI controller. This whole xHCI host will only appear on the PCI bus once a device is connected to the USB-C port

The right side port is handled by the other xHC that is always visible and already properly running.

The logs point towards Link Power Management or, runtime suspend race
issues with the two chained external USB 3 hubs.

Could you try running with the following kernel parameters set:
"usbcore.quirks=2109:0817:k"
to prevent Link Power Management (LPM) for the external hubs

With this set, I am unable to reproduce this.

"usbcore.autosuspend=-1"
to prevent runtime suspend of all usb devices

Does adding either one, or both help?

I only tried the first one. Is that enough?

Could you also take logs and traces with dynamic debug and tracing enabled:

mount -t debugfs none /sys/kernel/debug
echo 'module xhci_hcd =p' >/sys/kernel/debug/dynamic_debug/control
echo 'module usbcore =p' >/sys/kernel/debug/dynamic_debug/control
echo 81920 > /sys/kernel/debug/tracing/buffer_size_kb
echo 1 > /sys/kernel/debug/tracing/events/xhci-hcd/enable
echo 1 > /sys/kernel/debug/tracing/tracing_on
< Reproduce issue >
Send output of dmesg
Send content of /sys/kernel/debug/tracing/trace

I uploaded everything to the Linux Kernel Bugzilla [1].


Kind regards,

Paul


PS: I was not able to reproduce the issue at work with the same adapter model. At home there is a Vodafone router, and at work a Zyxel switch. No idea, if other things like running on battery play a role. Anyway, at home, I was able to reproduce it.


[1]: https://bugzilla.kernel.org/show_bug.cgi?id=220460




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

  Powered by Linux