]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/i915/display: Remove power state verification before HW readout
authorImre Deak <imre.deak@intel.com>
Wed, 3 Sep 2025 12:21:52 +0000 (15:21 +0300)
committerImre Deak <imre.deak@intel.com>
Fri, 5 Sep 2025 11:20:55 +0000 (14:20 +0300)
During system resume the display power state verification will print the

"power well x state mismatch (refcount 0/enabled 1)"

error message from the early resume sequence for a power well left
enabled by BIOS. This power well was probably left enabled by BIOS
inadvertently, since BIOS versions on current platforms do not leave any
display output enabled while resuming from an Sx power state, hence the
enabled display power well is unused. In theory however it is possible
that BIOS leaves a display output enabled, in that case the enabled
power well shouldn't be reported as an error.

According to the above, remove the display power state verification from
the early resume phase to avoid incorrectly reporting an enabled power
well without a power reference as an error.

Note: The refcount for any enabled and used power well (i.e. used for an
enabled display output) will be acquired following the early resume
sequence, after the HW state for display outputs (encoder/crtc etc.) is
read out. Any power well enabled but not used (hence not holding a
reference) will be disabled after the HW state readout. The display
power state will be verified afterwards in intel_power_domains_enable().

Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/6012
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://lore.kernel.org/r/20250903122152.2526050-1-imre.deak@intel.com
drivers/gpu/drm/i915/display/intel_display_power.c

index 7340d5a7167300417c6e0282d6ca387b3bddcc80..7f9a2d743bac8a59b04b2e4d9b484a31142cd368 100644 (file)
@@ -2165,8 +2165,6 @@ void intel_power_domains_resume(struct intel_display *display)
                power_domains->init_wakeref =
                        intel_display_power_get(display, POWER_DOMAIN_INIT);
        }
-
-       intel_power_domains_verify_state(display);
 }
 
 #if IS_ENABLED(CONFIG_DRM_I915_DEBUG_RUNTIME_PM)