Re: [PATCH 2/2] drm/i915: PSR: Mask LPSP hw tracking back again.

Daniel Vetter
2015-11-24T12:29:38Z

On Mon, Nov 23, 2015 at 01:52:37PM -0800, Rodrigo Vivi wrote:
> Hi Daniel
>
> Would you please consider merging patches 2,3 and 4 from this series
> that are ready to get merged?
> They don't depend on patch 1 that is under review yet.

Done.
-Daniel

>
> Thanks,
>
> On Wed, Nov 18, 2015 at 1:49 PM, Rodrigo Vivi <rodrigo.vivi@intel.com> wrote:
> > When we introduced PSR we let LPSP masked allowing us to get PSR
> > independently from the audio runtime PM. However in one of the
> > attempts to get PSR enabled by default one user reported one specific
> > case where he would miss screen updates if scrolling the firefox in a
> > Gnome environment when i915 runtime pm was enabled. So for
> > this specific case that (I could never create an i-g-t test case)
> > we decided to remove the LPSP mask and let HW tracking taking care of
> > this case. The mask got removed later by my
> > commit 09108b90f04 ("drm/i915: PSR: Remove Low Power HW tracking mask.")
> >
> > So we started depending on audio driver again, what is bad.
> >
> > With previous commit
> > "drm/i915: PSR: Let's rely more on frontbuffer tracking."
> > we transfered the PSR exit responsability totally to SW frontbuffer
> > tracking. So now can safelly shut off a bit the HW tracking, or
> > at least this case that makes us to depend on other drivers.
> >
> > v2: Update commit message since this patch by itself doesn't solve
> > the bugzilla entries.
> >
> > v3: Another attempt to improve commit message.
> >
> > Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> > Tested-by: Brian Norris <briannorris@chromium.org>
> > Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> > ---
> > drivers/gpu/drm/i915/intel_psr.c | 9 +++++++--
> > 1 file changed, 7 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_psr.c b/drivers/gpu/drm/i915/intel_psr.c
> > index b0e343c..b1b88d1 100644
> > --- a/drivers/gpu/drm/i915/intel_psr.c
> > +++ b/drivers/gpu/drm/i915/intel_psr.c
> > @@ -400,9 +400,14 @@ void intel_psr_enable(struct intel_dp *intel_dp)
> > skl_psr_setup_su_vsc(intel_dp);
> > }
> >
> > - /* Avoid continuous PSR exit by masking memup and hpd */
> > + /*
> > + * Per Spec: Avoid continuous PSR exit by masking MEMUP and HPD.
> > + * Also mask LPSP to avoid dependency on other drivers that
> > + * might block runtime_pm besides preventing other hw tracking
> > + * issues now we can rely on frontbuffer tracking.
> > + */
> > I915_WRITE(EDP_PSR_DEBUG_CTL(dev), EDP_PSR_DEBUG_MASK_MEMUP |
> > - EDP_PSR_DEBUG_MASK_HPD);
> > + EDP_PSR_DEBUG_MASK_HPD | EDP_PSR_DEBUG_MASK_LPSP);
> >
> > /* Enable PSR on the panel */
> > hsw_psr_enable_sink(intel_dp);
> > --
> > 2.4.3
> >
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
>
>
> --
> Rodrigo Vivi
> Blog: http://blog.vivi.eng.br

--
Daniel Vetter
Software Engineer, Intel Corporation