intel/bdw: Update MI_BATCH_BUFFER_START for aub dumps
authorDamien Lespiau <damien.lespiau@intel.com>
Fri, 15 Feb 2013 16:44:05 +0000 (16:44 +0000)
committerBen Widawsky <benjamin.widawsky@intel.com>
Fri, 8 Nov 2013 01:09:34 +0000 (17:09 -0800)
The command now takes a 48bits address and is thus 1 dword longer.

v2 (Ben): commit message: s/byte/dword (Eric)

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
intel/intel_bufmgr_gem.c

index 3eb6e2e..029ca5d 100644 (file)
@@ -2028,8 +2028,14 @@ aub_build_dump_ringbuffer(drm_intel_bufmgr_gem *bufmgr_gem,
 
        /* Make a ring buffer to execute our batchbuffer. */
        memset(ringbuffer, 0, sizeof(ringbuffer));
-       ringbuffer[ring_count++] = AUB_MI_BATCH_BUFFER_START;
-       ringbuffer[ring_count++] = batch_buffer;
+       if (bufmgr_gem->gen >= 8) {
+               ringbuffer[ring_count++] = AUB_MI_BATCH_BUFFER_START | (3 - 2);
+               ringbuffer[ring_count++] = batch_buffer;
+               ringbuffer[ring_count++] = 0;
+       } else {
+               ringbuffer[ring_count++] = AUB_MI_BATCH_BUFFER_START;
+               ringbuffer[ring_count++] = batch_buffer;
+       }
 
        /* Write out the ring.  This appears to trigger execution of
         * the ring in the simulator.