diff options
author | Lucas Stach <[email protected]> | 2017-10-12 16:07:48 +0200 |
---|---|---|
committer | Christian Gmeiner <[email protected]> | 2017-10-14 16:40:08 +0200 |
commit | 4daee6733f3c4c755f9450a0dea33c0203cacd68 (patch) | |
tree | 21a5ecf25d7b20101cb53574556b38909ba8bb8b /src/gallium/drivers/etnaviv/etnaviv_context.h | |
parent | 34360ac6eddd44f20aae2a382fc4c7a77f9096ba (diff) |
etnaviv: rework TS enable to be a derived state
Draw operations should not use the TS if the TS buffer content is invalid,
as this leads to wrong rendering or even GPU hangs. As the TS valid status
can change between draws (clear operations changing it to valid, blits using
the RS to the color or ZS buffer changing it to invalid), the TS_MEM_CONFIG
must be updated before each draw if the status has changed.
This fixes the remaining TS related piglit failures (regressions of a
standard run against a piglit run with TS completely disabled).
Signed-off-by: Lucas Stach <[email protected]>
Reviewed-by: Wladimir J. van der Laan <[email protected]>
Reviewed-by: Christian Gmeiner <[email protected]>
Diffstat (limited to 'src/gallium/drivers/etnaviv/etnaviv_context.h')
-rw-r--r-- | src/gallium/drivers/etnaviv/etnaviv_context.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/etnaviv/etnaviv_context.h b/src/gallium/drivers/etnaviv/etnaviv_context.h index 2c9b24dfd43..bf2b265f5ee 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_context.h +++ b/src/gallium/drivers/etnaviv/etnaviv_context.h @@ -124,6 +124,7 @@ struct etna_context { ETNA_DIRTY_SHADER = (1 << 16), ETNA_DIRTY_TS = (1 << 17), ETNA_DIRTY_TEXTURE_CACHES = (1 << 18), + ETNA_DIRTY_DERIVE_TS = (1 << 19), } dirty; uint32_t prim_hwsupport; |