vulkan: Add a common implementation of GetPhysicalDeviceDescriptorSizeKHR

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40649>
This commit is contained in:
Faith Ekstrand 2025-06-11 14:30:56 -04:00 committed by Marge Bot
parent 2c444c17db
commit 191d2b37de

View file

@ -325,3 +325,33 @@ vk_common_GetPhysicalDeviceToolProperties(VkPhysicalDevice physicalDevice,
return vk_outarray_status(&out);
}
VKAPI_ATTR VkDeviceSize VKAPI_CALL
vk_common_GetPhysicalDeviceDescriptorSizeEXT(VkPhysicalDevice physicalDevice,
VkDescriptorType descriptorType)
{
VK_FROM_HANDLE(vk_physical_device, pdevice, physicalDevice);
switch (descriptorType) {
case VK_DESCRIPTOR_TYPE_SAMPLER:
return pdevice->properties.samplerDescriptorSize;
case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE:
case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
case VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM:
case VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM:
return pdevice->properties.imageDescriptorSize;
case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER:
case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR:
case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
return pdevice->properties.bufferDescriptorSize;
default:
UNREACHABLE("Invalid descriptor type in GetPhysicalDeviceDescriptorSizeEXT");
}
}