Mesa (master): r600g: fix ínitialization of non_disp_tiling fl?==?UTF-8?Q?ag

Marek Olšák mareko at kemper.freedesktop.org
Thu Oct 3 16:31:32 UTC 2013


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

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Thu Oct  3 18:16:08 2013 +0200

r600g: fix ínitialization of non_disp_tiling flag

This fixes a regression caused by e64633e8c3a5498998a45ab721bf80edca101cf5

---

 src/gallium/drivers/radeon/r600_texture.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/radeon/r600_texture.c b/src/gallium/drivers/radeon/r600_texture.c
index e83ce83..ebb70906 100644
--- a/src/gallium/drivers/radeon/r600_texture.c
+++ b/src/gallium/drivers/radeon/r600_texture.c
@@ -515,10 +515,6 @@ r600_texture_create_object(struct pipe_screen *screen,
 	/* don't include stencil-only formats which we don't support for rendering */
 	rtex->is_depth = util_format_has_depth(util_format_description(rtex->resource.b.b.format));
 
-	/* Tiled depth textures utilize the non-displayable tile order.
-	 * Applies to R600-Cayman. */
-	rtex->non_disp_tiling = rtex->is_depth && rtex->surface.level[0].mode >= RADEON_SURF_MODE_1D;
-
 	rtex->surface = *surface;
 	r = r600_setup_surface(screen, rtex, pitch_in_bytes_override);
 	if (r) {
@@ -526,6 +522,11 @@ r600_texture_create_object(struct pipe_screen *screen,
 		return NULL;
 	}
 
+	/* Tiled depth textures utilize the non-displayable tile order.
+	 * This must be done after r600_setup_surface.
+	 * Applies to R600-Cayman. */
+	rtex->non_disp_tiling = rtex->is_depth && rtex->surface.level[0].mode >= RADEON_SURF_MODE_1D;
+
 	if (base->nr_samples > 1 && !rtex->is_depth && !buf) {
 		r600_texture_allocate_fmask(rscreen, rtex);
 		r600_texture_allocate_cmask(rscreen, rtex);




More information about the mesa-commit mailing list