From 8de37b142ec4c76d579016e838528b461a4a6285 Mon Sep 17 00:00:00 2001 From: Faith Ekstrand Date: Wed, 26 Feb 2025 10:45:17 -0600 Subject: [PATCH] nvk: Only support compute shader derivatives on Turing+ Fixes: e0e7d8d910e0 ("nvk: Advertise VK_NV/KHR_compute_shader_derivatives") Part-of: --- src/nouveau/vulkan/nvk_physical_device.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/nouveau/vulkan/nvk_physical_device.c b/src/nouveau/vulkan/nvk_physical_device.c index 77961a8a12b..e0814ac7435 100644 --- a/src/nouveau/vulkan/nvk_physical_device.c +++ b/src/nouveau/vulkan/nvk_physical_device.c @@ -106,7 +106,8 @@ nvk_get_device_extensions(const struct nvk_instance *instance, .KHR_bind_memory2 = true, .KHR_buffer_device_address = true, .KHR_calibrated_timestamps = true, - .KHR_compute_shader_derivatives = nvk_use_nak(info), + .KHR_compute_shader_derivatives = nvk_use_nak(info) && + info->cls_eng3d >= TURING_A, .KHR_copy_commands2 = true, .KHR_create_renderpass2 = true, .KHR_dedicated_allocation = true, @@ -289,7 +290,8 @@ nvk_get_device_extensions(const struct nvk_instance *instance, .GOOGLE_hlsl_functionality1 = true, .GOOGLE_user_type = true, .MESA_image_alignment_control = true, - .NV_compute_shader_derivatives = nvk_use_nak(info), + .NV_compute_shader_derivatives = nvk_use_nak(info) && + info->cls_eng3d >= TURING_A, .NV_shader_sm_builtins = true, .VALVE_mutable_descriptor_type = true, }; @@ -459,8 +461,8 @@ nvk_get_device_features(const struct nv_device_info *info, .pushDescriptor = true, /* VK_KHR_compute_shader_derivatives */ - .computeDerivativeGroupQuads = true, - .computeDerivativeGroupLinear = true, + .computeDerivativeGroupQuads = info->cls_eng3d >= TURING_A, + .computeDerivativeGroupLinear = info->cls_eng3d >= TURING_A, /* VK_KHR_fragment_shader_barycentric */ .fragmentShaderBarycentric = info->cls_eng3d >= TURING_A &&