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 <[email protected]> Cc: José Roberto de Souza <[email protected]> Reported-by: Charlton Lin <[email protected]> Signed-off-by: Jouni Högander <[email protected]> --- 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 -- 2.34.1
