]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - glsdk/libdrm.git/commitdiff
intel: Add decode for gen7 HIER_DEPTH_BUFFER.
authorEric Anholt <eric@anholt.net>
Mon, 30 Jan 2012 23:13:32 +0000 (15:13 -0800)
committerEric Anholt <eric@anholt.net>
Wed, 22 Feb 2012 20:27:25 +0000 (12:27 -0800)
Note that the regression test complains here: The batch that was
captured included a bug in its packet output, which was later fixed in
Mesa.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
intel/intel_decode.c

index 064c12a6a242983df48c857616873f0730aca4ea..2ea8f67e00d28c582501b3f3cf3ae89c9fc029fd 100644 (file)
@@ -2744,6 +2744,17 @@ gen7_3DSTATE_DEPTH_STENCIL_STATE_POINTERS(struct drm_intel_decode *ctx)
        return 2;
 }
 
        return 2;
 }
 
+static int
+gen7_3DSTATE_HIER_DEPTH_BUFFER(struct drm_intel_decode *ctx)
+{
+       instr_out(ctx, 0, "3DSTATE_HIER_DEPTH_BUFFER\n");
+       instr_out(ctx, 1, "pitch %db\n",
+                 (ctx->data[1] & 0x1ffff) + 1);
+       instr_out(ctx, 2, "pointer to HiZ buffer\n");
+
+       return 3;
+}
+
 static int
 gen6_3DSTATE_CC_STATE_POINTERS(struct drm_intel_decode *ctx)
 {
 static int
 gen6_3DSTATE_CC_STATE_POINTERS(struct drm_intel_decode *ctx)
 {
@@ -3027,7 +3038,8 @@ decode_3d_965(struct drm_intel_decode *ctx)
                { 0x7805, 0x00ff, 3, 3, "3DSTATE_URB" },
                { 0x7804, 0x00ff, 3, 3, "3DSTATE_CLEAR_PARAMS" },
                { 0x7806, 0x00ff, 3, 3, "3DSTATE_STENCIL_BUFFER" },
                { 0x7805, 0x00ff, 3, 3, "3DSTATE_URB" },
                { 0x7804, 0x00ff, 3, 3, "3DSTATE_CLEAR_PARAMS" },
                { 0x7806, 0x00ff, 3, 3, "3DSTATE_STENCIL_BUFFER" },
-               { 0x7807, 0x00ff, 4, 4, "3DSTATE_HIER_DEPTH_BUFFER" },
+               { 0x7807, 0x00ff, 4, 4, "3DSTATE_HIER_DEPTH_BUFFER", 6 },
+               { 0x7807, 0x00ff, 3, 3, "3DSTATE_HIER_DEPTH_BUFFER", 7, gen7_3DSTATE_HIER_DEPTH_BUFFER },
                { 0x7808, 0x00ff, 5, 257, "3DSTATE_VERTEX_BUFFERS" },
                { 0x7809, 0x00ff, 3, 256, "3DSTATE_VERTEX_ELEMENTS" },
                { 0x780a, 0x00ff, 3, 3, "3DSTATE_INDEX_BUFFER" },
                { 0x7808, 0x00ff, 5, 257, "3DSTATE_VERTEX_BUFFERS" },
                { 0x7809, 0x00ff, 3, 256, "3DSTATE_VERTEX_ELEMENTS" },
                { 0x780a, 0x00ff, 3, 3, "3DSTATE_INDEX_BUFFER" },