On Fri, 2022-09-16 at 14:08 +0300, 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; > + } Already handled. __psr_wait_for_idle_locked if (!intel_dp->psr.enabled) return false; > > /* > * We have to make sure PSR is ready for re-enable