[Intel-gfx] [PATCH] drm/i915/bdw: Implement Wa4x4STCOptimizationDisable:bdw
Ben Widawsky
ben at bwidawsk.net
Wed Mar 26 20:10:41 CET 2014
On Wed, Mar 26, 2014 at 12:08:44PM -0700, Ben Widawsky wrote:
> On Wed, Mar 26, 2014 at 06:41:51PM +0000, Damien Lespiau wrote:
> > Not implementing this W/A can lead to hangs.
> >
> > Cc: Ben Widawsky <benjamin.widawsky at intel.com>
> > Cc: Rafael Barbalho <rafael.barbalho at intel.com>
> > Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > Signed-off-by: Damien Lespiau <damien.lespiau at intel.com>
>
> From reading the HSD, it's not a workaround. It was a spec bug. I
> presume the workaround name came from the workaround database? If it did
> not, I'd just drop any mention of "workaround." If it's in the
> workaround database, maybe just leave it so we can check later.
>
> Either way:
> Reviewed-by: Ben Widawsky <ben at bwidawsk.net>
Oh, and I think CC: stable
>
> > ---
> > drivers/gpu/drm/i915/i915_reg.h | 3 ++-
> > drivers/gpu/drm/i915/intel_pm.c | 4 ++++
> > 2 files changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> > index 0ebc20d..927a7c1 100644
> > --- a/drivers/gpu/drm/i915/i915_reg.h
> > +++ b/drivers/gpu/drm/i915/i915_reg.h
> > @@ -1060,7 +1060,8 @@ enum punit_power_well {
> > #define CACHE_MODE_0_GEN7 0x7000 /* IVB+ */
> > #define HIZ_RAW_STALL_OPT_DISABLE (1<<2)
> > #define CACHE_MODE_1 0x7004 /* IVB+ */
> > -#define PIXEL_SUBSPAN_COLLECT_OPT_DISABLE (1<<6)
> > +#define PIXEL_SUBSPAN_COLLECT_OPT_DISABLE (1<<6)
> > +#define GEN8_4x4_STC_OPTIMIZATION_DISABLE (1<<6)
> >
> > #define GEN6_BLITTER_ECOSKPD 0x221d0
> > #define GEN6_BLITTER_LOCK_SHIFT 16
> > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> > index c1e2d75..b66a43b 100644
> > --- a/drivers/gpu/drm/i915/intel_pm.c
> > +++ b/drivers/gpu/drm/i915/intel_pm.c
> > @@ -4882,6 +4882,10 @@ static void gen8_init_clock_gating(struct drm_device *dev)
> > /* WaDisableSDEUnitClockGating:bdw */
> > I915_WRITE(GEN8_UCGCTL6, I915_READ(GEN8_UCGCTL6) |
> > GEN8_SDEUNIT_CLOCK_GATE_DISABLE);
> > +
> > + /* Wa4x4STCOptimizationDisable:bdw */
> > + I915_WRITE(CACHE_MODE_1,
> > + _MASKED_BIT_ENABLE(GEN8_4x4_STC_OPTIMIZATION_DISABLE));
> > }
> >
> > static void haswell_init_clock_gating(struct drm_device *dev)
> > --
> > 1.8.3.1
> >
>
> --
> Ben Widawsky, Intel Open Source Technology Center
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ben Widawsky, Intel Open Source Technology Center
More information about the Intel-gfx
mailing list