Mesa (master): i965: Fix packed depth/ stencil textures to be Y-tiled as well.

Eric Anholt anholt at kemper.freedesktop.org
Wed Jun 24 02:36:53 UTC 2009


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

Author: Eric Anholt <eric at anholt.net>
Date:   Mon Jun 22 15:39:37 2009 -0700

i965: Fix packed depth/stencil textures to be Y-tiled as well.

Fixes shadowtex.c.  And an assert is added to catch this sooner next time.

---

 src/mesa/drivers/dri/i965/brw_misc_state.c     |    2 ++
 src/mesa/drivers/dri/intel/intel_mipmap_tree.c |    3 ++-
 2 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c
index 4784254..67c39e5 100644
--- a/src/mesa/drivers/dri/i965/brw_misc_state.c
+++ b/src/mesa/drivers/dri/i965/brw_misc_state.c
@@ -244,6 +244,8 @@ static void emit_depthbuffer(struct brw_context *brw)
 	 return;
       }
 
+      assert(region->tiling != I915_TILING_X);
+
       BEGIN_BATCH(len, IGNORE_CLIPRECTS);
       OUT_BATCH(CMD_DEPTH_BUFFER << 16 | (len - 2));
       OUT_BATCH(((region->pitch * region->cpp) - 1) |
diff --git a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
index 660d7e5..1ef2fe8 100644
--- a/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
+++ b/src/mesa/drivers/dri/intel/intel_mipmap_tree.c
@@ -115,7 +115,8 @@ intel_miptree_create(struct intel_context *intel,
    if (intel->use_texture_tiling && compress_byte == 0 &&
        intel->intelScreen->kernel_exec_fencing) {
       if (IS_965(intel->intelScreen->deviceID) &&
-	  internal_format == GL_DEPTH_COMPONENT)
+	  (internal_format == GL_DEPTH_COMPONENT ||
+	   internal_format == GL_DEPTH_STENCIL_EXT))
 	 tiling = I915_TILING_Y;
       else
 	 tiling = I915_TILING_X;




More information about the mesa-commit mailing list