vk/vulkan.h: Add packing parameters to BufferImageCopy
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 8 Jul 2015 18:51:12 +0000 (11:51 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Wed, 8 Jul 2015 18:51:34 +0000 (11:51 -0700)
include/vulkan/vulkan.h
src/vulkan/meta.c

index 99489fe58cc7ae5e7e7a925d8e153dde5cf9083e..2c45b201e153303112396f1b82a591f78ca14fb7 100644 (file)
@@ -1741,6 +1741,8 @@ typedef struct {
 
 typedef struct {
     VkDeviceSize                                bufferOffset;
+    uint32_t                                    bufferRowLength;
+    uint32_t                                    bufferImageHeight;
     VkImageSubresource                          imageSubresource;
     VkOffset3D                                  imageOffset;
     VkExtent3D                                  imageExtent;
index 37c8421a46eff4aaaea2c6f87022fe778445d6a5..b759510e9928f5a8fefcb526a4579fe14c2053a3 100644 (file)
@@ -995,6 +995,11 @@ void anv_CmdCopyBufferToImage(
    meta_prepare_blit(cmd_buffer, &saved_state);
 
    for (unsigned r = 0; r < regionCount; r++) {
+      if (pRegions[r].bufferRowLength != 0)
+         anv_finishme("bufferRowLength not supported in CopyBufferToImage");
+      if (pRegions[r].bufferImageHeight != 0)
+         anv_finishme("bufferImageHeight not supported in CopyBufferToImage");
+
       struct anv_image *src_image;
       anv_CreateImage(vk_device,
          &(VkImageCreateInfo) {
@@ -1087,6 +1092,11 @@ void anv_CmdCopyImageToBuffer(
    meta_prepare_blit(cmd_buffer, &saved_state);
 
    for (unsigned r = 0; r < regionCount; r++) {
+      if (pRegions[r].bufferRowLength != 0)
+         anv_finishme("bufferRowLength not supported in CopyBufferToImage");
+      if (pRegions[r].bufferImageHeight != 0)
+         anv_finishme("bufferImageHeight not supported in CopyBufferToImage");
+
       struct anv_surface_view src_view;
       anv_image_view_init(&src_view, cmd_buffer->device,
          &(VkImageViewCreateInfo) {