Repository navigation
Description
On a MacBook Air M1 (MacBookAir10,1) running Fedora Asahi Remix (GNOME), a USB hub connected to the USB-C port stops responding — along with every device attached to it — after the system suspends/resumes or is powered off/on. The hub only comes back if it is physically unplugged and replugged.
An attempt to recover it in software, by unbinding and rebinding the xhci-hcd platform driver instance without physically touching the cable, failed: the controller could not be halted/reset (-110 timeout), suggesting the issue sits below the generic xhci-hcd driver — likely in the SoC's USB-C/Thunderbolt port controller not restoring power/link state correctly on resume.
Steps to reproduce
Connect the QinHeng hub to the MacBook Air M1's USB-C port, with devices attached to it.
Suspend the system and resume it (the issue is also reported to occur after a full shutdown/power-on cycle, though the log below is specifically from a suspend/resume cycle).
The hub and everything attached to it stop responding — nothing from it shows up in lsusb.
Expected behavior
The hub and its downstream devices should become available again automatically on resume/boot.
Actual behavior
The hub stays completely inaccessible until it is physically disconnected and reconnected.
Log on resume (dmesg)
[ 436.867770] Restarting tasks: Starting
[ 436.867802] usb 1-1: USB disconnect, device number 2
[ 436.867803] usb 1-1.1: USB disconnect, device number 3
[ 436.868166] Restarting tasks: Done
...
[ 436.897633] usb 1-1.5: USB disconnect, device number 4
[ 436.897719] cdc_ether 1-1.5:2.0 enu1u5c2: unregister 'cdc_ether' usb-xhci-hcd.2.auto-1.5, CDC Ethernet Device
Note that the hub itself (1-1) is disconnected, not just the devices hanging off it (1-1.1, 1-1.5). This points to the hub losing power (Vbus) entirely during suspend, rather than merely failing to answer a resume request.
Failed software recovery attempt
Tried forcing the controller to reinitialize via sysfs, without physically unplugging the hub:
bash
echo -n "xhci-hcd.2.auto" | sudo tee /sys/bus/platform/drivers/xhci-hcd/unbind
sleep 2
echo -n "xhci-hcd.2.auto" | sudo tee /sys/bus/platform/drivers/xhci-hcd/bind
Result — the controller could not come back up:
[ 830.092267] xhci-hcd xhci-hcd.2.auto: remove, state 4
[ 830.092274] usb usb2: USB disconnect, device number 1
[ 830.092476] xhci-hcd xhci-hcd.2.auto: USB bus 2 deregistered
[ 830.092524] xhci-hcd xhci-hcd.2.auto: remove, state 4
[ 830.092525] usb usb1: USB disconnect, device number 1
[ 830.134294] xhci-hcd xhci-hcd.2.auto: Host halt failed, -110
[ 830.134297] xhci-hcd xhci-hcd.2.auto: Host controller not halted, aborting reset.
[ 830.137018] xhci-hcd xhci-hcd.2.auto: USB bus 1 deregistered
[ 832.186977] xhci-hcd xhci-hcd.2.auto: xHCI Host Controller
[ 832.187163] xhci-hcd xhci-hcd.2.auto: new USB bus registered, assigned bus number 1
[ 832.228998] xhci-hcd xhci-hcd.2.auto: Host halt failed, -110
[ 832.229002] xhci-hcd xhci-hcd.2.auto: can't setup: -110
[ 832.229005] xhci-hcd xhci-hcd.2.auto: USB bus 1 deregistered
[ 832.229063] xhci-hcd xhci-hcd.2.auto: probe with driver xhci-hcd failed with error -110
The -110 timeout while trying to halt/reset the controller suggests the problem is lower than the generic xhci-hcd driver — likely in the Apple Silicon-specific USB-C/Thunderbolt port controller not being reinitialized correctly on resume.
Workaround
Physically unplug and replug the hub.
Thank you for all the work, I really like Asahi
Activity
riscv: drop __init from vec_check_unaligned_access_speed_all_cpus
riscv: drop __init from vec_check_unaligned_access_speed_all_cpus
stormpmm commentedon Aug 28, 2026
I have the exact same issue with my gigabit usb to ethernet adapter (RTL8153 chip) on my M1 Macbook Pro running Fedora Linux Asahi Remix 44 (Server Edition), Kernel 7.1.6-400.asahi.fc44.aarch64+16k
None of the software workarounds can get it to show up for me either. Unplugging and plugging it in is the only way and always works perfectly until the next scheduled reboot breaks the connection again:/
svenpeter42 commentedon Aug 28, 2026
Same as #497 I think