[Mesa-dev] [PATCH 2/2] radeonsi: fix occlusion queries for CIK

Marek Olšák maraeo at gmail.com
Tue Oct 8 07:29:47 PDT 2013


From: Marek Olšák <marek.olsak at amd.com>

---
 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



More information about the mesa-dev mailing list