From: Marek Olšák <[email protected]>

---
 src/gallium/drivers/radeonsi/si_state_draw.c | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_state_draw.c 
b/src/gallium/drivers/radeonsi/si_state_draw.c
index 626ba95..d20658e 100644
--- a/src/gallium/drivers/radeonsi/si_state_draw.c
+++ b/src/gallium/drivers/radeonsi/si_state_draw.c
@@ -570,9 +570,18 @@ static void si_state_draw(struct r600_context *rctx,
        if (rctx->num_cs_dw_nontimer_queries_suspend) {
                struct si_state_dsa *dsa = rctx->queued.named.dsa;
 
-               si_pm4_set_reg(pm4, R_028004_DB_COUNT_CONTROL,
-                              S_028004_PERFECT_ZPASS_COUNTS(1) |
-                              S_028004_SAMPLE_RATE(rctx->fb_log_samples));
+               if (rctx->b.chip_class >= CIK) {
+                       si_pm4_set_reg(pm4, R_028004_DB_COUNT_CONTROL,
+                                      S_028004_PERFECT_ZPASS_COUNTS(1) |
+                                      
S_028004_SAMPLE_RATE(rctx->fb_log_samples) |
+                                      S_028004_ZPASS_ENABLE(1) |
+                                      S_028004_SLICE_EVEN_ENABLE(1) |
+                                      S_028004_SLICE_ODD_ENABLE(1));
+               } else {
+                       si_pm4_set_reg(pm4, R_028004_DB_COUNT_CONTROL,
+                                      S_028004_PERFECT_ZPASS_COUNTS(1) |
+                                      
S_028004_SAMPLE_RATE(rctx->fb_log_samples));
+               }
                si_pm4_set_reg(pm4, R_02800C_DB_RENDER_OVERRIDE,
                               dsa->db_render_override |
                               S_02800C_NOOP_CULL_DISABLE(1));
-- 
1.8.1.2

_______________________________________________
mesa-dev mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to