vk: Make timestamp command work correctly
authorKristian Høgsberg <kristian.h.kristensen@intel.com>
Tue, 19 May 2015 00:04:32 +0000 (17:04 -0700)
committerKristian Høgsberg <kristian.h.kristensen@intel.com>
Tue, 19 May 2015 03:52:43 +0000 (20:52 -0700)
This was using the wrong timestamp register and needs to write a 64 bit
value.

src/vulkan/device.c

index 5cefc0ade6c09142e31872c848f10340cf736cef..09dddb766c216e0673ecb1215c7b69b61fc9f56a 100644 (file)
@@ -2800,7 +2800,7 @@ void anv_CmdResetQueryPool(
    stub();
 }
 
-#define TIMESTAMP 0x44070
+#define TIMESTAMP 0x2358
 
 void anv_CmdWriteTimestamp(
     VkCmdBuffer                                 cmdBuffer,
@@ -2817,6 +2817,9 @@ void anv_CmdWriteTimestamp(
       anv_batch_emit(&cmd_buffer->batch, GEN8_MI_STORE_REGISTER_MEM,
                      .RegisterAddress = TIMESTAMP,
                      .MemoryAddress = { bo, buffer->offset + destOffset });
+      anv_batch_emit(&cmd_buffer->batch, GEN8_MI_STORE_REGISTER_MEM,
+                     .RegisterAddress = TIMESTAMP + 4,
+                     .MemoryAddress = { bo, buffer->offset + destOffset + 4 });
       break;
 
    case VK_TIMESTAMP_TYPE_BOTTOM: