radeonsi: don't use WRITE_DATA.DST_SEL == MEM_GRBM on >= CIK

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
This commit is contained in:
Marek Olšák 2019-01-17 14:49:02 -05:00
parent a545415eb9
commit c252273f98
2 changed files with 4 additions and 2 deletions

View file

@ -528,7 +528,8 @@ static struct pipe_context *si_create_context(struct pipe_screen *screen,
/* Initialize the memory. */
struct radeon_cmdbuf *cs = sctx->gfx_cs;
radeon_emit(cs, PKT3(PKT3_WRITE_DATA, 3, 0));
radeon_emit(cs, S_370_DST_SEL(V_370_MEM_GRBM) |
radeon_emit(cs, S_370_DST_SEL(sctx->chip_class >= CIK ? V_370_MEM
: V_370_MEM_GRBM) |
S_370_WR_CONFIRM(1) |
S_370_ENGINE_SEL(V_370_ME));
radeon_emit(cs, sctx->wait_mem_scratch->gpu_address);

View file

@ -1596,7 +1596,8 @@ void si_trace_emit(struct si_context *sctx)
uint32_t trace_id = ++sctx->current_saved_cs->trace_id;
radeon_emit(cs, PKT3(PKT3_WRITE_DATA, 3, 0));
radeon_emit(cs, S_370_DST_SEL(V_370_MEM_GRBM) |
radeon_emit(cs, S_370_DST_SEL(sctx->chip_class >= CIK ? V_370_MEM
: V_370_MEM_GRBM) |
S_370_WR_CONFIRM(1) |
S_370_ENGINE_SEL(V_370_ME));
radeon_emit(cs, va);