Currently intel_psr_pause and intel_psr_resume do nothing in case of panel
replay. Change them to perform pause and return also in case of panel
replay.

Signed-off-by: Jouni Högander <[email protected]>
---
 drivers/gpu/drm/i915/display/intel_psr.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_psr.c 
b/drivers/gpu/drm/i915/display/intel_psr.c
index 9705a75e063a..3e287a9f0e09 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -1829,7 +1829,7 @@ void intel_psr_pause(struct intel_dp *intel_dp)
        struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
        struct intel_psr *psr = &intel_dp->psr;
 
-       if (!CAN_PSR(intel_dp))
+       if (!CAN_PSR(intel_dp) && !CAN_PANEL_REPLAY(intel_dp))
                return;
 
        mutex_lock(&psr->lock);
@@ -1862,7 +1862,7 @@ void intel_psr_resume(struct intel_dp *intel_dp)
 {
        struct intel_psr *psr = &intel_dp->psr;
 
-       if (!CAN_PSR(intel_dp))
+       if (!CAN_PSR(intel_dp) && !CAN_PANEL_REPLAY(intel_dp))
                return;
 
        mutex_lock(&psr->lock);
-- 
2.34.1

Reply via email to