diff options
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_gfx_cs.c | 5 | ||||
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state_shaders.c | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/gallium/drivers/radeonsi/si_gfx_cs.c b/src/gallium/drivers/radeonsi/si_gfx_cs.c index 2e7b34e3a09..188bda0858c 100644 --- a/src/gallium/drivers/radeonsi/si_gfx_cs.c +++ b/src/gallium/drivers/radeonsi/si_gfx_cs.c @@ -415,6 +415,11 @@ void si_begin_new_gfx_cs(struct si_context *ctx) return; } + if (ctx->tess_rings) { + radeon_add_to_buffer_list(ctx, ctx->gfx_cs, si_resource(ctx->tess_rings), + RADEON_USAGE_READWRITE, RADEON_PRIO_SHADER_RINGS); + } + /* set all valid group as dirty so they get reemited on * next draw command */ diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index 396737bd2c2..cee13524edc 100644 --- a/src/gallium/drivers/radeonsi/si_state_shaders.c +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c @@ -3640,9 +3640,6 @@ static void si_init_tess_factor_ring(struct si_context *sctx) si_cs_preamble_add_vgt_flush(sctx); - si_pm4_add_bo(sctx->cs_preamble_state, si_resource(sctx->tess_rings), RADEON_USAGE_READWRITE, - RADEON_PRIO_SHADER_RINGS); - uint64_t factor_va = si_resource(sctx->tess_rings)->gpu_address + sctx->screen->tess_offchip_ring_size; |