[PATCH 4/4] flsuh

Chris Wilson chris at chris-wilson.co.uk
Sun Jan 10 09:37:14 UTC 2021


---
 drivers/gpu/drm/i915/gt/gen7_renderclear.c | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gt/gen7_renderclear.c b/drivers/gpu/drm/i915/gt/gen7_renderclear.c
index f0f2d5b2733b..83fd35a0a46c 100644
--- a/drivers/gpu/drm/i915/gt/gen7_renderclear.c
+++ b/drivers/gpu/drm/i915/gt/gen7_renderclear.c
@@ -337,6 +337,20 @@ gen7_emit_media_object(struct batch_chunk *batch,
 }
 
 static void gen7_emit_pipeline_flush(struct batch_chunk *batch)
+{
+	u32 *cs = batch_alloc_items(batch, 0, 4);
+
+	*cs++ = GFX_OP_PIPE_CONTROL(4);
+	*cs++ = PIPE_CONTROL_RENDER_TARGET_CACHE_FLUSH |
+		PIPE_CONTROL_DEPTH_CACHE_FLUSH |
+		PIPE_CONTROL_DC_FLUSH_ENABLE;
+	*cs++ = 0;
+	*cs++ = 0;
+
+	batch_advance(batch, cs);
+}
+
+static void gen7_emit_pipeline_invalidate(struct batch_chunk *batch)
 {
 	u32 *cs = batch_alloc_items(batch, 0, 8);
 
@@ -378,7 +392,7 @@ static void emit_batch(struct i915_vma * const vma,
 	batch_add(&cmds, PIPELINE_SELECT | PIPELINE_SELECT_MEDIA);
 	batch_add(&cmds, MI_NOOP);
 	gen7_emit_state_base_address(&cmds, descriptors);
-	gen7_emit_pipeline_flush(&cmds);
+	gen7_emit_pipeline_invalidate(&cmds);
 
 	gen7_emit_vfe_state(&cmds, bv, urb_size - 1, 0, 0);
 	gen7_emit_interface_descriptor_load(&cmds, descriptors, desc_count);
-- 
2.20.1



More information about the Intel-gfx-trybot mailing list