i965/gen8: Set depth extent field
authorJordan Justen <jordan.l.justen@intel.com>
Tue, 13 May 2014 18:06:59 +0000 (18:06 +0000)
committerJordan Justen <jordan.l.justen@intel.com>
Tue, 13 May 2014 21:26:41 +0000 (14:26 -0700)
The depth extent field is used to limit the allowed slice range that
can be rendered to.

With the previous setting, only slice 0 could be rendered.

This fixes piglit amd_vertex_shader_layer-layered-depth-texture-render.

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
src/mesa/drivers/dri/i965/gen8_depth_state.c

index 0bed3b4..8c70c62 100644 (file)
@@ -75,7 +75,7 @@ emit_depth_packets(struct brw_context *brw,
    OUT_BATCH(((width - 1) << 4) | ((height - 1) << 18) | lod);
    OUT_BATCH(((depth - 1) << 21) | (min_array_element << 10) | BDW_MOCS_WB);
    OUT_BATCH(0);
-   OUT_BATCH(depth_mt ? depth_mt->qpitch >> 2 : 0);
+   OUT_BATCH(((depth - 1) << 21) | (depth_mt ? depth_mt->qpitch >> 2 : 0));
    ADVANCE_BATCH();
 
    if (!hiz) {