aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2019-04-17 11:17:18 -0400
committerMarek Olšák <[email protected]>2019-04-18 15:58:45 -0400
commit7bc33a5cd5c2e25a7b9506c520e780cbf5b12aff (patch)
tree8086046a1d72dc305f047e432b852b5d3079ab9e /src
parent6b97fa9a99cb8fddc1427a60b89276b64338c37c (diff)
radeonsi/gfx9: use the correct condition for the DPBB + QUANT_MODE workaround
Reviewed-by: Samuel Pitoiset <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/gallium/drivers/radeonsi/si_state_viewport.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state_viewport.c b/src/gallium/drivers/radeonsi/si_state_viewport.c
index a9a1be73ba4..f988da4520b 100644
--- a/src/gallium/drivers/radeonsi/si_state_viewport.c
+++ b/src/gallium/drivers/radeonsi/si_state_viewport.c
@@ -362,11 +362,11 @@ static void si_set_viewport_states(struct pipe_context *pctx,
* but also leave enough space for the guardband.
*
* Note that primitive binning requires QUANT_MODE == 16_8 on Vega10
- * and Raven1. What we do depends on the chip:
- * - Vega10: Never use primitive binning.
- * - Raven1: Always use QUANT_MODE == 16_8.
+ * and Raven1 for line and rectangle primitive types to work correctly.
+ * Always use 16_8 if primitive binning is possible to occur.
*/
- if (ctx->family == CHIP_RAVEN)
+ if ((ctx->family == CHIP_VEGA10 || ctx->family == CHIP_RAVEN) &&
+ ctx->screen->dpbb_allowed)
max_extent = 16384; /* Use QUANT_MODE == 16_8. */
/* Another constraint is that all coordinates in the viewport