You are not logged in.
The actual suspend is good, the laptop also shuts down quickly.
The problem is that when I want to wake it, it takes up to 1 or 2 minutes. Sometimes longer. (Could be a bit less, but you get the point.)
Laptop specifications:
OS: Arch Linux x86_64
Laptop: ROG Zephyrus M16 GU603ZW_GU603ZW 1.0
Kernel: 6.7.5-arch1-1
Shell: zsh 5.9
Resolution: 2560x1600
DE: GNOME 45.4
WM: Mutter
CPU: 12th Gen Intel i9-12900H (20) @ 4.900GHz
GPU: NVIDIA Geforce RTX 3070 Ti Laptop GPU GPU: Intel Alder Lake-P GT2 [Iris Xe Graphics]
Memory: 5745MiB / 31784MiB
When waking from sleep we get the following information: (Checking dmesg)
[ 642.483972] sdhci-pci 0000:2f:00.0: not ready 1023ms after resume; waiting
[ 643.537370] sdhci-pci 0000:2f:00.0: not ready 2047ms after resume; waiting
[ 645.724028] sdhci-pci 0000:2f:00.0: not ready 4095ms after resume; waiting
[ 649.990655] sdhci-pci 0000:2f:00.0: not ready 8191ms after resume; waiting
[ 658.310658] sdhci-pci 0000:2f:00.0: not ready 16383ms after resume; waiting
[ 675.590673] sdhci-pci 0000:2f:00.0: not ready 32767ms after resume; waiting
[ 709.723965] sdhci-pci 0000:2f:00.0: not ready 65535ms after resume; giving up
[ 709.724183] sdhci-pci 0000:2f:00.0: Unable to change power state from D3cold to D0, device inaccessible
[ 709.931501] mmc0: enable PCI MSI failed, error=-22
[ 710.031516] mmc0: Reset 0x1 never completed.
[ 710.031519] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 710.031522] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 710.031525] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 710.031527] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 710.031529] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 710.031532] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 710.031534] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 710.031536] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 710.031539] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 710.031541] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 710.031543] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 710.031545] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 710.031547] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 710.031549] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 710.031551] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 710.031554] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 710.031555] mmc0: sdhci: ============================================
[ 710.031558] sdhci-pci 0000:2f:00.0: PM: dpm_run_callback(): pci_pm_resume+0x0/0xf0 returns -22
[ 710.031567] sdhci-pci 0000:2f:00.0: PM: failed to resume async: error -22
Second part
The second part keeps looping a few times. And then suddenly it wakes up.
[ 710.823719] random: crng reseeded on system resumption
[ 710.829332] mmc0: 3.3V regulator output did not become stable
[ 710.860354] PM: suspend exit
[ 710.974677] mmc0: Controller never released inhibit bit(s).
[ 710.974690] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 710.974698] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 710.974709] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 710.974712] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 710.974715] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 710.974717] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 710.974720] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 710.974723] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 710.974725] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 710.974728] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 710.974731] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 710.974733] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 710.974736] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 710.974738] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 710.974740] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 710.974743] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 710.974744] mmc0: sdhci: ============================================
[ 711.074847] mmc0: Reset 0x2 never completed.
[ 711.074851] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 711.074854] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 711.074857] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 711.074859] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 711.074862] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 711.074865] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 711.074867] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 711.074870] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 711.074872] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 711.074875] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 711.074877] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 711.074880] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 711.074882] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 711.074885] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 711.074887] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 711.074890] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 711.074891] mmc0: sdhci: ============================================
[ 711.174895] mmc0: Reset 0x4 never completed.
[ 711.174896] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 711.174899] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 711.174901] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 711.174904] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 711.174906] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 711.174909] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 711.174911] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 711.174914] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 711.174916] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 711.174918] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 711.174921] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 711.174923] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 711.174926] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 711.174928] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 711.174930] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 711.174933] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 711.174934] mmc0: sdhci: ============================================
[ 711.190907] mmc0: Controller never released inhibit bit(s).
[ 711.190912] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 711.190918] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 711.190923] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 711.190926] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 711.190929] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 711.190933] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 711.190936] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 711.190939] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 711.190942] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 711.190946] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 711.190949] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 711.190952] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 711.190955] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 711.190958] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 711.190961] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 711.190964] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 711.190966] mmc0: sdhci: ============================================
[ 711.290982] mmc0: Reset 0x2 never completed.
[ 711.290985] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 711.290987] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 711.290990] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 711.290993] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 711.290995] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 711.290998] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 711.291000] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 711.291003] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 711.291005] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 711.291008] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 711.291010] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 711.291013] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 711.291015] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 711.291017] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 711.291019] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 711.291022] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 711.291023] mmc0: sdhci: ============================================
[ 711.391032] mmc0: Reset 0x4 never completed.
[ 711.391033] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 711.391035] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 711.391037] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 711.391040] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 711.391042] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 711.391045] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 711.391047] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 711.391050] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 711.391052] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 711.391055] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 711.391057] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 711.391060] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 711.391062] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 711.391065] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 711.391066] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 711.391069] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 711.391070] mmc0: sdhci: ============================================
[ 711.404500] mmc0: Controller never released inhibit bit(s).
[ 711.404510] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 711.404514] mmc0: sdhci: Sys addr: 0xffffffff | Version: 0x0000ffff
[ 711.404518] mmc0: sdhci: Blk size: 0x0000ffff | Blk cnt: 0x0000ffff
[ 711.404520] mmc0: sdhci: Argument: 0xffffffff | Trn mode: 0x0000ffff
[ 711.404523] mmc0: sdhci: Present: 0xffffffff | Host ctl: 0x000000ff
[ 711.404525] mmc0: sdhci: Power: 0x000000ff | Blk gap: 0x000000ff
[ 711.404528] mmc0: sdhci: Wake-up: 0x000000ff | Clock: 0x0000ffff
[ 711.404530] mmc0: sdhci: Timeout: 0x000000ff | Int stat: 0xffffffff
[ 711.404533] mmc0: sdhci: Int enab: 0xffffffff | Sig enab: 0xffffffff
[ 711.404535] mmc0: sdhci: ACmd stat: 0x0000ffff | Slot int: 0x0000ffff
[ 711.404538] mmc0: sdhci: Caps: 0xffffffff | Caps_1: 0xffffffff
[ 711.404540] mmc0: sdhci: Cmd: 0x0000ffff | Max curr: 0xffffffff
[ 711.404542] mmc0: sdhci: Resp[0]: 0xffffffff | Resp[1]: 0xffffffff
[ 711.404545] mmc0: sdhci: Resp[2]: 0xffffffff | Resp[3]: 0xffffffff
[ 711.404546] mmc0: sdhci: Host ctl2: 0x0000ffff
[ 711.404549] mmc0: sdhci: ADMA Err: 0xffffffff | ADMA Ptr: 0xffffffffffffffff
[ 711.404550] mmc0: sdhci: ============================================
Going by these logs, the lost likely culprit is: **sdhci-pci 0000:2f:00.0**
Diving a bit deeper with lspci, we get the following device:
2f:00.0 SD Host controller [0805]: Genesys Logic, Inc GL9755 SD Host Controller [17a0:9755] (rev 01)
Subsystem: ASUSTeK Computer Inc. GL9755 SD Host Controller [1043:202f]
Kernel driver in use: sdhci-pci
Kernel modules: sdhci_pci
Ive tried high and low to just blacklist the driver, which works, but the result remains the exact same, so for debugging purposes and posting it here I removed all attempts at blacklisting the driver using modprobe. It keeps waiting for this device.
I went through multiple pages of the arch wiki, but I find myself lost.
Any ideas on how I could make my laptop wake from suspend quickly and fix this problem?
Entirely disabling the Genesys Logic, Inc GL9755 SD is also a valid fix for me, as I do not ever use it.
I am willing to provide any and all log files, just ask me and I will update.
FAQ:
* Sleep/wake works perfectly in windows.
* Secure boot and fast boot are disabled.
* There are no additional sleep state / configuration options in my bios.
More debug information:
cat /sys/power/mem_sleep
[s2idle] deep
Last edited by Single Core (2024-02-22 14:14:01)
Offline