diff options
author | Imre Deak <imre.deak@intel.com> | 2024-10-09 22:43:55 +0300 |
---|---|---|
committer | Imre Deak <imre.deak@intel.com> | 2024-10-11 14:55:01 +0300 |
commit | fef0bcf72b9506019ecd5440061d7df7f50b02b0 (patch) | |
tree | 48bf034a2a399efc0bd298156433ea5524079a54 /drivers/gpu/drm/i915/intel_runtime_pm.h | |
parent | 388629a219ace83a09f8431a2e709c6c2efcf6ee (diff) | |
download | linux-fef0bcf72b9506019ecd5440061d7df7f50b02b0.tar.gz linux-fef0bcf72b9506019ecd5440061d7df7f50b02b0.tar.bz2 linux-fef0bcf72b9506019ecd5440061d7df7f50b02b0.zip |
drm/i915/dp: Assume panel power is off if runtime suspended
If the device is runtime suspended the eDP panel power is also off.
Ignore a short HPD on eDP if the device is suspended accordingly,
instead of checking the panel power state via the PPS registers for the
same purpose. The latter involves runtime resuming the device
unnecessarily, in a frequent scenario where the panel generates a
spurious short HPD after disabling the panel power and the device is
runtime suspended.
Reviewed-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241009194358.1321200-2-imre.deak@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_runtime_pm.h')
-rw-r--r-- | drivers/gpu/drm/i915/intel_runtime_pm.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.h b/drivers/gpu/drm/i915/intel_runtime_pm.h index 126f8320f86e..e22669d61e95 100644 --- a/drivers/gpu/drm/i915/intel_runtime_pm.h +++ b/drivers/gpu/drm/i915/intel_runtime_pm.h @@ -96,10 +96,16 @@ intel_rpm_wakelock_count(int wakeref_count) return wakeref_count >> INTEL_RPM_WAKELOCK_SHIFT; } +static inline bool +intel_runtime_pm_suspended(struct intel_runtime_pm *rpm) +{ + return pm_runtime_suspended(rpm->kdev); +} + static inline void assert_rpm_device_not_suspended(struct intel_runtime_pm *rpm) { - WARN_ONCE(pm_runtime_suspended(rpm->kdev), + WARN_ONCE(intel_runtime_pm_suspended(rpm), "Device suspended during HW access\n"); } |