[Intel-gfx] [PATCH i-g-t 08/26] rendercopy/skl: Pass the context to rendercopy function on SKL

Damien Lespiau damien.lespiau at intel.com
Fri Sep 26 16:03:06 CEST 2014


From: Zhao Yakui <yakui.zhao at intel.com>

Reviewed-by: Damien Lespiau <damien.lespiau at intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao at intel.com>
Signed-off-by: Ben Widawsky <benjamin.widawsky at intel.com>
---
 lib/rendercopy.h           |  1 +
 lib/rendercopy_gen9.c      | 12 +++++++-----
 tools/intel_error_decode.c |  1 +
 3 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/lib/rendercopy.h b/lib/rendercopy.h
index f15df0e..fdc3cab 100644
--- a/lib/rendercopy.h
+++ b/lib/rendercopy.h
@@ -24,6 +24,7 @@ static inline void emit_vertex_normalized(struct intel_batchbuffer *batch,
 }
 
 void gen9_render_copyfunc(struct intel_batchbuffer *batch,
+			  drm_intel_context *context,
 			  struct igt_buf *src, unsigned src_x, unsigned src_y,
 			  unsigned width, unsigned height,
 			  struct igt_buf *dst, unsigned dst_x, unsigned dst_y);
diff --git a/lib/rendercopy_gen9.c b/lib/rendercopy_gen9.c
index 01d5ef3..40f1c6f 100644
--- a/lib/rendercopy_gen9.c
+++ b/lib/rendercopy_gen9.c
@@ -166,14 +166,15 @@ batch_copy(struct intel_batchbuffer *batch, const void *ptr, uint32_t size, uint
 }
 
 static void
-gen6_render_flush(struct intel_batchbuffer *batch, uint32_t batch_end)
+gen6_render_flush(struct intel_batchbuffer *batch,
+		  drm_intel_context *context, uint32_t batch_end)
 {
 	int ret;
 
 	ret = drm_intel_bo_subdata(batch->bo, 0, 4096, batch->buffer);
 	if (ret == 0)
-		ret = drm_intel_bo_mrb_exec(batch->bo, batch_end,
-					    NULL, 0, 0, 0);
+		ret = drm_intel_gem_bo_context_exec(batch->bo, context,
+						    batch_end, 0);
 	assert(ret == 0);
 }
 
@@ -872,6 +873,7 @@ static void gen8_emit_primitive(struct intel_batchbuffer *batch, uint32_t offset
 #define BATCH_STATE_SPLIT 2048
 
 void gen9_render_copyfunc(struct intel_batchbuffer *batch,
+			  drm_intel_context *context,
 			  struct igt_buf *src, unsigned src_x, unsigned src_y,
 			  unsigned width, unsigned height,
 			  struct igt_buf *dst, unsigned dst_x, unsigned dst_y)
@@ -881,7 +883,7 @@ void gen9_render_copyfunc(struct intel_batchbuffer *batch,
 	uint32_t vertex_buffer;
 	uint32_t batch_end;
 
-	intel_batchbuffer_flush(batch);
+	intel_batchbuffer_flush_with_context(batch, context);
 
 	batch_align(batch, 8);
 
@@ -971,6 +973,6 @@ void gen9_render_copyfunc(struct intel_batchbuffer *batch,
 
 	annotation_flush(&aub_annotations, batch);
 
-	gen6_render_flush(batch, batch_end);
+	gen6_render_flush(batch, context, batch_end);
 	intel_batchbuffer_reset(batch);
 }
diff --git a/tools/intel_error_decode.c b/tools/intel_error_decode.c
index 1eeff07..14589a3 100644
--- a/tools/intel_error_decode.c
+++ b/tools/intel_error_decode.c
@@ -56,6 +56,7 @@
 #include "intel_io.h"
 #include "instdone.h"
 #include "intel_reg.h"
+#include "drmtest.h"
 
 static uint32_t
 print_head(unsigned int reg)
-- 
1.8.3.1




More information about the Intel-gfx mailing list