Re: [PATCH 2/4] drm/i915: Don't do WaFbcTurnOffFbcWatermark for glk

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jul 09, 2020 at 12:19:07AM +0000, Souza, Jose wrote:
> On Wed, 2020-07-08 at 16:12 +0300, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> > 
> > GLK supposedly does not need WaFbcTurnOffFbcWatermark,
> > so let's not apply it.
> 
> WA 0562 from BSpec 21664 says it applies to all GEN9 but it is probably referring to all display GEN9.

Yeah, and it doesn't show the GLK tag, nor does it show up if you
filter for GLK.

> 
> Reviewed-by: José Roberto de Souza <jose.souza@xxxxxxxxx>

Thanks. Series pushed.

> 
> > 
> > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> > ---
> >  drivers/gpu/drm/i915/intel_pm.c | 18 ++++++++++++++++--
> >  1 file changed, 16 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> > index 63d1a4882727..8760e1ba1eee 100644
> > --- a/drivers/gpu/drm/i915/intel_pm.c
> > +++ b/drivers/gpu/drm/i915/intel_pm.c
> > @@ -94,10 +94,8 @@ static void gen9_init_clock_gating(struct drm_i915_private *dev_priv)
> >  	I915_WRITE(GEN8_CHICKEN_DCPR_1,
> >  		   I915_READ(GEN8_CHICKEN_DCPR_1) | MASK_WAKEMEM);
> >  
> > -	/* WaFbcTurnOffFbcWatermark:skl,bxt,kbl,cfl */
> >  	/* WaFbcWakeMemOn:skl,bxt,kbl,glk,cfl */
> >  	I915_WRITE(DISP_ARB_CTL, I915_READ(DISP_ARB_CTL) |
> > -		   DISP_FBC_WM_DIS |
> >  		   DISP_FBC_MEMORY_WAKE);
> >  
> >  	/* WaFbcHighMemBwCorruptionAvoidance:skl,bxt,kbl,cfl */
> > @@ -140,6 +138,10 @@ static void bxt_init_clock_gating(struct drm_i915_private *dev_priv)
> >  	 * application, using batch buffers or any other means.
> >  	 */
> >  	I915_WRITE(RM_TIMEOUT, MMIO_TIMEOUT_US(950));
> > +
> > +	/* WaFbcTurnOffFbcWatermark:bxt */
> > +	I915_WRITE(DISP_ARB_CTL, I915_READ(DISP_ARB_CTL) |
> > +		   DISP_FBC_WM_DIS);
> >  }
> >  
> >  static void glk_init_clock_gating(struct drm_i915_private *dev_priv)
> > @@ -7189,6 +7191,10 @@ static void cfl_init_clock_gating(struct drm_i915_private *dev_priv)
> >  	cnp_init_clock_gating(dev_priv);
> >  	gen9_init_clock_gating(dev_priv);
> >  
> > +	/* WaFbcTurnOffFbcWatermark:cfl */
> > +	I915_WRITE(DISP_ARB_CTL, I915_READ(DISP_ARB_CTL) |
> > +		   DISP_FBC_WM_DIS);
> > +
> >  	/* WaFbcNukeOnHostModify:cfl */
> >  	I915_WRITE(ILK_DPFC_CHICKEN, I915_READ(ILK_DPFC_CHICKEN) |
> >  		   ILK_DPFC_NUKE_ON_ANY_MODIFICATION);
> > @@ -7208,6 +7214,10 @@ static void kbl_init_clock_gating(struct drm_i915_private *dev_priv)
> >  		I915_WRITE(GEN6_UCGCTL1, I915_READ(GEN6_UCGCTL1) |
> >  			   GEN6_GAMUNIT_CLOCK_GATE_DISABLE);
> >  
> > +	/* WaFbcTurnOffFbcWatermark:kbl */
> > +	I915_WRITE(DISP_ARB_CTL, I915_READ(DISP_ARB_CTL) |
> > +		   DISP_FBC_WM_DIS);
> > +
> >  	/* WaFbcNukeOnHostModify:kbl */
> >  	I915_WRITE(ILK_DPFC_CHICKEN, I915_READ(ILK_DPFC_CHICKEN) |
> >  		   ILK_DPFC_NUKE_ON_ANY_MODIFICATION);
> > @@ -7221,6 +7231,10 @@ static void skl_init_clock_gating(struct drm_i915_private *dev_priv)
> >  	I915_WRITE(FBC_LLC_READ_CTRL, I915_READ(FBC_LLC_READ_CTRL) |
> >  		   FBC_LLC_FULLY_OPEN);
> >  
> > +	/* WaFbcTurnOffFbcWatermark:skl */
> > +	I915_WRITE(DISP_ARB_CTL, I915_READ(DISP_ARB_CTL) |
> > +		   DISP_FBC_WM_DIS);
> > +
> >  	/* WaFbcNukeOnHostModify:skl */
> >  	I915_WRITE(ILK_DPFC_CHICKEN, I915_READ(ILK_DPFC_CHICKEN) |
> >  		   ILK_DPFC_NUKE_ON_ANY_MODIFICATION);

-- 
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux