Skip to content

fix(hardware): prevent ~130s sleep wake stall on MacBook Pro 2016-2017 - #9899

Open
tcholewa wants to merge 1 commit into
omacom:quattrofrom
tcholewa:fix/macbook-thunderbolt-suspend
Open

fix(hardware): prevent ~130s sleep wake stall on MacBook Pro 2016-2017#9899
tcholewa wants to merge 1 commit into
omacom:quattrofrom
tcholewa:fix/macbook-thunderbolt-suspend

Conversation

@tcholewa

@tcholewa tcholewa commented Sep 2, 2026

Copy link
Copy Markdown

Summary

Fixes a ~130-second system freeze on wake from ACPI S3 (deep) sleep on MacBook Pro 2016–2017 models (MacBookPro13,x and MacBookPro14,x).

Root Cause

On MacBook Pro 2016–2017 models equipped with Intel Alpine Ridge Thunderbolt 3 controllers (8086:15d2 NHI / 8086:15d4 integrated xHCI), Apple firmware cuts power to the controller during S3 sleep. On wake, xhci_hcd polls the unpowered PCIe device (0000:07:00.0), hitting exponential backoff timeouts (1023ms -> 2047ms -> ... -> 65535ms) totalling ~130 seconds before pciehp drops the dead device.

Solution

  1. Adds install/hardware/apple/fix-suspend-thunderbolt.sh to remove unpowered 8086:15d4 PCIe devices prior to S3 sleep.
  2. Unloads thunderbolt and facetimehd before sleep to prevent kernel call traces and unneeded sensor power-on.
  3. Automatically dispatches hl.dsp.dpms({ action = "enable" }) upon resume across active Hyprland user sessions so the display backlight lights up immediately.
  4. Rescans the Thunderbolt root port (0000:00:1c.4) after resume.
  5. Updates manual/44-mac-support.md with documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant