Mesa (master): r600g: some DB bug workarounds for R6xx DB flushing

Marek Olšák mareko at kemper.freedesktop.org
Mon Sep 1 19:24:47 UTC 2014


Module: Mesa
Branch: master
Commit: e6d191bb6fa7e0e78acd9028129a9f9f83c99260
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e6d191bb6fa7e0e78acd9028129a9f9f83c99260

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Wed Aug 20 17:22:41 2014 +0200

r600g: some DB bug workarounds for R6xx DB flushing

Acked-by: Michel Dänzer <michel.daenzer at amd.com>

---

 src/gallium/drivers/r600/r600_state.c |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c
index 2dc9ec8..3d1700f 100644
--- a/src/gallium/drivers/r600/r600_state.c
+++ b/src/gallium/drivers/r600/r600_state.c
@@ -1610,6 +1610,13 @@ static void r600_emit_db_misc_state(struct r600_context *rctx, struct r600_atom
 				     S_028D0C_STENCIL_COPY_ENABLE(a->copy_stencil) |
 				     S_028D0C_COPY_CENTROID(1) |
 				     S_028D0C_COPY_SAMPLE(a->copy_sample);
+
+		if (rctx->b.chip_class == R600)
+			db_render_override |= S_028D10_NOOP_CULL_DISABLE(1);
+
+		if (rctx->b.family == CHIP_RV610 || rctx->b.family == CHIP_RV630 ||
+		    rctx->b.family == CHIP_RV620 || rctx->b.family == CHIP_RV635)
+			db_render_override |= S_028D10_FORCE_HIZ_ENABLE(V_028D10_FORCE_DISABLE);
 	} else if (a->flush_depthstencil_in_place) {
 		db_render_control |= S_028D0C_DEPTH_COMPRESS_DISABLE(1) |
 				     S_028D0C_STENCIL_COMPRESS_DISABLE(1);




More information about the mesa-commit mailing list