From: Dave Airlie Date: Sat, 28 May 2022 22:14:51 +0000 (+1000) Subject: nvk: add bind buffer memory X-Git-Tag: upstream/23.3.3~4608 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=787fbe85b93aa4d6fe7ca5307586d0050d41ff05;p=platform%2Fupstream%2Fmesa.git nvk: add bind buffer memory Part-of: --- diff --git a/src/nouveau/vulkan/nvk_buffer.c b/src/nouveau/vulkan/nvk_buffer.c index ccd53fd..8b534d6 100644 --- a/src/nouveau/vulkan/nvk_buffer.c +++ b/src/nouveau/vulkan/nvk_buffer.c @@ -1,6 +1,7 @@ #include "nvk_buffer.h" #include "nvk_device.h" +#include "nvk_device_memory.h" #include "nvk_physical_device.h" VKAPI_ATTR VkResult VKAPI_CALL nvk_CreateBuffer(VkDevice _device, @@ -55,3 +56,17 @@ VKAPI_ATTR void VKAPI_CALL nvk_GetBufferMemoryRequirements2( } } } + +VKAPI_ATTR VkResult VKAPI_CALL +nvk_BindBufferMemory2(VkDevice _device, uint32_t bindInfoCount, + const VkBindBufferMemoryInfo *pBindInfos) +{ + for (uint32_t i = 0; i < bindInfoCount; ++i) { + VK_FROM_HANDLE(nvk_device_memory, mem, pBindInfos[i].memory); + VK_FROM_HANDLE(nvk_buffer, buffer, pBindInfos[i].buffer); + + buffer->mem = mem; + buffer->offset = pBindInfos[i].memoryOffset; + } + return VK_SUCCESS; +} diff --git a/src/nouveau/vulkan/nvk_buffer.h b/src/nouveau/vulkan/nvk_buffer.h index 6914bd0..ba12e38 100644 --- a/src/nouveau/vulkan/nvk_buffer.h +++ b/src/nouveau/vulkan/nvk_buffer.h @@ -5,8 +5,12 @@ #include "vulkan/runtime/vk_buffer.h" +struct nvk_device_memory; + struct nvk_buffer { struct vk_buffer vk; + struct nvk_device_memory *mem; + VkDeviceSize offset; }; VK_DEFINE_HANDLE_CASTS(nvk_buffer, vk.base, VkBuffer, VK_OBJECT_TYPE_BUFFER)