Module: Mesa Branch: main Commit: 289149ebcb5fb86bcc666c48c4228b0773d11ccd URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=289149ebcb5fb86bcc666c48c4228b0773d11ccd
Author: Faith Ekstrand <[email protected]> Date: Sat Dec 9 18:08:57 2023 -0600 nvk: Simplify alignment limit plumbing We dont't need this whole function just for advertising alignment requirements. We now have enough #defines and helpers that they map pretty cleanly to those. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26617> --- src/nouveau/vulkan/nvk_buffer.c | 10 +++++----- src/nouveau/vulkan/nvk_buffer.h | 5 ----- src/nouveau/vulkan/nvk_physical_device.c | 11 +++-------- 3 files changed, 8 insertions(+), 18 deletions(-) diff --git a/src/nouveau/vulkan/nvk_buffer.c b/src/nouveau/vulkan/nvk_buffer.c index f6913dacfa8..38328ea1ec5 100644 --- a/src/nouveau/vulkan/nvk_buffer.c +++ b/src/nouveau/vulkan/nvk_buffer.c @@ -9,15 +9,15 @@ #include "nvk_device_memory.h" #include "nvk_physical_device.h" -uint32_t -nvk_get_buffer_alignment(UNUSED const struct nv_device_info *info, +static uint32_t +nvk_get_buffer_alignment(const struct nvk_physical_device *pdev, VkBufferUsageFlags2KHR usage_flags, VkBufferCreateFlags create_flags) { uint32_t alignment = 16; if (usage_flags & VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHR) - alignment = MAX2(alignment, nvk_min_cbuf_alignment(info)); + alignment = MAX2(alignment, nvk_min_cbuf_alignment(&pdev->info)); if (usage_flags & VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHR) alignment = MAX2(alignment, NVK_MIN_SSBO_ALIGNMENT); @@ -94,7 +94,7 @@ nvk_CreateBuffer(VkDevice device, (buffer->vk.create_flags & (VK_BUFFER_CREATE_SPARSE_BINDING_BIT | VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT))) { const uint32_t alignment = - nvk_get_buffer_alignment(&nvk_device_physical(dev)->info, + nvk_get_buffer_alignment(nvk_device_physical(dev), buffer->vk.usage, buffer->vk.create_flags); assert(alignment >= 4096); @@ -159,7 +159,7 @@ nvk_GetDeviceBufferMemoryRequirements( VK_FROM_HANDLE(nvk_device, dev, device); const uint32_t alignment = - nvk_get_buffer_alignment(&nvk_device_physical(dev)->info, + nvk_get_buffer_alignment(nvk_device_physical(dev), pInfo->pCreateInfo->usage, pInfo->pCreateInfo->flags); diff --git a/src/nouveau/vulkan/nvk_buffer.h b/src/nouveau/vulkan/nvk_buffer.h index 971adaea7e8..e7cf68f328c 100644 --- a/src/nouveau/vulkan/nvk_buffer.h +++ b/src/nouveau/vulkan/nvk_buffer.h @@ -14,11 +14,6 @@ struct nvk_device_memory; struct nvk_physical_device; -uint32_t ATTRIBUTE_PURE -nvk_get_buffer_alignment(const struct nv_device_info *info, - VkBufferUsageFlags2KHR usage_flags, - VkBufferCreateFlags create_flags); - struct nvk_buffer { struct vk_buffer vk; uint64_t addr; diff --git a/src/nouveau/vulkan/nvk_physical_device.c b/src/nouveau/vulkan/nvk_physical_device.c index db2f356c660..b8f9fbec99e 100644 --- a/src/nouveau/vulkan/nvk_physical_device.c +++ b/src/nouveau/vulkan/nvk_physical_device.c @@ -578,14 +578,9 @@ nvk_get_device_properties(const struct nvk_instance *instance, .viewportBoundsRange = { -65536, 65536 }, .viewportSubPixelBits = 8, .minMemoryMapAlignment = 64, - .minTexelBufferOffsetAlignment = - nvk_get_buffer_alignment(info, VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR | - VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHR, - 0), - .minUniformBufferOffsetAlignment = - nvk_get_buffer_alignment(info, VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHR, 0), - .minStorageBufferOffsetAlignment = - nvk_get_buffer_alignment(info, VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHR, 0), + .minTexelBufferOffsetAlignment = NVK_MIN_TEXEL_BUFFER_ALIGNMENT, + .minUniformBufferOffsetAlignment = nvk_min_cbuf_alignment(info), + .minStorageBufferOffsetAlignment = NVK_MIN_SSBO_ALIGNMENT, .minTexelOffset = -8, .maxTexelOffset = 7, .minTexelGatherOffset = -32,
