]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/gt: Try an extra flush on the Haswell blitter
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 11 Nov 2019 12:09:57 +0000 (12:09 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 12 Nov 2019 14:07:22 +0000 (14:07 +0000)
commit997c7bc2574613d901194c39dc68f860faa8c460
treefcfdd614d4fb53393177c9b475df48680cd3190c
parentbb647d3d059ea45d57dcac247cdb776d59f9f92a
drm/i915/gt: Try an extra flush on the Haswell blitter

On gen7, including Haswell, the MI_FLUSH_DW command is not synchronous
with the command streamer nor is there an option to make it so. To hide
this we add a large delay on the CS so that the breadcrumb should always
be visible before the interrupt. However, that does not seem to be
enough to ensure the memory is actually coherent with the read of the
breadcrumb. The breadcrumb update is a post-sync op... Throw in a
preliminary MI_FLUSH_DW before the breadcrumb update in the hope that
helps.

References: https://bugs.freedesktop.org/show_bug.cgi?id=112147
Testcase: igt/i915_selftest/live_blt
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191111120957.17732-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/intel_ring_submission.c