summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/gen6_depth_state.c
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2015-06-25 09:17:38 -0700
committerKenneth Graunke <kenneth@whitecape.org>2015-07-10 19:13:42 -0700
commit6be024f44dea7df6608e5a3111deffc61dbf6d6d (patch)
tree87c026655fd264307e4066c606404654fe83c765 /src/mesa/drivers/dri/i965/gen6_depth_state.c
parentf3a620e2a63956a37367b9e393d4c1ecd41e5d43 (diff)
downloadexternal_mesa3d-6be024f44dea7df6608e5a3111deffc61dbf6d6d.zip
external_mesa3d-6be024f44dea7df6608e5a3111deffc61dbf6d6d.tar.gz
external_mesa3d-6be024f44dea7df6608e5a3111deffc61dbf6d6d.tar.bz2
i965/gen6: Set up layer constraints properly for depth buffers.
This ports over Chris Forbes' equivalent fixes in gen7_misc_state.c from commit 77d55ef4819436ebbf9786a1e720ec00707bbb19. No Piglit changes on Sandybridge. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/gen6_depth_state.c')
-rw-r--r--src/mesa/drivers/dri/i965/gen6_depth_state.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/gen6_depth_state.c b/src/mesa/drivers/dri/i965/gen6_depth_state.c
index 8f0d7dc..febd478 100644
--- a/src/mesa/drivers/dri/i965/gen6_depth_state.c
+++ b/src/mesa/drivers/dri/i965/gen6_depth_state.c
@@ -73,7 +73,7 @@ gen6_emit_depth_stencil_hiz(struct brw_context *brw,
rb = (struct gl_renderbuffer*) irb;
if (rb) {
- depth = MAX2(rb->Depth, 1);
+ depth = MAX2(irb->layer_count, 1);
if (rb->TexImage)
gl_target = rb->TexImage->TexObject->Target;
}
@@ -89,6 +89,10 @@ gen6_emit_depth_stencil_hiz(struct brw_context *brw,
surftype = BRW_SURFACE_2D;
depth *= 6;
break;
+ case GL_TEXTURE_3D:
+ assert(mt);
+ depth = MAX2(mt->logical_depth0, 1);
+ /* fallthrough */
default:
surftype = translate_tex_target(gl_target);
break;