From 8dee32e71f0ccbdf2b9404fe553a83da8bea79dc Mon Sep 17 00:00:00 2001 From: Chad Versace Date: Wed, 7 Oct 2015 10:58:55 -0700 Subject: [PATCH] vk/0.170: Update VkDescriptorInfo Ignore the new bufferInfo field with a anv_finishme. --- include/vulkan/vulkan.h | 7 +++++++ src/vulkan/anv_device.c | 10 ++++++++++ 2 files changed, 17 insertions(+) diff --git a/include/vulkan/vulkan.h b/include/vulkan/vulkan.h index 89963aea55c..dcba29cb426 100644 --- a/include/vulkan/vulkan.h +++ b/include/vulkan/vulkan.h @@ -1843,11 +1843,18 @@ typedef struct { const VkDescriptorTypeCount* pTypeCount; } VkDescriptorPoolCreateInfo; +typedef struct { + VkBuffer buffer; + VkDeviceSize offset; + VkDeviceSize range; +} VkDescriptorBufferInfo; + typedef struct { VkBufferView bufferView; VkSampler sampler; VkImageView imageView; VkImageLayout imageLayout; + VkDescriptorBufferInfo bufferInfo; } VkDescriptorInfo; typedef struct { diff --git a/src/vulkan/anv_device.c b/src/vulkan/anv_device.c index dd0aac48303..b12fabc2007 100644 --- a/src/vulkan/anv_device.c +++ b/src/vulkan/anv_device.c @@ -1701,6 +1701,16 @@ void anv_UpdateDescriptorSets( const VkWriteDescriptorSet *write = &pDescriptorWrites[i]; ANV_FROM_HANDLE(anv_descriptor_set, set, write->destSet); + for (uint32_t j = 0; j < write->count; ++j) { + const VkDescriptorBufferInfo *binfo + = &write->pDescriptors[j].bufferInfo; + + if (binfo->buffer.handle || binfo->offset || binfo->range) { + anv_finishme("VkWriteDesciptorSet::bufferInfo"); + break; + } + } + switch (write->descriptorType) { case VK_DESCRIPTOR_TYPE_SAMPLER: case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER: -- 2.30.2