Module: Mesa
Branch: main
Commit: e5b7e16f3b479501c5999828ee5eedace8b7493e
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e5b7e16f3b479501c5999828ee5eedace8b7493e

Author: Faith Ekstrand <[email protected]>
Date:   Tue Dec  5 22:15:00 2023 -0600

nvk: Implement VK_EXT_texel_buffer_alignment

These values are taken from the blob.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9618
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26545>

---

 src/nouveau/vulkan/nvk_physical_device.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/nouveau/vulkan/nvk_physical_device.c 
b/src/nouveau/vulkan/nvk_physical_device.c
index b1592d77565..99239c39809 100644
--- a/src/nouveau/vulkan/nvk_physical_device.c
+++ b/src/nouveau/vulkan/nvk_physical_device.c
@@ -176,6 +176,7 @@ nvk_get_device_extensions(const struct nv_device_info *info,
       .EXT_shader_subgroup_vote = true,
       .EXT_shader_viewport_index_layer = info->cls_eng3d >= MAXWELL_B,
       .EXT_subgroup_size_control = true,
+      .EXT_texel_buffer_alignment = true,
       .EXT_tooling_info = true,
       .EXT_transform_feedback = true,
       .EXT_vertex_attribute_divisor = true,
@@ -456,6 +457,9 @@ nvk_get_device_features(const struct nv_device_info *info,
       .sparseImageInt64Atomics = info->cls_eng3d >= MAXWELL_A &&
                                  nvk_use_nak(info),
 
+      /* VK_EXT_texel_buffer_alignment */
+      .texelBufferAlignment = true,
+
       /* VK_EXT_transform_feedback */
       .transformFeedback = true,
       .geometryStreams = true,
@@ -685,6 +689,10 @@ nvk_get_device_properties(const struct nvk_instance 
*instance,
       .maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = 32,
       .maxDescriptorSetInlineUniformBlocks = 6 * 32,
       .maxDescriptorSetUpdateAfterBindInlineUniformBlocks = 6 * 32,
+      .storageTexelBufferOffsetAlignmentBytes = 16,
+      .storageTexelBufferOffsetSingleTexelAlignment = true,
+      .uniformTexelBufferOffsetAlignmentBytes = 16,
+      .uniformTexelBufferOffsetSingleTexelAlignment = true,
       .maxBufferSize = NVK_MAX_BUFFER_SIZE,
 
       /* VK_KHR_push_descriptor */

Reply via email to