All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla-daemon@kernel.org
To: linux-usb@vger.kernel.org
Subject: [Bug 221073] New: xHCI host controller dies on resume from s2idle on AMD Strix Halo [1022:1587]
Date: Tue, 10 Feb 2026 17:46:28 +0000	[thread overview]
Message-ID: <bug-221073-208809@https.bugzilla.kernel.org/> (raw)

https://bugzilla.kernel.org/show_bug.cgi?id=221073

            Bug ID: 221073
           Summary: xHCI host controller dies on resume from s2idle on AMD
                    Strix Halo [1022:1587]
           Product: Drivers
           Version: 2.5
          Hardware: AMD
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P3
         Component: USB
          Assignee: drivers_usb@kernel-bugs.kernel.org
          Reporter: mrh@frame.work
        Regression: No

Created attachment 309339
  --> https://bugzilla.kernel.org/attachment.cgi?id=309339&action=edit
dmesg from Feb 10 2026 reproduction - kernel 6.18.8-200.fc43.x86_64

Hardware: Framework Desktop (AMD Ryzen AI Max 300 Series)/FRANMFCP02
BIOS: 03.04
OS: Fedora 43 (kernel 6.18.8-200.fc43.x86_64)
Reporter: Matt H.— Framework Computer

Affected controller:

c1:00.4 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] Strix Halo
USB 3.1 xHCI [1022:1587] (prog-if 30 [XHCI])
        Subsystem: Framework Computer Inc. Device 000a
        Flags: bus master, fast devsel, latency 0, IRQ 25, IOMMU group 19
        Memory at 90000000 (64-bit, non-prefetchable) [size=1M]
        Capabilities: [48] Vendor Specific Information: Len=08 <?>
        Capabilities: [50] Power Management version 3
        Capabilities: [64] Express Endpoint, IntMsgNum 0
        Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [c0] MSI-X: Enable+ Count=1 Masked-
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010
<?>
        Capabilities: [2a0] Access Control Services
        Kernel driver in use: xhci_hcd

PROBLEM:

The xHCI host controller at 0000:c1:00.4 dies on resume from s2idle.
All USB devices behind this controller are lost. Unbinding and rebinding
the driver restores functionality, proving this is a driver resume path
bug — the hardware is fine.

Reported by Framework customers across multiple distributions:
  - CachyOS (6.18.2, 6.18.8)
  - Debian 13 (6.12.63)
  - Bluefin / Fedora Atomic 43 (6.17.11)

Reproduced by reporter (this report):
  - Fedora 43 (6.18.8-200.fc43.x86_64)

It has also been reported on non-Framework AMD hardware:
  - Lenovo ThinkPad T14 Gen 6 AMD — identical xHCI timeout, identical
    unbind/rebind fix

REPRODUCTION — Feb 10 2026, kernel 6.18.8-200.fc43.x86_64, BIOS 03.04:

  08:10:41 — booted
  08:32:30 — suspended and resumed, controller dead after 22 minutes

  xhci_hcd 0000:c1:00.4: xHCI host not responding to stop endpoint command
  xhci_hcd 0000:c1:00.4: xHCI host controller not responding, assume dead
  xhci_hcd 0000:c1:00.4: HC died; cleaning up

Full dmesg attached.

REGRESSION DATA (cross-distro, same hardware):

  Customer-reported:
  - Kernel 6.12.63 (Debian 13): USB resume fails ~40% of the time
  - Kernel 6.18.2 (CachyOS): USB resume fails 100% of the time
  - Kernel 6.18.8 (CachyOS): USB resume fails 100% of the time

  Reporter-reproduced:
  - Kernel 6.17.1 (Fedora 43): USB resume fails
  - Kernel 6.18.8 (Fedora 43): USB resume fails 100% of the time

The bug exists on 6.12 but is intermittent. By 6.18 it is deterministic.
Something between 6.12 and 6.18 made it worse, but it was already present.

WORKAROUND:

Unbinding and rebinding the xHCI PCI device restores full functionality:

  echo -n "0000:c1:00.4" > /sys/bus/pci/drivers/xhci_hcd/unbind
  sleep 2
  echo -n "0000:c1:00.4" > /sys/bus/pci/drivers/xhci_hcd/bind

This works every time. If the hardware were in a broken state, a driver
rebind would not fix it. The bind path fully reinitializes the controller.
The resume path does not perform the same initialization. This is a kernel
driver bug.

NOT BIOS-SPECIFIC:
  Reproduced across BIOS 3.03, 3.04, and 3.05 on Framework Desktop.

NOT FRAMEWORK-SPECIFIC:
  Same failure on Lenovo ThinkPad T14 Gen 6 AMD with identical symptoms
  and identical workaround.

NOT THE SAME AS BUG #220702 OR #220812:
  Bug #220702 (Strix Halo sleep not working with 6.17 and later) is a VPE
  suspend regression with a specific fix (commit 3925683515e9). That fix
  does not resolve this issue. Bug #220812 (HP ZBook Ultra s2idle failure)
  is the same class, resolved. Our bug predates both — it reproduces on
  6.12 LTS which is unaffected by the VPE commit — and affects non-Strix
  Halo hardware.

NOT THE SAME AS BUG #219824:
  Bug #219824 (cycle bit on link TRBs, fixed in 6.13.7 via commit
  c7c1f3b05c67) is a different xHCI resume failure. That fix does not
  address this issue.

REFERENCES:
  https://github.com/FrameworkComputer/SoftwareFirmwareIssueTracker/issues/163
 
https://community.frame.work/t/framework-desktop-wired-keyboard-and-mouse-dont-return-after-sleep-linux/76414

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

             reply	other threads:[~2026-02-10 17:46 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-10 17:46 bugzilla-daemon [this message]
2026-02-10 18:04 ` [Bug 221073] xHCI host controller dies on resume from s2idle on AMD Strix Halo [1022:1587] bugzilla-daemon
2026-02-11  6:54 ` bugzilla-daemon
2026-02-11 23:04 ` bugzilla-daemon
2026-02-12  8:27 ` bugzilla-daemon
2026-02-12 10:02 ` bugzilla-daemon
2026-02-12 16:15 ` bugzilla-daemon
2026-02-25 11:10 ` bugzilla-daemon
2026-02-26  8:48 ` bugzilla-daemon
2026-02-26  8:50 ` bugzilla-daemon
2026-02-26  9:30 ` bugzilla-daemon
2026-02-26  9:37 ` bugzilla-daemon
2026-02-26 12:16 ` bugzilla-daemon
2026-02-26 12:18 ` bugzilla-daemon
2026-02-26 22:51 ` bugzilla-daemon
2026-02-27 14:04 ` bugzilla-daemon
2026-03-02 16:45 ` bugzilla-daemon
2026-03-02 18:08 ` bugzilla-daemon
2026-03-02 18:14 ` bugzilla-daemon
2026-03-02 19:05 ` bugzilla-daemon
2026-03-03 14:54 ` bugzilla-daemon
2026-03-03 14:55 ` bugzilla-daemon
2026-03-03 14:55 ` bugzilla-daemon
2026-03-03 14:56 ` bugzilla-daemon
2026-03-03 15:05 ` bugzilla-daemon
2026-03-03 15:47 ` bugzilla-daemon
2026-03-03 15:51 ` bugzilla-daemon
2026-03-03 16:59 ` bugzilla-daemon
2026-03-03 17:05 ` bugzilla-daemon
2026-03-03 22:57 ` bugzilla-daemon
2026-03-04  0:20 ` bugzilla-daemon
2026-03-04  9:15 ` bugzilla-daemon
2026-03-06 11:11 ` bugzilla-daemon
2026-03-06 11:40 ` bugzilla-daemon
2026-03-09 10:31 ` bugzilla-daemon
2026-03-11 22:09 ` bugzilla-daemon
2026-03-12  0:04 ` bugzilla-daemon
2026-03-12  6:49 ` bugzilla-daemon
2026-03-12 10:35 ` bugzilla-daemon
2026-03-14  4:29 ` bugzilla-daemon
2026-03-16  0:39 ` bugzilla-daemon
2026-03-17  0:03 ` bugzilla-daemon
2026-03-18 23:18 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-221073-208809@https.bugzilla.kernel.org/ \
    --to=bugzilla-daemon@kernel.org \
    --cc=linux-usb@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.