From e2bb24f213bfdb4c51470926d9668181f09c5816 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 11 Aug 2016 21:50:55 +0200 Subject: [PATCH] gallium/radeon: set SHADER_RW_BUFFER priority for streamout buffers MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Acked-by: Edward O'Callaghan Reviewed-by: Nicolai Hähnle --- src/gallium/drivers/radeon/r600_streamout.c | 4 ++-- src/gallium/drivers/radeonsi/si_descriptors.c | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/gallium/drivers/radeon/r600_streamout.c b/src/gallium/drivers/radeon/r600_streamout.c index 705eb13835d..b5296aa5667 100644 --- a/src/gallium/drivers/radeon/r600_streamout.c +++ b/src/gallium/drivers/radeon/r600_streamout.c @@ -218,7 +218,7 @@ static void r600_emit_streamout_begin(struct r600_common_context *rctx, struct r radeon_emit(cs, va >> 8); /* BUFFER_BASE */ r600_emit_reloc(rctx, &rctx->gfx, r600_resource(t[i]->b.buffer), - RADEON_USAGE_WRITE, RADEON_PRIO_RINGS_STREAMOUT); + RADEON_USAGE_WRITE, RADEON_PRIO_SHADER_RW_BUFFER); /* R7xx requires this packet after updating BUFFER_BASE. * Without this, R7xx locks up. */ @@ -228,7 +228,7 @@ static void r600_emit_streamout_begin(struct r600_common_context *rctx, struct r radeon_emit(cs, va >> 8); r600_emit_reloc(rctx, &rctx->gfx, r600_resource(t[i]->b.buffer), - RADEON_USAGE_WRITE, RADEON_PRIO_RINGS_STREAMOUT); + RADEON_USAGE_WRITE, RADEON_PRIO_SHADER_RW_BUFFER); } } diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c index 1d04a9c6e4d..fcc8a3282bd 100644 --- a/src/gallium/drivers/radeonsi/si_descriptors.c +++ b/src/gallium/drivers/radeonsi/si_descriptors.c @@ -1311,7 +1311,8 @@ static void si_set_streamout_targets(struct pipe_context *ctx, radeon_add_to_buffer_list_check_mem(&sctx->b, &sctx->b.gfx, (struct r600_resource*)buffer, buffers->shader_usage, - buffers->priority, true); + RADEON_PRIO_SHADER_RW_BUFFER, + true); buffers->enabled_mask |= 1u << bufidx; } else { /* Clear the descriptor and unset the resource. */ @@ -1474,7 +1475,8 @@ static void si_invalidate_buffer(struct pipe_context *ctx, struct pipe_resource radeon_add_to_buffer_list_check_mem(&sctx->b, &sctx->b.gfx, rbuffer, buffers->shader_usage, - buffers->priority, true); + RADEON_PRIO_SHADER_RW_BUFFER, + true); /* Update the streamout state. */ if (sctx->b.streamout.begin_emitted) -- 2.11.0