On Fri, Mar 01, 2019 at 05:34:53PM -0800, José Roberto de Souza wrote: > When PSR2 is active aka after the number of frames programmed in > PSR2_CTL 'Frames Before SU Entry' hardware stops to generate CRC > interruptions causing IGT tests to fail due timeout. > > This same behavior don't happen with PSR1, as soon as pipe CRC is > enabled it blocks PSR1 activation so CRC calculation continues to > happens normaly. > > This patch also set mode_changed as true when PSR is available to > force atomic check functions to compute new PSR state, otherwise PSR2 > would not be disabled. Oh, this part was confusing... I was about to ask has_psr2 below, and then I read the commit message again to understand it. it probably deserved a separated patch... or at least a comment on the code... but, up to you, makes sense now Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > > v4: Only setting mode_changed if has_psr is set(Dhinakaran) > > v3: Reusing intel_crtc_crc_prepare() and crc_enabled, only setting > mode_changed if it can do PSR. > > v2: Changed commit description to describe that PSR2 inhibit CRC > calculations. > > Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@xxxxxxxxx> > Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > Signed-off-by: José Roberto de Souza <jose.souza@xxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_pipe_crc.c | 1 + > drivers/gpu/drm/i915/intel_psr.c | 3 +++ > 2 files changed, 4 insertions(+) > > diff --git a/drivers/gpu/drm/i915/intel_pipe_crc.c b/drivers/gpu/drm/i915/intel_pipe_crc.c > index af64597c5c6e..c17f02b88453 100644 > --- a/drivers/gpu/drm/i915/intel_pipe_crc.c > +++ b/drivers/gpu/drm/i915/intel_pipe_crc.c > @@ -307,6 +307,7 @@ intel_crtc_crc_setup_workarounds(struct intel_crtc *crtc, bool enable) > goto put_state; > } > > + pipe_config->base.mode_changed = pipe_config->has_psr; > pipe_config->crc_enabled = enable; > > if (IS_HASWELL(dev_priv) && crtc->pipe == PIPE_A) { > diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c > index 2d9f64c362e2..73453d89a841 100644 > --- a/drivers/gpu/drm/i915/intel_psr.c > +++ b/drivers/gpu/drm/i915/intel_psr.c > @@ -572,6 +572,9 @@ static bool intel_psr2_config_valid(struct intel_dp *intel_dp, > return false; > } > > + if (crtc_state->crc_enabled) > + return false; > + > return true; > } > > -- > 2.21.0 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx