Looks good to me.
Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@xxxxxxxxx>
On 9/16/22 2:08 PM, Jouni Högander wrote:
If there is a PSR aux error sink is marked as not reliable
and PSR is permantently disabled.
Current code is activating PSR again even there was PSR aux error.
Fix this by skipping intel_psr_activate when PSR aux error is
detected.
Cc: Mika Kahola <mika.kahola@xxxxxxxxx>
Cc: José Roberto de Souza <jose.souza@xxxxxxxxx>
Reported-by: Charlton Lin <charlton.lin@xxxxxxxxx>
Signed-off-by: Jouni Högander <jouni.hogander@xxxxxxxxx>
---
drivers/gpu/drm/i915/display/intel_psr.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/display/intel_psr.c b/drivers/gpu/drm/i915/display/intel_psr.c
index 9def8d9fade6..42390203ad19 100644
--- a/drivers/gpu/drm/i915/display/intel_psr.c
+++ b/drivers/gpu/drm/i915/display/intel_psr.c
@@ -2153,8 +2153,10 @@ static void intel_psr_work(struct work_struct *work)
if (!intel_dp->psr.enabled)
goto unlock;
- if (READ_ONCE(intel_dp->psr.irq_aux_error))
+ if (READ_ONCE(intel_dp->psr.irq_aux_error)) {
intel_psr_handle_irq(intel_dp);
+ goto unlock;
+ }
/*
* We have to make sure PSR is ready for re-enable