diff --git a/src/nouveau/vulkan/nvk_buffer_view.c b/src/nouveau/vulkan/nvk_buffer_view.c index 428ea78ef1b..12687f48054 100644 --- a/src/nouveau/vulkan/nvk_buffer_view.c +++ b/src/nouveau/vulkan/nvk_buffer_view.c @@ -13,6 +13,8 @@ #include "vk_format.h" +#include "clb097.h" + VkFormatFeatureFlags2 nvk_get_buffer_format_features(struct nvk_physical_device *pdev, VkFormat vk_format) @@ -29,6 +31,8 @@ nvk_get_buffer_format_features(struct nvk_physical_device *pdev, if (nil_format_supports_storage(&pdev->info, p_format)) { features |= VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT | VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT; + if (pdev->info.cls_eng3d >= MAXWELL_A) + features |= VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT; } if (p_format == PIPE_FORMAT_R32_UINT || p_format == PIPE_FORMAT_R32_SINT)