]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/cnl: WaPipeControlBefore3DStateSamplePattern
authorRafael Antognolli <rafael.antognolli@intel.com>
Mon, 5 Feb 2018 23:33:30 +0000 (15:33 -0800)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 6 Feb 2018 08:59:39 +0000 (08:59 +0000)
commit6982b8c9912a84686219a8385d39d3b8c90ae3d8
tree3fe15819769cb2bcc1d30166fd982caeb7233462
parent7eee00bb119efa967a2cbf3949fe7ac0826d90c7
drm/i915/cnl: WaPipeControlBefore3DStateSamplePattern

This workaround should prevent a bug that can be hit on a context
restore. To avoid the issue, we must emit a PIPE_CONTROL with CS stall
(0x7a000004 0x00100000 0x00000000 0x00000000) followed by 12DW's of
NOOP(0x0) in the indirect context batch buffer, to ensure the engine is
idle prior to programming 3DSTATE_SAMPLE_PATTERN.

It's also not clear whether we should add those extra dwords because of
the workaround itself, or if that's just padding for the WA BB (and next
commands could come right after the PIPE_CONTROL). We keep them for now.

References: HSD#1939868

 v2: More descriptive changelog and comments.
 v3: Explain that PIPE_CONTROL is actually 6 dwords, and that we advance
     10 more dwords because of that.

Signed-off-by: Rafael Antognolli <rafael.antognolli@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20180205233330.14973-1-rafael.antognolli@intel.com
drivers/gpu/drm/i915/intel_lrc.c