From: Brian Ho Date: Fri, 19 Jun 2020 16:47:08 +0000 (-0400) Subject: turnip: Fill out VkPhysicalDeviceSubgroupProperties X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=cca9aa4dfd5b72f6ed4eb78c012772f78cd1a641;p=mesa.git turnip: Fill out VkPhysicalDeviceSubgroupProperties This commit fills out VkPhysicalDeviceSubgroupProperties if present in a VkPhysicalDeviceProperties2. The values here are simply pulled from the blob. Fixes some flakes in dEQP-VK.subgroups.* since dEQP was reading uninitialized values of VkPhysicalDeviceSubgroupProperties. Part-of: --- diff --git a/src/freedreno/vulkan/tu_device.c b/src/freedreno/vulkan/tu_device.c index 27bfb464a4a..d7e3363a44f 100644 --- a/src/freedreno/vulkan/tu_device.c +++ b/src/freedreno/vulkan/tu_device.c @@ -948,6 +948,16 @@ tu_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice, properties->filterMinmaxSingleComponentFormats = true; break; } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: { + VkPhysicalDeviceSubgroupProperties *properties = + (VkPhysicalDeviceSubgroupProperties *)ext; + properties->subgroupSize = 64; + properties->supportedStages = VK_SHADER_STAGE_COMPUTE_BIT; + properties->supportedOperations = VK_SUBGROUP_FEATURE_BASIC_BIT | + VK_SUBGROUP_FEATURE_VOTE_BIT; + properties->quadOperationsInAllStages = false; + break; + } default: break;