Same failure signature on Meteor Lake-P (the existing reports are mostly Arrow
Lake).
Adding a clean A/B between two Ubuntu HWE kernels on identical hardware and
cmdline.
Hardware
- Lenovo ThinkPad P1 Gen 7, machine type 21KV001RMX
- BIOS N48ET34W (1.21), 2026-05-11
- iGPU: 00:02.0 Intel Meteor Lake-P [Intel Arc Graphics] [8086:7d55] rev 08,
driver i915
- dGPU: 01:00.0 NVIDIA AD107GLM [RTX 1000 Ada Generation Laptop GPU]
[10de:28b9], nvidia 580.173.02 (DKMS)
- Panel: eDP-1, 2560x1600, port_clock 810000 (HBR3, lane_count: 4, use_c10: yes)
- Firmware: DMC i915/mtl_dmc.bin v2.21, GuC 70.36.0 (kernel recommends
70.53.0), HuC 8.5.4
- ACPI advertises S0 S4 S5 — s2idle only, no S3
- Ubuntu 24.04.4 LTS, X11 session (GNOME), iGPU runtime PM at default
control=auto
Kernels
kernel package result
7.0.0-28-generic (base 7.0.12) 7.0.0-28.28~24.04.1 BAD — 41–54 s black
screen on every resume
6.17.0-40-generic 6.17.0-40.40~24.04.1 GOOD — resume ~2.5 s, zero i915
errors
Same cmdline, same dock, same session type. Only the kernel changed.
Symptom
Every resume from s2idle: backlight on, screen black, machine unusable for
~40–55 s, then
the desktop appears normally. No hard failure — purely a stall.
Failure sequence (7.0.0-28)
Root cause is visible at the very top: the C10 PHY message bus is dead, so the
PLL is never
programmed, and every subsequent atomic commit waits out its full 10 s timeout.
i915 0000:00:02.0: [drm] *ERROR* Failed to bring PHY A to idle.
i915 0000:00:02.0: [drm] *ERROR* PHY A Read 0c70 failed after 3 retries.
i915 0000:00:02.0: [drm] *ERROR* PHY A Write 0c70 failed after 3 retries.
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:150:pipe A] flip_done timed out
i915 0000:00:02.0: [drm] *ERROR* [CRTC:150:pipe A] mismatch in pixel_rate
(expected 282699, found 21444)
i915 0000:00:02.0: [drm] *ERROR* [CRTC:150: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: 4,
ssc_enabled: no, use_c10: yes, tbt_mode: no
i915 0000:00:02.0: [drm] *ERROR* c10pll_hw_state: clock: 810000, fracen:
yes,
i915 0000:00:02.0: [drm] *ERROR* found:
i915 0000:00:02.0: [drm] *ERROR* c10pll_hw_state: clock: 61440, fracen: no,
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] = 0x0, pll[1] = 0x0, pll[2] = 0x0,
pll[3] = 0x0
... all 20 pll[] registers read back 0x0 ...
i915 0000:00:02.0: [drm] *ERROR* [CRTC:150:pipe A] mismatch in port_clock
(expected 810000, found 61440)
i915 0000:00:02.0: [drm] *ERROR* [CRTC:150:pipe A] mismatch in
min_voltage_level (expected 1, found 0)
------------[ cut here ]------------
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+0x51b/0x6c0 [i915], CPU#17: Xorg/6093
Same 61440 vs 810000 parked-PLL value as the Arrow Lake reports in this
bug.
Then four consecutive 10 s timeouts, which is where the wall-clock goes:
09:04:08 [CRTC:150:pipe A] flip_done timed out
09:04:18 flip_done timed out / [CRTC:150:pipe A] commit wait timed out
09:04:29 [CRTC:150:pipe A] flip_done timed out
09:04:29 [CRTC:150:pipe A] DSB 1 timed out waiting for idle (current
head=0x12fc000, head=0x0, tail=0x1080)
09:04:39 flip_done timed out / [CRTC:150:pipe A] commit wait timed out
09:04:49 flip_done timed out / [CONNECTOR:507:eDP-1] commit wait timed out
09:04:50 [drm] PHY A failed to change powerdown state
Caller is the compositor's DPMS-on after resume:
Call Trace:
intel_modeset_verify_crtc+0x70/0xb0 [i915]
intel_atomic_commit_tail+0x8bb/0xc80 [i915]
intel_atomic_commit+0x2c0/0x310 [i915]
drm_atomic_commit+0xaf/0xf0
drm_atomic_connector_commit_dpms+0xfc/0x110
drm_mode_obj_set_property_ioctl+0x1c3/0x450
drm_connector_property_set_ioctl+0x3a/0x60
drm_ioctl_kernel+0xb7/0x110
An earlier boot on the same kernel produced the identical chain from
intel_dbuf_mbus_post_ddb_update → intel_crtc_wait_for_next_vblank →
drm_crtc_wait_one_vblank (vblank wait timed out on crtc 0), so the entry point
varies but the parked-PLL cause is the same.
Good kernel (6.17.0-40), same machine, same cmdline
PM: suspend entry (s2idle)
Restarting tasks: Starting
Restarting tasks: Done
PM: suspend exit
- suspend entry → suspend exit = 19 s wall, of which
/sys/power/suspend_stats/last_hw_sleep
= 16 551 862 µs actually asleep ⇒ kernel-side resume ≈ 2.5 s
- Zero i915 errors in the whole boot. No PHY A, no DDI BUF, no flip_done.
- Reproduced twice, once with the nvidia modules absent and once with them
loaded — identical.
Ruled out on this machine
- i915.enable_psr=0 i915.enable_panel_replay=0 — verified applied via
/proc/cmdline,
no effect, identical trace. (Consistent with other reports here.)
- nvidia: 6.17 resumes fast both with nvidia 580.173.02 unloaded and loaded. No
nvidia
frame appears anywhere in the failing stack.
- PM core / s2idle itself: /sys/power/suspend_stats shows success incrementing
and all
failed_* counters at 0; firmware sleep counters populate normally. The stall
is entirely
in the display commit path after PM: suspend exit.
Notes
- Does not require a multi-hour dwell here: two failures on the same boot were
29 minutes apart,
so the dwell between them was under half an hour. Every resume on 7.0.0-28
failed.
- Ubuntu currently offers nothing newer on this line: apt policy
linux-image-generic-hwe-24.04
gives candidate = installed = 7.0.0-28.28~24.04.1, so 24.04 HWE users have no
upgrade path
out of this. Working around it by pinning 6.17.0-40-generic.
Attaching the full scrubbed kernel log for both the bad 7.0.0-28 boot
and the good 6.17.0-40 boot.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2150605
Title:
`i915 Arrow Lake-S: PHY A / C10 DPLL state mismatch on resume from
long s2idle dwell — slow wake (5-10s) with retry storm`
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2150605/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs