CachyOS / CachyOS/linux-cachyos
Arrow Lake-H S0ix never engages on ASUS ROG Zephyrus G16 (Core Ultra 9 285H)
- Dominant language
- Shell
- Stars
- 4.5k
- Forks
- 160
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 1
Description
### Pre-flight checklist
- [x] I have searched existing issues and this is not a duplicate.
- [x] I have read the [Contributing Guidelines](https://github.com/CachyOS/linux-cachyos/blob/master/CONTRIBUTING.md).
- [x] I have verified the issue is reproducible with the latest available CachyOS kernel.
- [x] I have tried to reproduce the issue on Arch Linux's `linux` kernel.
### Upstream / vanilla kernel check
Fully tested with Arch's vanilla/upstream kernel.
### Kernel variant
linux-cachyos (EEVDF, Clang)
### System information (cachyos-bugreport.sh)
```text
https://paste.cachyos.org/p/e2f995b.log
the log is more than 65536 characters
```
### Manual system information (if cachyos-bugreport.sh is unavailable)
```text
7.2.2-1-cachyos
Core ultra 9 285H
RTX 5070 Ti Mobile (not relevant to the reproduced failure; dGPU branch was separately eliminated)
x86_64
```
### Bug description
[s0ix-github-issue-revised.md](https://github.com/user-attachments/files/31865587/s0ix-github-issue-revised.md)
Suspend-to-idle itself works, but this Arrow Lake-H system never enters Intel SLP_S0 / S0ix.
A genuine 20–60 second s2idle cycle completes successfully, yet:
/sys/kernel/debug/pmc_core/slp_s0_residency_usec = 0
and Intel's own PMC diagnostics report:
PM: suspend entry (s2idle)
Timekeeping suspended for 59.344 seconds
intel_pmc_core INT33A1:00: CPU did not enter SLP_S0!!! (S0ix cnt=0)
PM: suspend exit
This also reproduces after a fresh reboot into a TTY-only baseline before starting Hyprland, Caelestia, ddcutil, etc., so it is not dependent on the desktop session.
The CPU/package itself reaches deep package idle: CPU_C10_REQ_STS=1 on both PMCs and Package C10 residency accumulates. However, the main PMC never sees the IOE conditions required for S0i2.0:
PMC0:CPU_C10_REQ_STS 1
PMC0:IOE_COND_MET_S02I2_0_REQ_STS 0
PMC0:IOE_COND_MET_S02I2_1_REQ_STS 0
PMC0:IOE_COND_MET_S02I2_2_REQ_STS 0
PMC0:ITSS_CLK_SRC_REQ_STS 0
PMC0:ARC_IDLE_REQ_STS 0
A reproducible additional asymmetry is:
PMC0:PCIE_DEEP_PM_REQ_STS 0
PMC1:PCIE_DEEP_PM_REQ_STS 1
I am not claiming PCIE_DEEP_PM_REQ_STS alone is the root cause. The stronger observation is that the main PMC never receives the required IOE S0i2 conditions while the IOE/platform power-gating path fails to fully quiesce.
Firmware also denies Linux control of PCIe ASPM:
ACPI FADT declares the system doesn't support PCIe ASPM, so disable it
FADT indicates ASPM is unsupported, using BIOS configuration
can't override BIOS ASPM; OS doesn't have ASPM control
This may be relevant but has not yet been proven to be the root cause.
### Steps to reproduce
1. Ensure s2idle is selected:
echo s2idle | sudo tee /sys/power/mem_sleep
2. Enable Intel PMC S0ix failure diagnostics:
echo 1 | sudo tee /sys/module/intel_pmc_core/parameters/warn_on_s0ix_failures
3. Suspend for 60 seconds:
sudo rtcwake -m mem -s 60
4. Check S0ix residency:
sudo cat /sys/kernel/debug/pmc_core/slp_s0_residency_usec
5. Inspect the kernel log:
sudo journalctl -b -k | grep -E 'Timekeeping suspended|CPU did not enter SLP_S0|PM: suspend'
[s0ix-github-issue-revised.md](https://github.com/user-attachments/files/31865596/s0ix-github-issue-revised.md)
### Expected behavior
A successful s2idle cycle should accumulate non-zero SLP_S0/S0ix residency when the platform is quiescent.
[s0ix-github-issue-revised.md](https://github.com/user-attachments/files/31865596/s0ix-github-issue-revised.md)
### Actual behavior
s2idle completes for the requested interval, but slp_s0_residency_usec remains 0 and intel_pmc_core logs:
CPU did not enter SLP_S0!!! (S0ix cnt=0)
[s0ix-github-issue-revised.md](https://github.com/user-attachments/files/31865596/s0ix-github-issue-revised.md)
### Logs / stack traces
```text
PM: suspend entry (s2idle)
Timekeeping suspended for 59.344 seconds
intel_pmc_core INT33A1:00: CPU did not enter SLP_S0!!! (S0ix cnt=0)
PM: suspend exit
[s0ix-github-issue-revised.md](https://github.com/user-attachments/files/31865596/s0ix-github-issue-revised.md)
```
### Additional system information
[s0ix-github-issue-revised.md](https://github.com/user-attachments/files/31865596/s0ix-github-issue-revised.md)
64 gb ddr5
hyprland
Contributor guide
Assessment
This issue has not been assessed yet.