Commit 7b3d4063 authored by John Harrison's avatar John Harrison Committed by Tvrtko Ursulin

drm/i915: Add whitelist workarounds for ICL

Updated whitelist table for ICL.

v2: Reduce changes to just those required for media driver until
the selftest can be updated to support the new features of the
other entries.
Signed-off-by: default avatarJohn Harrison <John.C.Harrison@Intel.com>
Signed-off-by: default avatarRobert M. Fosha <robert.m.fosha@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Signed-off-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190618010108.27499-4-John.C.Harrison@Intel.com
parent ebd2de47
...@@ -1113,9 +1113,8 @@ static void icl_whitelist_build(struct intel_engine_cs *engine) ...@@ -1113,9 +1113,8 @@ static void icl_whitelist_build(struct intel_engine_cs *engine)
{ {
struct i915_wa_list *w = &engine->whitelist; struct i915_wa_list *w = &engine->whitelist;
if (engine->class != RENDER_CLASS) switch (engine->class) {
return; case RENDER_CLASS:
/* WaAllowUMDToModifyHalfSliceChicken7:icl */ /* WaAllowUMDToModifyHalfSliceChicken7:icl */
whitelist_reg(w, GEN9_HALF_SLICE_CHICKEN7); whitelist_reg(w, GEN9_HALF_SLICE_CHICKEN7);
...@@ -1124,6 +1123,23 @@ static void icl_whitelist_build(struct intel_engine_cs *engine) ...@@ -1124,6 +1123,23 @@ static void icl_whitelist_build(struct intel_engine_cs *engine)
/* WaEnableStateCacheRedirectToCS:icl */ /* WaEnableStateCacheRedirectToCS:icl */
whitelist_reg(w, GEN9_SLICE_COMMON_ECO_CHICKEN1); whitelist_reg(w, GEN9_SLICE_COMMON_ECO_CHICKEN1);
break;
case VIDEO_DECODE_CLASS:
/* hucStatusRegOffset */
whitelist_reg_ext(w, _MMIO(0x2000 + engine->mmio_base),
RING_FORCE_TO_NONPRIV_RD);
/* hucUKernelHdrInfoRegOffset */
whitelist_reg_ext(w, _MMIO(0x2014 + engine->mmio_base),
RING_FORCE_TO_NONPRIV_RD);
/* hucStatus2RegOffset */
whitelist_reg_ext(w, _MMIO(0x23B0 + engine->mmio_base),
RING_FORCE_TO_NONPRIV_RD);
break;
default:
break;
}
} }
void intel_engine_init_whitelist(struct intel_engine_cs *engine) void intel_engine_init_whitelist(struct intel_engine_cs *engine)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment