All USB devices and bluetooth randomly disconnected until reboot

I have Lenovo Thinkpad T470. I forgot when exactly the first time this problem occured. At least a few weeks ago. Suddenly, on random occasions, all USB devices would disconnected and bluetooth disabled. I have to reboot my laptop to make it works again since replugging the devices didn’t do anything. It even did’t show up in lsusb. Sometimes it happens multiple times a day. Sometimes a day or two would pass without this issue happening.

Here’s a snippet from dmesg output which I believe is related to my problem:

[ 5205.458421] i915 0000:00:02.0: [drm] *ERROR* Atomic update failure on pipe A (start=40327 end=40328) time 302 us, min 1073, max 1079, scanline start 1060, end 1080
[ 8663.765452] i915 0000:00:02.0: [drm] *ERROR* Atomic update failure on pipe A (start=9453 end=9454) time 191 us, min 1073, max 1079, scanline start 1069, end 1081
[ 9092.579641] xhci_hcd 0000:00:14.0: xHCI host not responding to stop endpoint command
[ 9092.579675] xhci_hcd 0000:00:14.0: xHCI host controller not responding, assume dead
[ 9092.579727] xhci_hcd 0000:00:14.0: HC died; cleaning up
[ 9092.579773] usb 1-2: USB disconnect, device number 2
[ 9092.579797] xhci_hcd 0000:00:14.0: Timeout while waiting for stop endpoint command
[ 9092.579982] usb 2-3: USB disconnect, device number 2
[ 9092.624753] usb 1-4: USB disconnect, device number 3
[ 9092.821967] usb 1-7: USB disconnect, device number 4
[ 9092.833924] usb 1-8: USB disconnect, device number 5

Help me please

Check journalctl for errors

journalctl --since=“5 minutes ago” | grep -i error

and if that does not show errors

journalctl --since=“5 minutes ago”

Try setting Power Mode to Performance and see if the issue persists.

I have the same problem, on Thinkpad E14 gen2.
xhci dies, it brings with it all usb devices and bluetooth.

This is my journalctl:

mar 18 17:54:08 xxxxxxxx kernel: xhci_hcd 0000:00:14.0: xHCI host not responding to stop endpoint command
mar 18 17:54:08 xxxxxxxx kernel: xhci_hcd 0000:00:14.0: xHCI host controller not responding, assume dead
mar 18 17:54:08 xxxxxxxx kernel: xhci_hcd 0000:00:14.0: HC died; cleaning up
mar 18 17:54:08 xxxxxxxx kernel: usb 3-2: USB disconnect, device number 42
mar 18 17:54:08 xxxxxxxx kernel: usb 3-2.1: USB disconnect, device number 43
mar 18 17:54:08 xxxxxxxx kernel: xhci_hcd 0000:00:14.0: Timeout while waiting for stop endpoint command
mar 18 17:54:08 xxxxxxxx kernel: usb 3-2.2: USB disconnect, device number 44
mar 18 17:54:08 xxxxxxxx kernel: usb 3-2.2.3: USB disconnect, device number 50
mar 18 17:54:08 xxxxxxxx kernel: usb 3-2.2.4: USB disconnect, device number 51
mar 18 17:54:08 xxxxxxxx kernel: usb 3-2.3: USB disconnect, device number 45
mar 18 17:54:08 xxxxxxxx kernel: usb 3-2.4: USB disconnect, device number 46
mar 18 17:54:08 xxxxxxxx kernel: usb 3-8: USB disconnect, device number 6
mar 18 17:54:08 xxxxxxxx kernel: usb 3-9: USB disconnect, device number 7
mar 18 17:54:08 xxxxxxxx kernel: usb 3-10: USB disconnect, device number 8
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/ldac
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSink/aac
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/aac
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSink/opus_g
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/opus_g
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSink/sbc
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/sbc
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/faststream
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/faststream_duplex
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSink/opus_05
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/opus_05
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSink/opus_05_duplex
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Endpoint unregistered: sender=:1.97 path=/MediaEndpoint/A2DPSource/opus_05_duplex
mar 18 17:54:08 xxxxxxxx dbus-broker[1778]: A security policy denied :1.10 to send method call /midi/profile:org.bluez.GattProfile1.Release to :1.98.
mar 18 17:54:08 xxxxxxxx systemd[1]: Starting systemd-rfkill.service - Load/Save RF Kill Switch Status...
mar 18 17:54:08 xxxxxxxx bluetoothd[1781]: Battery Provider Manager destroyed
mar 18 17:54:08 xxxxxxxx systemd[1]: Stopped target bluetooth.target - Bluetooth Support.
mar 18 17:54:08 xxxxxxxx audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-rfkill comm="systemd" exe="/usr/lib/systemd/>
mar 18 17:54:08 xxxxxxxx systemd[1]: Started systemd-rfkill.service - Load/Save RF Kill Switch Status.

It started 3 days ago, once a day:

mar 15 12:56:51 xxxxxxxxx kernel: xhci_hcd 0000:00:14.0: HC died; cleaning up
-- Boot 551508aebef64c059bdd29ff72ba6afb --
-- Boot aa5e9775ec784c1298b14bc98dd5e8fa --
mar 16 19:18:12 xxxxxxxxx kernel: xhci_hcd 0000:00:14.0: HC died; cleaning up
-- Boot 63d50610e0a746519c427ce9ab5cc2b2 --
-- Boot fc29d6768f01454e8cf592523b1b3816 --
mar 16 22:13:31 xxxxxxxxx kernel: xhci_hcd 0000:00:14.0: HC died; cleaning up
-- Boot 7ec469fd33224cd9aa62eaee7d5da1cc --
mar 18 17:54:08 xxxxxxxxx kernel: xhci_hcd 0000:00:14.0: HC died; cleaning up
lines 1-43

after unbind/rebind of the xhci_hcd module, it started working again:

echo -n "0000:00:14.0" | sudo tee /sys/bus/pci/drivers/xhci_hcd/unbind
echo -n "0000:00:14.0" | sudo tee /sys/bus/pci/drivers/xhci_hcd/bind
3 Likes

thanks @stefanogiunchi for the workaround, saved me from rebooting again :slight_smile:

Exact same problem with Thinkpad T14 gen 3. Linux 6.13.6

Every ~3 days

@stefanogiunchi’s workaround works!

Wow. Seems like this only happens to Thinkpad. Do any of you have TLP installed? @ohadlevy @outer-sedation

Do you also use Thinkpad?

1 Like

These disconnects may be related to recent changes to power management in the linux kernel. Such issues are not limited to Fedora, so it is worth checking for this problem across other linux distros and kernel.org.

As suggested:

If this works, a power management issue is likely to be the root cause. Affected users should also check for UEFI/BIOS updates.

This may also help us understand the root cause of the issue.

Just now it happened again. Journalctrl didn’t show any meaningful result.

I couldn’t because I use TLP

Can you find and set an equivalent in TLP ? That would be easiest way to check if power saving mode kicks in and makes USB and BT inoperable.

This is probably the same as 2349926 – USB Devices randomly going non-responsive which is fixed on the latest F41 kernel (6.13.7).

1 Like

It happened last hour on my Dell XPS 15 9530, Fedora 41, kernel 6.13.6-200.
And 2 times some weeks ago with different kernel version.

phatle@kinoite:/var/home/phatle$ uname -a Linux kinoite 6.14.0-0.rc7.56.fc42.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Mar 17 13:25:24 UTC 2025 x86_64 GNU/Linux
seems to be working here havent got any issues on older ones i had some disconnects/lags

I confirm, with kernel 6.13.7 the problem is resolved.

2 Likes

As stated above the issues seems to be solved with latest kernel update. I haven’t encountered this issue for more than a week.

1 Like