Message ID | 20191231122708.4025916-1-chris@chris-wilson.co.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/gt: Restore coarse power gating | expand |
On Tue, Dec 31, 2019 at 12:27:08PM +0000, Chris Wilson wrote: > The coarse power gating was disabled as part of commit 2248a28384fe > ("drm/i915/gen8+: Add RC6 CTX corruption WA") as a prelude to recover > from the context corruption; the power gating itself has no direct > impact on the RC6 context corruption. However, that recovery scheme was > never implemented due to difficult corner cases, and so we no longer need > to keep the power gating disabled. > > Fixes: 2248a28384fe ("drm/i915/gen8+: Add RC6 CTX corruption WA") > Closes: https://gitlab.freedesktop.org/drm/intel/issues/846 > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Imre Deak <imre.deak@intel.com> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > Cc: Eero Tamminen <eero.t.tamminen@intel.com> > Cc: Jon Bloomfield <jon.bloomfield@intel.com> Yes, the original reason to disable CPG doesn't apply imo any more: Reviewed-by: Imre Deak <imre.deak@intel.com> > --- > drivers/gpu/drm/i915/i915_drv.h | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h > index b7f122dccdca..85b565e69ad4 100644 > --- a/drivers/gpu/drm/i915/i915_drv.h > +++ b/drivers/gpu/drm/i915/i915_drv.h > @@ -1657,8 +1657,11 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915, > (IS_BROADWELL(dev_priv) || IS_GEN(dev_priv, 9)) > > /* WaRsDisableCoarsePowerGating:skl,cnl */ > -#define NEEDS_WaRsDisableCoarsePowerGating(dev_priv) \ > - IS_GEN_RANGE(dev_priv, 9, 10) > +#define NEEDS_WaRsDisableCoarsePowerGating(dev_priv) \ > + (IS_CANNONLAKE(dev_priv) || \ > + IS_SKL_GT3(dev_priv) || \ > + IS_SKL_GT4(dev_priv)) > + > > #define HAS_GMBUS_IRQ(dev_priv) (INTEL_GEN(dev_priv) >= 4) > #define HAS_GMBUS_BURST_READ(dev_priv) (INTEL_GEN(dev_priv) >= 10 || \ > -- > 2.25.0.rc0 >
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index b7f122dccdca..85b565e69ad4 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h @@ -1657,8 +1657,11 @@ IS_SUBPLATFORM(const struct drm_i915_private *i915, (IS_BROADWELL(dev_priv) || IS_GEN(dev_priv, 9)) /* WaRsDisableCoarsePowerGating:skl,cnl */ -#define NEEDS_WaRsDisableCoarsePowerGating(dev_priv) \ - IS_GEN_RANGE(dev_priv, 9, 10) +#define NEEDS_WaRsDisableCoarsePowerGating(dev_priv) \ + (IS_CANNONLAKE(dev_priv) || \ + IS_SKL_GT3(dev_priv) || \ + IS_SKL_GT4(dev_priv)) + #define HAS_GMBUS_IRQ(dev_priv) (INTEL_GEN(dev_priv) >= 4) #define HAS_GMBUS_BURST_READ(dev_priv) (INTEL_GEN(dev_priv) >= 10 || \
The coarse power gating was disabled as part of commit 2248a28384fe ("drm/i915/gen8+: Add RC6 CTX corruption WA") as a prelude to recover from the context corruption; the power gating itself has no direct impact on the RC6 context corruption. However, that recovery scheme was never implemented due to difficult corner cases, and so we no longer need to keep the power gating disabled. Fixes: 2248a28384fe ("drm/i915/gen8+: Add RC6 CTX corruption WA") Closes: https://gitlab.freedesktop.org/drm/intel/issues/846 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Imre Deak <imre.deak@intel.com> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Cc: Eero Tamminen <eero.t.tamminen@intel.com> Cc: Jon Bloomfield <jon.bloomfield@intel.com> --- drivers/gpu/drm/i915/i915_drv.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)