diff --git a/src/gallium/drivers/radeonsi/si_pm4.c b/src/gallium/drivers/radeonsi/si_pm4.c index 8e2b36e9470..2c115138291 100644 --- a/src/gallium/drivers/radeonsi/si_pm4.c +++ b/src/gallium/drivers/radeonsi/si_pm4.c @@ -110,8 +110,10 @@ void si_pm4_set_reg_idx3(struct si_screen *sscreen, struct si_pm4_state *state, { SI_CHECK_SHADOWED_REGS(reg, 1); - si_pm4_set_reg_custom(state, reg - SI_SH_REG_OFFSET, val, PKT3_SET_SH_REG_INDEX, - sscreen->info.gfx_level >= GFX10 ? 3 : 0); + if (sscreen->info.gfx_level >= GFX10) + si_pm4_set_reg_custom(state, reg - SI_SH_REG_OFFSET, val, PKT3_SET_SH_REG_INDEX, 3); + else + si_pm4_set_reg_custom(state, reg - SI_SH_REG_OFFSET, val, PKT3_SET_SH_REG, 0); } void si_pm4_set_reg_va(struct si_pm4_state *state, unsigned reg, uint32_t val)