Mesa (master): r600g: fix for HTILE on R6xx

Marek Olšák mareko at kemper.freedesktop.org
Thu Apr 24 23:40:44 UTC 2014


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

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Sun Apr 20 15:17:23 2014 +0200

r600g: fix for HTILE on R6xx

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

---

 src/gallium/drivers/radeon/r600_texture.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/gallium/drivers/radeon/r600_texture.c b/src/gallium/drivers/radeon/r600_texture.c
index 55caece..e30d933 100644
--- a/src/gallium/drivers/radeon/r600_texture.c
+++ b/src/gallium/drivers/radeon/r600_texture.c
@@ -542,6 +542,12 @@ static unsigned r600_texture_htile_alloc_size(struct r600_common_screen *rscreen
 		return 0;
 	}
 
+	/* HW bug on R6xx. */
+	if (rscreen->chip_class == R600 &&
+	    (rtex->surface.level[0].npix_x > 7680 ||
+	     rtex->surface.level[0].npix_y > 7680))
+		return 0;
+
 	/* this alignment and htile size only apply to linear htile buffer */
 	sw = align(sw, 16 << 3);
 	sh = align(sh, npipes << 3);




More information about the mesa-commit mailing list