aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTvrtko Ursulin <tvrtko.ursulin@intel.com>2019-04-18 06:06:34 -0400
committerJoonas Lahtinen <joonas.lahtinen@linux.intel.com>2019-04-30 03:16:18 -0400
commit9628e15ca9d5f7595ba886173e98a139d0a56cd1 (patch)
tree10198b36a3e5dd91f2c828f8784ceb95b6ca0d3e
parent879a4e70f96a26a9368a3caed2f552aa67105852 (diff)
drm/i915/icl: Whitelist GEN9_SLICE_COMMON_ECO_CHICKEN1
WaEnableStateCacheRedirectToCS context workaround configures the L3 cache to benefit 3d workloads but media has different requirements. Remove the workaround and whitelist the register to allow any userspace configure the behaviour to their liking. v2: * Remove the workaround apart from adding the whitelist. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: kevin.ma@intel.com Cc: xiaogang.li@intel.com Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by: Anuj Phogat <anuj.phogat@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190418100634.984-1-tvrtko.ursulin@linux.intel.com Fixes: f63c7b4880aa ("drm/i915/icl: WaEnableStateCacheRedirectToCS") Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> [tursulin: Anuj reported no GPU hangs or performance regressions with old Mesa on patched kernel.] (cherry picked from commit 0fc2273b9ab7f07cdef448e99525e481535e1ab0) Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
-rw-r--r--drivers/gpu/drm/i915/intel_workarounds.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/intel_workarounds.c b/drivers/gpu/drm/i915/intel_workarounds.c
index ccaf63679435..9682dd575152 100644
--- a/drivers/gpu/drm/i915/intel_workarounds.c
+++ b/drivers/gpu/drm/i915/intel_workarounds.c
@@ -541,10 +541,6 @@ static void icl_ctx_workarounds_init(struct intel_engine_cs *engine)
541 WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2, 541 WA_SET_BIT_MASKED(GEN7_ROW_CHICKEN2,
542 GEN11_TDL_CLOCK_GATING_FIX_DISABLE); 542 GEN11_TDL_CLOCK_GATING_FIX_DISABLE);
543 543
544 /* WaEnableStateCacheRedirectToCS:icl */
545 WA_SET_BIT_MASKED(GEN9_SLICE_COMMON_ECO_CHICKEN1,
546 GEN11_STATE_CACHE_REDIRECT_TO_CS);
547
548 /* Wa_2006665173:icl (pre-prod) */ 544 /* Wa_2006665173:icl (pre-prod) */
549 if (IS_ICL_REVID(i915, ICL_REVID_A0, ICL_REVID_A0)) 545 if (IS_ICL_REVID(i915, ICL_REVID_A0, ICL_REVID_A0))
550 WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3, 546 WA_SET_BIT_MASKED(GEN11_COMMON_SLICE_CHICKEN3,
@@ -1050,6 +1046,9 @@ static void icl_whitelist_build(struct i915_wa_list *w)
1050 1046
1051 /* WaAllowUMDToModifySamplerMode:icl */ 1047 /* WaAllowUMDToModifySamplerMode:icl */
1052 whitelist_reg(w, GEN10_SAMPLER_MODE); 1048 whitelist_reg(w, GEN10_SAMPLER_MODE);
1049
1050 /* WaEnableStateCacheRedirectToCS:icl */
1051 whitelist_reg(w, GEN9_SLICE_COMMON_ECO_CHICKEN1);
1053} 1052}
1054 1053
1055void intel_engine_init_whitelist(struct intel_engine_cs *engine) 1054void intel_engine_init_whitelist(struct intel_engine_cs *engine)