[Intel-gfx] [PATCH] drm/i915/fbc: Disable fbc with VT-d also with kbl and cfl

Rodrigo Vivi rodrigo.vivi at intel.com
Wed Sep 26 13:40:20 UTC 2018


On Wed, Sep 26, 2018 at 03:56:39PM +0300, Mika Kuoppala wrote:
> Ville Syrjälä <ville.syrjala at linux.intel.com> writes:
> 
> > On Tue, Sep 25, 2018 at 04:38:03PM +0300, Mika Kuoppala wrote:
> >> Using fbc with VT-d flickers also on kbl and cfl.
> >> 
> >> Cc: Paulo Zanoni <paulo.r.zanoni at intel.com>
> >> Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> >> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> >> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> >> Cc: <stable at vger.kernel.org> # v4.9+
> >> Signed-off-by: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> >> ---
> >>  drivers/gpu/drm/i915/intel_fbc.c | 5 +++--
> >>  1 file changed, 3 insertions(+), 2 deletions(-)
> >> 
> >> diff --git a/drivers/gpu/drm/i915/intel_fbc.c b/drivers/gpu/drm/i915/intel_fbc.c
> >> index 74d425c700ef..a149f08c1b79 100644
> >> --- a/drivers/gpu/drm/i915/intel_fbc.c
> >> +++ b/drivers/gpu/drm/i915/intel_fbc.c
> >> @@ -1275,9 +1275,10 @@ static int intel_sanitize_fbc_option(struct drm_i915_private *dev_priv)
> >>  
> >>  static bool need_fbc_vtd_wa(struct drm_i915_private *dev_priv)
> >>  {
> >> -	/* WaFbcTurnOffFbcWhenHyperVisorIsUsed:skl,bxt */
> >> +	/* WaFbcTurnOffFbcWhenHyperVisorIsUsed:skl,bxt,kbl,cfl */
> >
> > The hsds seem to be saying that this was fixed in kbl/cnl. I guess the
> > flicker could be due to a different vt-d vs. fbc issue.
> >
> 
> I was trusting the wa database on this one.

I believe it would be worth to trust the wa_database,
but this database can be tricky too...

Like on this case it is listed for KBL, but A0 only
and not listed for CFL.

> 
> > Is the chicken bit in CHICKEN_PIPESL in the correct position?
> 
> Yes it is zero.
> 
> >
> > Hmm. Bspec doesn't list chicken bit for glk. That would seem to suggest
> > that we need this w/a for glk as well.
> 
> Agreed. The questio is that should we follow bspec and logic or
> leave it until we get a report if it is a problem?
> 
> cfl is close enough|similar in this respect that we mimic
> kbl with it?

yes, we can safely consider it is similar to latest steppings of KBL.

> 
> Thanks,
> -Mika
> 
> >
> >>  	if (intel_vtd_active() &&
> >> -	    (IS_SKYLAKE(dev_priv) || IS_BROXTON(dev_priv))) {
> >> +	    (IS_SKYLAKE(dev_priv) || IS_BROXTON(dev_priv) ||
> >> +	     IS_KABYLAKE(dev_priv) || IS_COFFEELAKE(dev_priv))) {
> >>  		DRM_INFO("Disabling framebuffer compression (FBC) to prevent screen flicker with VT-d enabled\n");
> >>  		return true;
> >>  	}
> >> -- 
> >> 2.17.1
> >
> > -- 
> > Ville Syrjälä
> > Intel


More information about the Intel-gfx mailing list