Environment
┌───────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Field │ Value │
├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Laptop │ Lenovo ThinkPad P1 Gen 8 (BIOS: N4EET23W 1.09) │
├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ CPU / GPU │ Intel Core Ultra 7 265H — Arrow Lake-P / Arc Pro 130T [8086:7d51] rev 03 │
├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Internal display │ eDP — Chimei Innolux CMN 0x1660, 1920×1200, via DDI A / C10 PHY │
├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ External displays │ 2× DisplayPort monitors via Lenovo ThinkPad Thunderbolt 4 Dock (vendor=0x108, device=0x2031), connected through Thunderbolt 4 [8086:0b26 Goshen Ridge] │
├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Kernel │ 7.1.1-300.fc44.x86_64 (Fedora 44, built 2026-06-22) │
├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ i915 GuC │ i915/mtl_guc_70.bin version 70.53.0 │
├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤
│ Suspend mode │ s2idle — only supported mode (ACPI: PM: (supports S0 S4 S5), no S3) │
└───────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
---
Reproduction
1. Boot with Lenovo ThinkPad Thunderbolt 4 Dock connected (external monitors active via DP through dock).
2. Work normally for several hours (~5h in this case).
3. Suspend the system (lid close / systemctl suspend) for more than ~1 hour. In this case: ~14 hours (18:16 → 08:15 next day).
4. Wake the system.
Result: The internal eDP display does not come back. The C10 PLL for DDI A is in hardware reset state (all registers = 0x00). The display subsystem enters a stuck state that cannot recover without reboot. Disconnecting and reconnecting the Thunderbolt dock does not help and causes the external displays to also
fail.
---
Suspend / Resume Timeline
2026-06-23 08:41:56 Boot
2026-06-23 08:41:56 Low-power S0 idle used by default for system suspend
2026-06-23 08:42 Thunderbolt dock connected (vendor=0x108, device=0x2031)
2026-06-23 13:45:44 [FIRST OCCURRENCE — pre-suspend PHY instability]
i915: *ERROR* Failed to bring PHY A to idle.
i915: *ERROR* PHY A Read 0c70 failed after 3 retries.
i915: *ERROR* PHY A Write 0c70 failed after 3 retries.
(display recovered on its own at this point)
2026-06-23 18:16:37 PM: suspend entry (s2idle)
2026-06-24 08:15:30 PM: suspend exit [~14h suspend duration]
2026-06-24 08:15:30 i915: GT0/GT1 GuC firmware 70.53.0 reloaded — OK
2026-06-24 08:15:30 PM: resume devices took 0.321 seconds
2026-06-24 08:15:31 [FAILURE — internal display does not come back]
2026-06-24 08:15:43 PHY A / pipe A errors (see log below)
2026-06-24 08:16:05 thunderbolt 1-1: device disconnected [manual dock unplug]
2026-06-24 08:16:09 i915: *ERROR* flip_done timed out
2026-06-24 08:16:09 i915: *ERROR* [CRTC:151:pipe A] commit wait timed out
2026-06-24 08:16:17 thunderbolt 1-1: new device found, vendor=0x108 device=0x2031
2026-06-24 08:16:17 thunderbolt 1-1: Lenovo ThinkPad Thunderbolt 4 Dock [dock reconnected]
2026-06-24 08:16:20 i915: *ERROR* [CRTC:151:pipe A] flip_done timed out
2026-06-24 08:16:30 i915: *ERROR* [CRTC:151:pipe A] commit wait timed out
[external displays also fail to restore after dock reconnect]
---
Kernel Log — Post-Resume Failure (2026-06-24 08:15:31–08:15:43)
i915 0000:00:02.0: [drm] *ERROR* Timeout waiting for DDI BUF A to get active
i915 0000:00:02.0: [drm] *ERROR* Timed out waiting for DP idle patterns
i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] flip_done timed out
i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in pixel_rate (expected 154260, found 39003)
i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in dpll_hw_state
i915 0000:00:02.0: [drm] *ERROR* expected:
i915 0000:00:02.0: [drm] *ERROR* cx0pll_hw_state: lane_count: 2, ssc_enabled: no, use_c10: yes, tbt_mode: no
i915 0000:00:02.0: [drm] *ERROR* c10pll_hw_state: fracen: yes, quot: 8192, rem: 0, den: 1, multiplier: 253, tx_clk_div: 2.
i915 0000:00:02.0: [drm] *ERROR* c10pll_rawhw_state:
i915 0000:00:02.0: [drm] *ERROR* tx: 0x10, cmn: 0x21
i915 0000:00:02.0: [drm] *ERROR* pll[0] = 0x34, pll[1] = 0x0, pll[2] = 0xda, pll[3] = 0x1
i915 0000:00:02.0: [drm] *ERROR* pll[4] = 0x0, pll[5] = 0x0, pll[6] = 0x0, pll[7] = 0x0
i915 0000:00:02.0: [drm] *ERROR* pll[8] = 0x0, pll[9] = 0x1, pll[10] = 0x0, pll[11] = 0x0
i915 0000:00:02.0: [drm] *ERROR* pll[12] = 0x20, pll[13] = 0x0, pll[14] = 0x0, pll[15] = 0x2
i915 0000:00:02.0: [drm] *ERROR* pll[16] = 0x85, pll[17] = 0x8f, pll[18] = 0xe6, pll[19] = 0x23
i915 0000:00:02.0: [drm] *ERROR* found:
i915 0000:00:02.0: [drm] *ERROR* cx0pll_hw_state: lane_count: 2, ssc_enabled: no, use_c10: yes, tbt_mode: no
i915 0000:00:02.0: [drm] *ERROR* c10pll_hw_state: fracen: no, multiplier: 16, tx_clk_div: 0.
i915 0000:00:02.0: [drm] *ERROR* c10pll_rawhw_state:
i915 0000:00:02.0: [drm] *ERROR* tx: 0x0, cmn: 0x0
i915 0000:00:02.0: [drm] *ERROR* pll[0..19] = 0x00 (all zero — hardware reset/power-down state)
i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in hw.pipe_mode.crtc_clock (expected 154260, found 39003)
i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in hw.adjusted_mode.crtc_clock (expected 154260, found 39003)
i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in port_clock (expected 243000, found 61440)
i915 0000:00:02.0: [drm] pipe state doesn't match!
WARNING: drivers/gpu/drm/i915/display/intel_modeset_verify.c:225 at verify_crtc_state+0x2b3/0x4e0 [i915]
RIP: 0010:verify_crtc_state+0x2b9/0x4e0 [i915]
Call Trace:
intel_modeset_verify_crtc+0x44/0x70 [i915]
intel_atomic_commit_tail+0xb9d/0xf00 [i915]
intel_atomic_commit+0x2ab/0x2f0 [i915]
drm_atomic_commit+0xb1/0xe0
drm_mode_atomic_ioctl+0x...
---
Root Cause Analysis
The C10 PHY (CX0 combo PHY) for DDI A (internal eDP) is in hardware reset state after resume — all 20 PLL registers read as 0x00. The driver fails to bring the PHY back to an operational state, resulting in the DPLL state mismatch:
- Expected pixel clock: 154,260 kHz (fracen=yes, multiplier=253) — correct for 1920×1200 eDP
- Found: 39,003 kHz (fracen=no, multiplier=16) — corresponds to PHY power-down / reset state
The driver issued PHY A Read/Write 0c70 commands (likely the PHY lane control register) which timed out after 3 retries, indicating the PHY is unresponsive. The same error pattern also appeared ~5 hours before suspend (13:45), suggesting the PHY becomes unstable after extended idle periods — this is consistent with
the known CX0 "PHY left idle for more than 1 hour" issue.
---
Patches Already Applied (in kernel 7.1.1-300.fc44)
The following related patches are confirmed present (backported via 7.0.10):
- drm/i915/cx0: Clear response ready & error bit — Suraj Kandpal (patchwork series 159540, Jan 2026)
- drm/i915/cx0: Rename intel_clear_response_ready flag — Suraj Kandpal
- drm/i915/dp_tunnel: Don't update tunnel state during system resume — Imre Deak
Despite these patches, the bug persists.
---
Likely Missing Fix
On 2026-06-18, Jakub Bystron reported an identical regression on kernel 7.1.0:
"[REGRESSION] drm/i915: ThinkPad P1 Gen 7 fails to resume internal eDP panel after longer lid suspend"
Jani Nikula (i915 display maintainer) responded on 2026-06-22, identifying the fix as a patch series by Imre Deak submitted to intel-gfx.org on 2026-06-12:
Message-ID: 20260612172617.3427027-1-imre.deak
From: Imre Deak <imre.deak>
To: intel-gfx.org
Date: Fri, 12 Jun 2026
URL: https://lore.kernel.org/r/20260612172617.3427027-1-imre.deak@intel.com
This patch series is currently on drm-tip only. It was not included in Linux 7.1.0 (released 2026-06-15, too early) nor in Linux 7.1.1 (released 2026-06-19, ChangeLog contains no drm/i915 entries). It is not present in Fedora kernel 7.1.1-300.fc44 (built 2026-06-22).
---
Request
Please backport Imre Deak's patch series (20260612172617.3427027-1-imre.deak) to the Fedora kernel package, or include it in the next kernel update once it lands in a 7.1.y stable release.
---
Bugzilla fields:
┌────────────┬──────────────────────────────────────────┐
│ Field │ Value │
├────────────┼──────────────────────────────────────────┤
│ Product │ Fedora │
├────────────┼──────────────────────────────────────────┤
│ Component │ kernel │
├────────────┼──────────────────────────────────────────┤
│ Version │ 44 │
├────────────┼──────────────────────────────────────────┤
│ Severity │ high │
├────────────┼──────────────────────────────────────────┤
│ Hardware │ x86_64 │
├────────────┼──────────────────────────────────────────┤
│ OS │ Linux │
├────────────┼──────────────────────────────────────────┤
│ Whiteboard │ drm/i915 CX0 PHY eDP Arrow Lake-P s2idle │
└────────────┴──────────────────────────────────────────┘
Reproducible: Always
Environment ┌───────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ Field │ Value │ ├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Laptop │ Lenovo ThinkPad P1 Gen 8 (BIOS: N4EET23W 1.09) │ ├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ CPU / GPU │ Intel Core Ultra 7 265H — Arrow Lake-P / Arc Pro 130T [8086:7d51] rev 03 │ ├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Internal display │ eDP — Chimei Innolux CMN 0x1660, 1920×1200, via DDI A / C10 PHY │ ├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ External displays │ 2× DisplayPort monitors via Lenovo ThinkPad Thunderbolt 4 Dock (vendor=0x108, device=0x2031), connected through Thunderbolt 4 [8086:0b26 Goshen Ridge] │ ├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Kernel │ 7.1.1-300.fc44.x86_64 (Fedora 44, built 2026-06-22) │ ├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ i915 GuC │ i915/mtl_guc_70.bin version 70.53.0 │ ├───────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ Suspend mode │ s2idle — only supported mode (ACPI: PM: (supports S0 S4 S5), no S3) │ └───────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ --- Reproduction 1. Boot with Lenovo ThinkPad Thunderbolt 4 Dock connected (external monitors active via DP through dock). 2. Work normally for several hours (~5h in this case). 3. Suspend the system (lid close / systemctl suspend) for more than ~1 hour. In this case: ~14 hours (18:16 → 08:15 next day). 4. Wake the system. Result: The internal eDP display does not come back. The C10 PLL for DDI A is in hardware reset state (all registers = 0x00). The display subsystem enters a stuck state that cannot recover without reboot. Disconnecting and reconnecting the Thunderbolt dock does not help and causes the external displays to also fail. --- Suspend / Resume Timeline 2026-06-23 08:41:56 Boot 2026-06-23 08:41:56 Low-power S0 idle used by default for system suspend 2026-06-23 08:42 Thunderbolt dock connected (vendor=0x108, device=0x2031) 2026-06-23 13:45:44 [FIRST OCCURRENCE — pre-suspend PHY instability] i915: *ERROR* Failed to bring PHY A to idle. i915: *ERROR* PHY A Read 0c70 failed after 3 retries. i915: *ERROR* PHY A Write 0c70 failed after 3 retries. (display recovered on its own at this point) 2026-06-23 18:16:37 PM: suspend entry (s2idle) 2026-06-24 08:15:30 PM: suspend exit [~14h suspend duration] 2026-06-24 08:15:30 i915: GT0/GT1 GuC firmware 70.53.0 reloaded — OK 2026-06-24 08:15:30 PM: resume devices took 0.321 seconds 2026-06-24 08:15:31 [FAILURE — internal display does not come back] 2026-06-24 08:15:43 PHY A / pipe A errors (see log below) 2026-06-24 08:16:05 thunderbolt 1-1: device disconnected [manual dock unplug] 2026-06-24 08:16:09 i915: *ERROR* flip_done timed out 2026-06-24 08:16:09 i915: *ERROR* [CRTC:151:pipe A] commit wait timed out 2026-06-24 08:16:17 thunderbolt 1-1: new device found, vendor=0x108 device=0x2031 2026-06-24 08:16:17 thunderbolt 1-1: Lenovo ThinkPad Thunderbolt 4 Dock [dock reconnected] 2026-06-24 08:16:20 i915: *ERROR* [CRTC:151:pipe A] flip_done timed out 2026-06-24 08:16:30 i915: *ERROR* [CRTC:151:pipe A] commit wait timed out [external displays also fail to restore after dock reconnect] --- Kernel Log — Post-Resume Failure (2026-06-24 08:15:31–08:15:43) i915 0000:00:02.0: [drm] *ERROR* Timeout waiting for DDI BUF A to get active i915 0000:00:02.0: [drm] *ERROR* Timed out waiting for DP idle patterns i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] flip_done timed out i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in pixel_rate (expected 154260, found 39003) i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in dpll_hw_state i915 0000:00:02.0: [drm] *ERROR* expected: i915 0000:00:02.0: [drm] *ERROR* cx0pll_hw_state: lane_count: 2, ssc_enabled: no, use_c10: yes, tbt_mode: no i915 0000:00:02.0: [drm] *ERROR* c10pll_hw_state: fracen: yes, quot: 8192, rem: 0, den: 1, multiplier: 253, tx_clk_div: 2. i915 0000:00:02.0: [drm] *ERROR* c10pll_rawhw_state: i915 0000:00:02.0: [drm] *ERROR* tx: 0x10, cmn: 0x21 i915 0000:00:02.0: [drm] *ERROR* pll[0] = 0x34, pll[1] = 0x0, pll[2] = 0xda, pll[3] = 0x1 i915 0000:00:02.0: [drm] *ERROR* pll[4] = 0x0, pll[5] = 0x0, pll[6] = 0x0, pll[7] = 0x0 i915 0000:00:02.0: [drm] *ERROR* pll[8] = 0x0, pll[9] = 0x1, pll[10] = 0x0, pll[11] = 0x0 i915 0000:00:02.0: [drm] *ERROR* pll[12] = 0x20, pll[13] = 0x0, pll[14] = 0x0, pll[15] = 0x2 i915 0000:00:02.0: [drm] *ERROR* pll[16] = 0x85, pll[17] = 0x8f, pll[18] = 0xe6, pll[19] = 0x23 i915 0000:00:02.0: [drm] *ERROR* found: i915 0000:00:02.0: [drm] *ERROR* cx0pll_hw_state: lane_count: 2, ssc_enabled: no, use_c10: yes, tbt_mode: no i915 0000:00:02.0: [drm] *ERROR* c10pll_hw_state: fracen: no, multiplier: 16, tx_clk_div: 0. i915 0000:00:02.0: [drm] *ERROR* c10pll_rawhw_state: i915 0000:00:02.0: [drm] *ERROR* tx: 0x0, cmn: 0x0 i915 0000:00:02.0: [drm] *ERROR* pll[0..19] = 0x00 (all zero — hardware reset/power-down state) i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in hw.pipe_mode.crtc_clock (expected 154260, found 39003) i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in hw.adjusted_mode.crtc_clock (expected 154260, found 39003) i915 0000:00:02.0: [drm] *ERROR* [CRTC:151:pipe A] mismatch in port_clock (expected 243000, found 61440) i915 0000:00:02.0: [drm] pipe state doesn't match! WARNING: drivers/gpu/drm/i915/display/intel_modeset_verify.c:225 at verify_crtc_state+0x2b3/0x4e0 [i915] RIP: 0010:verify_crtc_state+0x2b9/0x4e0 [i915] Call Trace: intel_modeset_verify_crtc+0x44/0x70 [i915] intel_atomic_commit_tail+0xb9d/0xf00 [i915] intel_atomic_commit+0x2ab/0x2f0 [i915] drm_atomic_commit+0xb1/0xe0 drm_mode_atomic_ioctl+0x... --- Root Cause Analysis The C10 PHY (CX0 combo PHY) for DDI A (internal eDP) is in hardware reset state after resume — all 20 PLL registers read as 0x00. The driver fails to bring the PHY back to an operational state, resulting in the DPLL state mismatch: - Expected pixel clock: 154,260 kHz (fracen=yes, multiplier=253) — correct for 1920×1200 eDP - Found: 39,003 kHz (fracen=no, multiplier=16) — corresponds to PHY power-down / reset state The driver issued PHY A Read/Write 0c70 commands (likely the PHY lane control register) which timed out after 3 retries, indicating the PHY is unresponsive. The same error pattern also appeared ~5 hours before suspend (13:45), suggesting the PHY becomes unstable after extended idle periods — this is consistent with the known CX0 "PHY left idle for more than 1 hour" issue. --- Patches Already Applied (in kernel 7.1.1-300.fc44) The following related patches are confirmed present (backported via 7.0.10): - drm/i915/cx0: Clear response ready & error bit — Suraj Kandpal (patchwork series 159540, Jan 2026) - drm/i915/cx0: Rename intel_clear_response_ready flag — Suraj Kandpal - drm/i915/dp_tunnel: Don't update tunnel state during system resume — Imre Deak Despite these patches, the bug persists. --- Likely Missing Fix On 2026-06-18, Jakub Bystron reported an identical regression on kernel 7.1.0: "[REGRESSION] drm/i915: ThinkPad P1 Gen 7 fails to resume internal eDP panel after longer lid suspend" Jani Nikula (i915 display maintainer) responded on 2026-06-22, identifying the fix as a patch series by Imre Deak submitted to intel-gfx.org on 2026-06-12: Message-ID: 20260612172617.3427027-1-imre.deak From: Imre Deak <imre.deak> To: intel-gfx.org Date: Fri, 12 Jun 2026 URL: https://lore.kernel.org/r/20260612172617.3427027-1-imre.deak@intel.com This patch series is currently on drm-tip only. It was not included in Linux 7.1.0 (released 2026-06-15, too early) nor in Linux 7.1.1 (released 2026-06-19, ChangeLog contains no drm/i915 entries). It is not present in Fedora kernel 7.1.1-300.fc44 (built 2026-06-22). --- Request Please backport Imre Deak's patch series (20260612172617.3427027-1-imre.deak) to the Fedora kernel package, or include it in the next kernel update once it lands in a 7.1.y stable release. --- Bugzilla fields: ┌────────────┬──────────────────────────────────────────┐ │ Field │ Value │ ├────────────┼──────────────────────────────────────────┤ │ Product │ Fedora │ ├────────────┼──────────────────────────────────────────┤ │ Component │ kernel │ ├────────────┼──────────────────────────────────────────┤ │ Version │ 44 │ ├────────────┼──────────────────────────────────────────┤ │ Severity │ high │ ├────────────┼──────────────────────────────────────────┤ │ Hardware │ x86_64 │ ├────────────┼──────────────────────────────────────────┤ │ OS │ Linux │ ├────────────┼──────────────────────────────────────────┤ │ Whiteboard │ drm/i915 CX0 PHY eDP Arrow Lake-P s2idle │ └────────────┴──────────────────────────────────────────┘ Reproducible: Always