[Mesa-dev] [PATCH 04/55] radeonsi: remove r600_pipe_common::need_gfx_cs_space

Marek Olšák maraeo at gmail.com
Mon Apr 2 04:07:57 UTC 2018


From: Marek Olšák <marek.olsak at amd.com>

---
 src/gallium/drivers/radeon/r600_pipe_common.h |  4 ----
 src/gallium/drivers/radeon/r600_query.c       | 10 ++++------
 src/gallium/drivers/radeonsi/si_state.c       |  7 -------
 3 files changed, 4 insertions(+), 17 deletions(-)

diff --git a/src/gallium/drivers/radeon/r600_pipe_common.h b/src/gallium/drivers/radeon/r600_pipe_common.h
index ca456e4..f244356 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.h
+++ b/src/gallium/drivers/radeon/r600_pipe_common.h
@@ -511,10 +511,6 @@ struct r600_common_context {
 					  bool old_perfect_enable);
 
 	void (*save_qbo_state)(struct pipe_context *ctx, struct r600_qbo_state *st);
-
-	/* This ensures there is enough space in the command stream. */
-	void (*need_gfx_cs_space)(struct pipe_context *ctx, unsigned num_dw,
-				  bool include_draw_vbo);
 };
 
 /* r600_buffer_common.c */
diff --git a/src/gallium/drivers/radeon/r600_query.c b/src/gallium/drivers/radeon/r600_query.c
index 0ec53dd..bf76ae8 100644
--- a/src/gallium/drivers/radeon/r600_query.c
+++ b/src/gallium/drivers/radeon/r600_query.c
@@ -807,8 +807,7 @@ static void r600_query_hw_emit_start(struct r600_common_context *ctx,
 	r600_update_occlusion_query_state(ctx, query->b.type, 1);
 	si_update_prims_generated_query_state((void*)ctx, query->b.type, 1);
 
-	ctx->need_gfx_cs_space(&ctx->b, query->num_cs_dw_begin + query->num_cs_dw_end,
-			       true);
+	si_need_cs_space((struct si_context*)ctx);
 
 	/* Get a new query buffer if needed. */
 	if (query->buffer.results_end + query->result_size > query->buffer.buf->b.b.width0) {
@@ -904,9 +903,8 @@ static void r600_query_hw_emit_stop(struct r600_common_context *ctx,
 		return; // previous buffer allocation failure
 
 	/* The queries which need begin already called this in begin_query. */
-	if (query->flags & R600_QUERY_HW_FLAG_NO_START) {
-		ctx->need_gfx_cs_space(&ctx->b, query->num_cs_dw_end, false);
-	}
+	if (query->flags & R600_QUERY_HW_FLAG_NO_START)
+		si_need_cs_space((struct si_context*)ctx);
 
 	/* emit end query */
 	va = query->buffer.buf->gpu_address + query->buffer.results_end;
@@ -1876,7 +1874,7 @@ void si_resume_queries(struct r600_common_context *ctx)
 	assert(ctx->num_cs_dw_queries_suspend == 0);
 
 	/* Check CS space here. Resuming must not be interrupted by flushes. */
-	ctx->need_gfx_cs_space(&ctx->b, num_cs_dw, true);
+	si_need_cs_space((struct si_context*)ctx);
 
 	LIST_FOR_EACH_ENTRY(query, &ctx->active_queries, list) {
 		r600_query_hw_emit_start(ctx, query);
diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
index b4165a4..1e1ead0 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -4517,12 +4517,6 @@ static void *si_create_blend_custom(struct si_context *sctx, unsigned mode)
 	return si_create_blend_state_mode(&sctx->b.b, &blend, mode);
 }
 
-static void si_need_gfx_cs_space(struct pipe_context *ctx, unsigned num_dw,
-				 bool include_draw_vbo)
-{
-	si_need_cs_space((struct si_context*)ctx);
-}
-
 static void si_init_config(struct si_context *sctx);
 
 void si_init_state_functions(struct si_context *sctx)
@@ -4590,7 +4584,6 @@ void si_init_state_functions(struct si_context *sctx)
 	sctx->b.b.set_active_query_state = si_set_active_query_state;
 	sctx->b.set_occlusion_query_state = si_set_occlusion_query_state;
 	sctx->b.save_qbo_state = si_save_qbo_state;
-	sctx->b.need_gfx_cs_space = si_need_gfx_cs_space;
 
 	sctx->b.b.draw_vbo = si_draw_vbo;
 
-- 
2.7.4



More information about the mesa-dev mailing list