Reproducing this on different hardware (Framework Laptop 16, AMD Ryzen 7940HS with RTX 5070 Max-Q) on Ubuntu 26.04 kernel 7.0.0-14-generic. Same symptoms — lid-close s2idle suspend never resumes, hard reset required.
I isolated kernel vs driver independently:
- Kernel 6.17.0-22 + nvidia loaded → works
- Kernel 6.17.0-22 + nvidia blacklisted → works
- Kernel 7.0.0-14 + nvidia loaded → hangs
- Kernel 7.0.0-14 + nvidia blacklisted (module_blacklist=nvidia_drm,nvidia_modeset,nvidia_uvm,nvidia) → works
Same nvidia-open driver (tested both 580.142 and 595.58.03), only the kernel version matters. On kernel 7.0 with nvidia blacklisted, s2idle completes a clean `PM: suspend entry → PM: resume from suspend-to-idle → PM: suspend exit` cycle — so the regression is in the nvidia-open suspend path, triggered by kernel-PM changes between 6.17 and 7.0.
Failure signature on the hung boot: `journalctl -b -1 -k` ends at `nvidia 0000:01:00.0: Enabling HDA controller` with no subsequent `PM: suspend entry (s2idle)` line — which the kernel emits only after the device suspend cascade returns. So the nvidia PCI `.suspend` callback does not return on 7.0.
Your hardware is Intel + Lenovo, mine is AMD Phoenix + Framework — different platform, different iGPU, different CPU vendor. The only common factor is kernel 7.0 + RTX 50-series Max-Q + nvidia-open, which rules out platform/firmware.
Filed with full diagnostics:
- Ubuntu Launchpad: Bug #2149963 “kernel 7.0.0-14 hangs on s2idle resume with nvid...” : Bugs : linux package : Ubuntu
- NVIDIA open-gpu-kernel-modules GitHub: RTX 50-series (Blackwell): s2idle resume hangs on Linux 7.0 kernel; same driver works on 6.17 · Issue #1117 · NVIDIA/open-gpu-kernel-modules · GitHub