Module: Mesa Branch: main Commit: 2854dca89836ac0d4f2cf40cb2b0ac393e17ac0d URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2854dca89836ac0d4f2cf40cb2b0ac393e17ac0d
Author: Alyssa Rosenzweig <[email protected]> Date: Thu Feb 9 19:16:22 2023 -0500 tu,vulkan: Add common Get*OpaqueCaptureDescriptorDataEXT In both tu and radv, these are all trivial. Move the trivial implementation from tu to common code to deduplicate the boilerplate. Signed-off-by: Alyssa Rosenzweig <[email protected]> Reviewed-by; Samuel Pitoiset <[email protected]> Reviewed-by: Faith Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21230> --- src/freedreno/vulkan/tu_descriptor_set.c | 45 ------------------------------ src/vulkan/runtime/vk_descriptors.c | 47 ++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 45 deletions(-) diff --git a/src/freedreno/vulkan/tu_descriptor_set.c b/src/freedreno/vulkan/tu_descriptor_set.c index 9c99ca712b2..4c0b8f23b51 100644 --- a/src/freedreno/vulkan/tu_descriptor_set.c +++ b/src/freedreno/vulkan/tu_descriptor_set.c @@ -1197,51 +1197,6 @@ tu_GetDescriptorEXT( } } -/* We don't have any mutable state in buffers, images, image views, or - * samplers, so we shouldn't need to save/restore anything to get the same - * descriptor back as long as the user uses the same iova. - */ - -VKAPI_ATTR VkResult VKAPI_CALL -tu_GetBufferOpaqueCaptureDescriptorDataEXT(VkDevice device, - const VkBufferCaptureDescriptorDataInfoEXT *pInfo, - void *pData) -{ - return VK_SUCCESS; -} - -VKAPI_ATTR VkResult VKAPI_CALL -tu_GetImageOpaqueCaptureDescriptorDataEXT(VkDevice device, - const VkImageCaptureDescriptorDataInfoEXT *pInfo, - void *pData) -{ - return VK_SUCCESS; -} - -VKAPI_ATTR VkResult VKAPI_CALL -tu_GetImageViewOpaqueCaptureDescriptorDataEXT(VkDevice device, - const VkImageViewCaptureDescriptorDataInfoEXT *pInfo, - void *pData) -{ - return VK_SUCCESS; -} - -VKAPI_ATTR VkResult VKAPI_CALL -tu_GetSamplerOpaqueCaptureDescriptorDataEXT(VkDevice _device, - const VkSamplerCaptureDescriptorDataInfoEXT *pInfo, - void *pData) -{ - return VK_SUCCESS; -} - -VKAPI_ATTR VkResult VKAPI_CALL -tu_GetAccelerationStructureOpaqueCaptureDescriptorDataEXT(VkDevice device, - const VkAccelerationStructureCaptureDescriptorDataInfoEXT *pInfo, - void *pData) -{ - return VK_SUCCESS; -} - void tu_update_descriptor_sets(const struct tu_device *device, VkDescriptorSet dstSetOverride, diff --git a/src/vulkan/runtime/vk_descriptors.c b/src/vulkan/runtime/vk_descriptors.c index 7aee7e82124..ff79db9b390 100644 --- a/src/vulkan/runtime/vk_descriptors.c +++ b/src/vulkan/runtime/vk_descriptors.c @@ -25,6 +25,7 @@ #include <stdlib.h> #include <string.h> #include "vk_descriptors.h" +#include "vk_common_entrypoints.h" #include "util/macros.h" static int @@ -54,3 +55,49 @@ vk_create_sorted_bindings(const VkDescriptorSetLayoutBinding *bindings, unsigned return VK_SUCCESS; } + +/* + * For drivers that don't have mutable state in buffers, images, image views, or + * samplers, there's no need to save/restore anything to get the same + * descriptor back as long as the user uses the same GPU virtual address. In + * this case, the following EXT_descriptor_buffer functions are trivial. + */ +VKAPI_ATTR VkResult VKAPI_CALL +vk_common_GetBufferOpaqueCaptureDescriptorDataEXT(VkDevice device, + const VkBufferCaptureDescriptorDataInfoEXT *pInfo, + void *pData) +{ + return VK_SUCCESS; +} + +VKAPI_ATTR VkResult VKAPI_CALL +vk_common_GetImageOpaqueCaptureDescriptorDataEXT(VkDevice device, + const VkImageCaptureDescriptorDataInfoEXT *pInfo, + void *pData) +{ + return VK_SUCCESS; +} + +VKAPI_ATTR VkResult VKAPI_CALL +vk_common_GetImageViewOpaqueCaptureDescriptorDataEXT(VkDevice device, + const VkImageViewCaptureDescriptorDataInfoEXT *pInfo, + void *pData) +{ + return VK_SUCCESS; +} + +VKAPI_ATTR VkResult VKAPI_CALL +vk_common_GetSamplerOpaqueCaptureDescriptorDataEXT(VkDevice _device, + const VkSamplerCaptureDescriptorDataInfoEXT *pInfo, + void *pData) +{ + return VK_SUCCESS; +} + +VKAPI_ATTR VkResult VKAPI_CALL +vk_common_GetAccelerationStructureOpaqueCaptureDescriptorDataEXT(VkDevice device, + const VkAccelerationStructureCaptureDescriptorDataInfoEXT *pInfo, + void *pData) +{ + return VK_SUCCESS; +}
