This restores 08fff7aeddc9 ("drm/i915/tgl: Wa_1607138340") by reverting
commit 921f0c47f228 ("drm/i915: Revert "drm/i915/tgl: Wa_1607138340"").
Our CI machines are recording a rare error where the CS events are out
of order, leading to a machine death. Restoring the Wa_1607138340 (i.e.
forcing a full restore on every context switch) prevents it. Whether or
not is it the same root cause remains to be seen, but since the machine
death is quite easy to hit on B0, it is unresolved.
Fixes: 921f0c47f228 ("drm/i915: Revert "drm/i915/tgl: Wa_1607138340"")
References: 08fff7aeddc9 ("drm/i915/tgl: Wa_1607138340")
Signed-off-by: Chris Wilson <[email protected]>
Cc: Mika Kuoppala <[email protected]>
Cc: Tvrtko Ursulin <[email protected]>
Cc: Francesco Balestrieri <[email protected]>
---
drivers/gpu/drm/i915/gt/intel_lrc.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c
b/drivers/gpu/drm/i915/gt/intel_lrc.c
index aac8da18694f..e5e709dccef4 100644
--- a/drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
@@ -1520,6 +1520,10 @@ static u64 execlists_update_context(struct i915_request
*rq)
*/
wmb();
+ /* Wa_1607138340:tgl */
+ if (IS_TGL_REVID(rq->i915, TGL_REVID_A0, TGL_REVID_B0))
+ desc |= CTX_DESC_FORCE_RESTORE;
+
ce->lrc.desc &= ~CTX_DESC_FORCE_RESTORE;
return desc;
}
--
2.20.1
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx