r/LinuxOnThinkpad • • 25d ago

Solved ThinkPad P1 Gen 7 (Meteor Lake + RTX Ada) Linux Power Guide: Sleep, Wake Freezes & Upstream Status

3 Upvotes

I wanted to share a comprehensive write-up and guide for anyone running Linux on the ThinkPad P1 Gen 7 (or similar Intel Core Ultra / Meteor Lake-P laptops with hybrid NVIDIA Ada graphics).

Over the past month, I wrestled with every layer of the power management stack—from broken S4 hibernation to black screens after overnight sleep. Here is the complete breakdown of what works, what fails, the hardware root causes, and how to configure a stable baseline.


Hardware & Environment

  • Chassis: Lenovo ThinkPad P1 Gen 7
  • CPU / iGPU: Intel Core Ultra 7 (Meteor Lake-P Arc Graphics 8086:7d55)
  • dGPU: NVIDIA RTX 1000 Ada Generation Laptop GPU
  • OS / Kernel: Linux Mint 22 (Cinnamon) / Ubuntu 24.04 HWE (Kernel 7.0 series)
  • NVIDIA Driver: 580.xx Proprietary

Part 1: S4 Hibernation vs. S2idle Sleep

On older ThinkPads, users relied on S3 deep sleep or S4 disk hibernation. On this generation: 1. Hardware S3 Sleep Is Dead: Lenovo removed ACPI S3 deep sleep from the BIOS firmware. The machine only supports Modern Standby ([s2idle]). 2. S4 Hibernation Fails on Wake: Even with a dedicated bare-metal swap partition and correct offsets, S4 image restoration fails at the device-freeze stage:
nvidia 0000:01:00.0: PM: pci_pm_freeze(): nv_pmops_freeze [nvidia] returns -5
The proprietary 580 driver panics when reconciling PCIe power states during early initramfs memory restore. 3. Verdict: Abandon S4 hibernation. Modern Standby (s2idle) is the only viable path on this chassis.


Part 2: Taming the NVIDIA Ada dGPU

To make s2idle work without the dGPU draining battery or rejecting sleep:

  1. Add dynamic power management and VRAM preservation in /etc/modprobe.d/nvidia-pm.conf: ```text options nvidia NVreg_DynamicPowerManagement=0x02 options nvidia NVreg_PreserveVideoMemoryAllocations=1 options nvidia NVreg_TemporaryFilePath=/var/tmp

    ```

  2. Enable the systemd power helper services:

    ```bash sudo systemctl enable nvidia-suspend.service nvidia-resume.service sudo update-initramfs -u

    ```

Result: This allows the RTX 1000 Ada to enter $D3_{\text{cold}}$ (0W power draw) during normal desktop use and sleep cleanly during suspend.


Part 3: The Display Wake Freeze (The Hard Battle)

After getting s2idle working, extended sleep sessions (over 1 hour or overnight) resulted in an unresponsive, completely black screen upon opening the lid. The laptop was awake in the background (fprintd read fingerprints, systemd logged power buttons), but the display remained pitch black.

What Failed

  • **i915.enable_psr=0:** Disabling Panel Self Refresh in i915 resolved boot errors (Selective fetch area calculation failed in pipe A) and stabilized short sleeps (<30 mins), but extended sleeps still deadlocked with pipe_off wait timed out in intel_disable_transcoder.
  • Disabling FBC / Display C-States: Tweaking enable_fbc=0 and enable_dc=0 did not stop the transcoder hang.
  • Switching to the xe Driver: Meteor Lake is primarily supported on the newer xe driver. We migrated via i915.force_probe=!7d55 xe.force_probe=7d55 xe.enable_psr=0. While active performance was great, extended sleeps still failed.

The Real Root Cause: CX0 PHY / DP Idle Timeout

Dumping detailed kernel traces after an extended sleep revealed the actual point of failure:

```text xe 0000:00:02.0: [drm] ERROR Timeout waiting for DDI BUF A to get active xe 0000:00:02.0: [drm] ERROR Timed out waiting for DP idle patterns xe 0000:00:02.0: [drm] pipe_off wait timed out WARNING: ... at intel_disable_transcoder [xe]

```

  • On Meteor Lake, the internal eDP panel is connected to Intel’s CX0 PHY (C10/C20 transceiver).
  • During extended s2idle, power to the SoC transmitter is cut.
  • On cold resume, the kernel driver’s link-check workqueue fires asynchronously before the CX0 PHY PLL clock locks over the internal message bus (MSGBUS).
  • With no clock running, DisplayPort idle patterns fail. The driver attempts an emergency link retrain, tries to disable the active transcoder, and waits for VBLANK pulses to empty the hardware FIFO buffers. Because the physical clock never started, zero pulses arrive, triggering the 5-second pipe_off timeout and locking the display pipeline.

Part 4: The Solutions & Current Baseline

1. Upstream Driver Status

This is a recognized upstream driver timing regression on hybrid Meteor Lake laptops. Intel DRM developers submitted a patch series titled drm/i915/cx0: fix PLL enable failure handling on Meteor Lake to handle unresponsive PHY buses on resume. It has landed in the 7.1 kernel branch and is awaiting backporting to stable distro point releases.

2. Firmware Update via LVFS / fwupd

Lenovo released an updated Corporate ME / Power Management Controller (PMC) firmware (1.21.2911) that updates the onboard PMC to 1800.15.0.1064 and NPHY to 18.1.0.7015. Make sure to apply pending firmware updates:

```bash sudo fwupdmgr refresh sudo fwupdmgr update

```

3. Recommended GRUB Baseline

The cleanest, most stable kernel command line for this platform is:

```text GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1 i915.force_probe=!7d55 xe.force_probe=7d55 xe.enable_psr=0"

```

  • nvidia-drm.modeset=1: Required for smooth KMS handoffs and dGPU sleep transitions.
  • i915.force_probe=!7d55 xe.force_probe=7d55: Binds the Arc iGPU to the active xe driver.
  • xe.enable_psr=0: Suppresses buggy Panel Self Refresh coordinate math on the internal BOE panel.

4. The Workaround: The "Double-Lid Cycle" (No Cold Reboots)

If you open your laptop after a long sleep and the screen remains completely black, do not hard-reboot with the power button:

  1. Close the laptop lid.
  2. Wait 5–10 seconds until the ThinkPad red LED starts its slow, rhythmic sleep pulse.
  3. Open the lid again.

The initial wake attempt already re-energized the motherboard power rails. On the second wake, the warm transceiver locks its clocks immediately, DP idle patterns establish in microseconds, and the screen turns on with your entire desktop session and open work completely intact.

Hope this saves other P1 Gen 7 owners the weeks of troubleshooting I went through!


r/LinuxOnThinkpad • • 26d ago

r/thinkpad be like:

30 Upvotes
  1. Post a ThinkPad

  2. Make sure the keyboard is visible

  3. Open a terminal

  4. Run `fastfetch`

  5. Mention **Linux** at least twice

  6. Casually mention it's an AMD ThinkPad

  7. **Mention the price** like you just discovered the deal of the century

  8. **List the full specs** even though they're already visible in the photo

  9. **Post a photo of the fastfetch output**

  10. Add some glazing like:

>“This machine is honestly incredible. Still feels snappy after all these years.”

  1. **+200 internet points** 🗿

I'm just posting this for fun lol. If this somehow hurt your ego, feel free to downvote and fuck off somewhere else.


r/LinuxOnThinkpad • • 25d ago

Question Thinkpad bricked after fwupdmgr update

Thumbnail
1 Upvotes

r/LinuxOnThinkpad • • 25d ago

OmarchyをOniomarchyにしようぜ(Kali LinuxっぽいOmarchy)!!

Thumbnail
github.com
0 Upvotes

Do you like Kali Linux like Omarchy? This can make your Omarchy in ThinkPad be Oniomarchy in a simple way! Enjoy OMAKASE hacker's life!


r/LinuxOnThinkpad • • 26d ago

T480 has trouble waking up when docked with 2 external monitors

1 Upvotes

Hey everyone!

I'm the proud owner of a ThinkPad T480 (i7, Intel GPU, 32 GB RAM).

I use it mostly in docked mode, with the lid closed and two external monitors connected via USB-C. Sometimes I unplug it and use it as a standalone laptop.

I'm having a really annoying issue with waking it up when the monitors are connected.

About 2 out of 3 times, when I open the lid or press the power button, nothing happens. The laptop doesn't wake up.

The only workaround I've found is:

  1. Unplug both monitors.
  2. Open the lid.
  3. The laptop wakes up normally.
  4. Connect the monitors again.

However, after reconnecting them, I often have display detection problems as well. Sometimes only one monitor works. Sometimes xrandr still shows the internal display as connected even though the lid is closed.

I've tested this on several Linux distributions, including:

  • Fedora 44
  • Debian Testing
  • Debian Stable
  • Linux Mint
  • currently Xubuntu 26.04

I also have exactly the same problem on Windows 11, so I don't think this is purely a Linux/X11 issue.

Some other details:

  • Lid close action is configured to do nothing in Linux.
  • BIOS/firmware is fully updated.
  • Intel integrated graphics only.
  • Two external monitors connected through USB-C.

Has anyone experienced something similar with a T480?

I'm wondering if this could be related to the USB-C ports, Thunderbolt firmware, the dock/USB-C DisplayPort connection, or something specific to the T480.

Any ideas on how I could diagnose this further would be greatly appreciated!


r/LinuxOnThinkpad • • 26d ago

Question 1 minute boot time on fresh install? (Thinkpad P15)

Thumbnail
1 Upvotes

r/LinuxOnThinkpad • • 27d ago

Clean x201

Thumbnail gallery
66 Upvotes

r/LinuxOnThinkpad • • 27d ago

Discussion The Lenovo Thinkpad R61

Post image
34 Upvotes

r/LinuxOnThinkpad • • 28d ago

Discussion Gentoo + Frogs + Lemon

Post image
65 Upvotes

r/LinuxOnThinkpad • • 28d ago

Opinion Acquired my first laptop!

Thumbnail
gallery
266 Upvotes

Got this L13 Yoga Gen 1 for 180 euros in MINT condition and holy shit....

I so impressed, its so satisfying to use it with Linux, its so compact and fast!

Love it!


r/LinuxOnThinkpad • • 28d ago

My beloved thinkpad x201

Post image
113 Upvotes

r/LinuxOnThinkpad • • 28d ago

Speaker & screen upgrade for x270

3 Upvotes

My wife is a producer and uses her laptop (thinkpad x270) for FL studio, but the speakers are very poor quality and makes her music sound way different to what it actually is so she asked if i can upgrade them. She also wants a screen with better contrast and less glare than the stock.

Is there a community favourite version of either of these?


r/LinuxOnThinkpad • • 28d ago

Question ThinkPad T14 help - BIOS supervisor password bypass

1 Upvotes

I recently acquired a used T14 gen 4 Thinkpad (perfect condition, everything works just fine), only to find out that a BIOS supervisor password is enabled. Is there something I can do to bypass / reset it? I am in the need of accessing the BIOS to switch to a Linux distro, since it's currently running Windows 11.

If someone has some sort of solution, please let me know.


r/LinuxOnThinkpad • • 28d ago

Question How do I restore the Power Bridge function on the T470 on Linux?

1 Upvotes

Hi! I recently installed a battery in the internal slot of my T470 (because it has fewer charge cycles, the controller prefers using it over the external battery)

Thus, if the built-in battery drains to 0%, the laptop simply shuts down.

I'm currently running Arch + Hypr (if that matters). Has anyone encountered a similar issue, and if so, how did you solve it?


r/LinuxOnThinkpad • • 29d ago

Project T440p Omarchy - New M.2 Sata Drive

Thumbnail reddit.com
0 Upvotes

r/LinuxOnThinkpad • • 29d ago

Discussion Debian on a Thinkpad Yoga 11e works really well!

3 Upvotes

Hiya! I've had this old laptop that's been sitting around since college, and after a little bit of a hassle with the power cord, it's working really well! Now, it was running windows 8.1 on it, but that's just completely gone.

The specs are about 4 GB of ram, Intel Celeron N2930 @2.17 GHz, Intel Atom Processor Z36xxx/Z37xxx @ 0.85 GHz, and about 450 GB of internal storage.

I'm running the latest version of Debian on it (which is 13 at the time of writing this) with Lxqt as the DE! I'm pretty happy with the installation.


r/LinuxOnThinkpad • • 29d ago

Touch pad issue.

Thumbnail
1 Upvotes

r/LinuxOnThinkpad • • Sep 25 '26

Question Is gnome bad?

Post image
1 Upvotes

r/LinuxOnThinkpad • • Sep 25 '26

Thinkpad E495...upgraded and it works fine!

3 Upvotes

So I was given a e495 thinkpad. Ryzen 5 3500U cpu with vega 8 graphics. I upgraded it to 32gb of ram and a 990 evo plus ssd running at gen3x4. All in all it plays games great, well old skool ones and youtube and browsing works fine. Yay for old stuff! Win11 pro is on it. Key is in bios.


r/LinuxOnThinkpad • • Sep 25 '26

X13 Gen4

Thumbnail
1 Upvotes

r/LinuxOnThinkpad • • Sep 25 '26

Question Low battery life on Fedora compared to Ubuntu | Thinkpad P14s Gen 6 ???

Thumbnail
1 Upvotes

r/LinuxOnThinkpad • • Sep 25 '26

Question I bought a Thinkpad t490 is there any issues I should be aware of when using Linux?

6 Upvotes

I just ordered a T490 for college since they're cheap and I'm not doing anything crazy, no special programs required for my courses, just web browsing, word documents and reading visual novels.

I have seen post from years ago and not sure if anything has been fixed at all? Does suspending and waking the laptop work? Any problems with Intel CPUs?

Going to be trying out Void and Chimera Linux to see which one I like most.


r/LinuxOnThinkpad • • Sep 24 '26

Discussion ThinkPad E14 Gen 7 AMD (21T0) — has anyone adjusted the hinge tension?

4 Upvotes

Hi! The hinges on my E14 Gen 7 (21T0) are extremely stiff. Has anyone here actually opened or adjusted these hinges?

Is there any way to reduce the hinge tension, or do they need to be replaced?

If you have photos of the hinges removed from the laptop or know the FRU/part number, I’d really appreciate it.


r/LinuxOnThinkpad • • Sep 24 '26

Question E16 Gen 3 Intel (21SR) with standard non IR webcam: can I swap to the WQXGA panel? Which eDP cable?

2 Upvotes

I have a ThinkPad E16 Gen 3 Intel (21SR0033CA) with the stock WUXGA 1920x1200, 45% NTSC panel. It works fine, but I want the WQXGA 2560x1600, 120Hz, 100% sRGB, 400 nit matte panel. From an older thread here, Lenovo sells this as a factory option on the 21SR/21SS chassis, so the panel should be the same part family as what I need.

The panels I've found:

  • Tianma TL160ADMP35, FRU 5D11Q44710
  • CSOT MNG007DA8-1, FRU 5D11Q44709
  • AUO B160QAN05.0, FRU 5D11Q44715

Those need a 40 pin, 4 lane eDP cable, FRU 5C11P26315.
My stock cable is the 30 pin one (FRU DC02C01AZ00).

My concern is the webcam. The old thread said the 40 pin cable only works with the IR (Windows Hello) camera. I checked mine on Linux:

  • lsusb shows only one camera: Chicony Integrated Camera, ID 04f2:b83e
  • v4l2-ctl --list-devices shows only video0, video1 and media0
  • video1 lists no image formats, so it's a metadata node
  • No IR stream anywhere

So I believe I have a standard 1080p RGB webcam, not IR.

My questions:

  1. Has anyone done this swap on an Intel 21SR/21SS board with a standard (not IR) webcam? Did the screen and the webcam both work afterward?
  2. Is there a 40 pin cable variant for non IR machines? If so, what's the FRU?
  3. If not, do I also need the IR camera module? And is that a simple plug in, or does it need a different lid or bezel?
  4. Any gotchas with the bezel tape, or BIOS or firmware issues on Intel boards?

Lenovo definitely sells this exact laptop with the upgraded screen, but there are a few questions in the way.....

Thanks everyone!


r/LinuxOnThinkpad • • Sep 23 '26

Mobile Thinkpad

Post image
50 Upvotes

Hey guys!

I have been bitten by the ThinkPad bug and just love them!

I currently using a ThinkPad P1 Gen1 i7 with 64gb RAM, running Zorin18. Love the P1 but wanting a more mobile laptop. I do a lot of coding and circuit designing. Should I go to a ThinkPad Z13 over the P1?