From e2379a2e87ac2ffbfc2e3e65e5f133be9fa680ff Mon Sep 17 00:00:00 2001 From: Faith Ekstrand Date: Wed, 3 May 2023 18:14:09 -0500 Subject: [PATCH] nvk: Advertise shaderStorageImageReadWithoutFormat Part-of: --- src/nouveau/vulkan/nvk_image.c | 1 + src/nouveau/vulkan/nvk_physical_device.c | 2 +- src/nouveau/vulkan/nvk_shader.c | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/nouveau/vulkan/nvk_image.c b/src/nouveau/vulkan/nvk_image.c index 6ecdd15aa10..1c9a2dafd9a 100644 --- a/src/nouveau/vulkan/nvk_image.c +++ b/src/nouveau/vulkan/nvk_image.c @@ -65,6 +65,7 @@ nvk_get_image_format_features(struct nvk_physical_device *pdev, if (nil_format_supports_storage(&pdev->info, p_format)) { features |= VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT | + VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT | VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT; } diff --git a/src/nouveau/vulkan/nvk_physical_device.c b/src/nouveau/vulkan/nvk_physical_device.c index eef49db809e..1996a692e4c 100644 --- a/src/nouveau/vulkan/nvk_physical_device.c +++ b/src/nouveau/vulkan/nvk_physical_device.c @@ -374,7 +374,7 @@ nvk_get_device_features(const struct nv_device_info *dev, .shaderImageGatherExtended = true, .shaderStorageImageExtendedFormats = true, /* TODO: shaderStorageImageMultisample */ - /* TODO: shaderStorageImageReadWithoutFormat */ + .shaderStorageImageReadWithoutFormat = true, .shaderStorageImageWriteWithoutFormat = true, .shaderUniformBufferArrayDynamicIndexing = true, .shaderSampledImageArrayDynamicIndexing = true, diff --git a/src/nouveau/vulkan/nvk_shader.c b/src/nouveau/vulkan/nvk_shader.c index fb38ac818b0..64e50a23331 100644 --- a/src/nouveau/vulkan/nvk_shader.c +++ b/src/nouveau/vulkan/nvk_shader.c @@ -68,6 +68,7 @@ nvk_physical_device_spirv_options(const struct nvk_physical_device *pdevice, .demote_to_helper_invocation = true, .draw_parameters = true, .geometry_streams = true, + .image_read_without_format = true, .image_write_without_format = true, .min_lod = true, .multiview = true,