summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/etnaviv/etnaviv_state.c
diff options
context:
space:
mode:
authorLucas Stach <[email protected]>2018-01-11 11:29:29 +0100
committerChristian Gmeiner <[email protected]>2018-01-21 12:58:02 +0100
commit29a0ea699a4fcd837d0478ad23b50e3cb0431ee4 (patch)
tree4b15e56c4840b4c897dae8eb8a41a7dc628efd91 /src/gallium/drivers/etnaviv/etnaviv_state.c
parente03c880971a074b8807d17c6ca347e653e5ac44a (diff)
etnaviv: dirty TS state when framebuffer has changed
When switching between framebuffers with and without TS, the TS state needs to be flushed to the command stream even if the derived state isn't changed. Fixes: 4ee7c2c2843c ("etnaviv: enable TS, but disable autodisable") Cc: [email protected] Signed-off-by: Lucas Stach <[email protected]> Reviewed-by: Christian Gmeiner <[email protected]>
Diffstat (limited to 'src/gallium/drivers/etnaviv/etnaviv_state.c')
-rw-r--r--src/gallium/drivers/etnaviv/etnaviv_state.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/etnaviv/etnaviv_state.c b/src/gallium/drivers/etnaviv/etnaviv_state.c
index b859f40c29f..e4ad0f62f17 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_state.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_state.c
@@ -611,7 +611,8 @@ etna_update_ts_config(struct etna_context *ctx)
}
}
- if (new_ts_config != ctx->framebuffer.TS_MEM_CONFIG) {
+ if (new_ts_config != ctx->framebuffer.TS_MEM_CONFIG ||
+ (ctx->dirty & ETNA_DIRTY_FRAMEBUFFER)) {
ctx->framebuffer.TS_MEM_CONFIG = new_ts_config;
ctx->dirty |= ETNA_DIRTY_TS;
}