From acda2e113a020f9ab32d6d38a07d74f77520f462 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Mon, 8 Dec 2014 12:51:59 +0100 Subject: [PATCH] radeonsi: fix SPI state dependency on sprite_coord_enable MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reviewed-by: Michel Dänzer --- src/gallium/drivers/radeonsi/si_state.c | 1 - src/gallium/drivers/radeonsi/si_state_shaders.c | 5 ++++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c index 59166fa7c0c..fe9666f5f99 100644 --- a/src/gallium/drivers/radeonsi/si_state.c +++ b/src/gallium/drivers/radeonsi/si_state.c @@ -700,7 +700,6 @@ static void si_bind_rs_state(struct pipe_context *ctx, void *state) return; // TODO - sctx->sprite_coord_enable = rs->sprite_coord_enable; sctx->pa_sc_line_stipple = rs->pa_sc_line_stipple; sctx->pa_su_sc_mode_cntl = rs->pa_su_sc_mode_cntl; diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index f2717b073aa..31d5094d008 100644 --- a/src/gallium/drivers/radeonsi/si_state_shaders.c +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c @@ -770,8 +770,11 @@ void si_update_shaders(struct si_context *sctx) si_pm4_bind_state(sctx, ps, sctx->ps_shader->current->pm4); - if (si_pm4_state_changed(sctx, ps) || si_pm4_state_changed(sctx, vs)) + if (si_pm4_state_changed(sctx, ps) || si_pm4_state_changed(sctx, vs) || + sctx->sprite_coord_enable != sctx->queued.named.rasterizer->sprite_coord_enable) { + sctx->sprite_coord_enable = sctx->queued.named.rasterizer->sprite_coord_enable; si_update_spi_map(sctx); + } if (sctx->ps_db_shader_control != sctx->ps_shader->current->db_shader_control) { sctx->ps_db_shader_control = sctx->ps_shader->current->db_shader_control; -- 2.30.2