Mesa (main): radv: advertise VK_KHR_maintenance4

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Oct 11 09:14:45 UTC 2021


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Tue Sep 21 08:44:56 2021 +0200

radv: advertise VK_KHR_maintenance4

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13193>

---

 docs/relnotes/new_features.txt |  3 ++-
 src/amd/vulkan/radv_device.c   | 13 +++++++++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt
index cb5e9be7ec1..442cb309fda 100644
--- a/docs/relnotes/new_features.txt
+++ b/docs/relnotes/new_features.txt
@@ -16,4 +16,5 @@ VK_KHR_shader_subgroup_extended_types on lavapipe
 VK_KHR_spirv_1_4 on lavapipe
 Experimental raytracing support on RADV
 VK_KHR_synchronization2 on Intel
-NGG shader based culling is now enabled by default on GFX10.3 on RADV.
\ No newline at end of file
+NGG shader based culling is now enabled by default on GFX10.3 on RADV.
+VK_KHR_maintenance4 on RADV
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 8a79a9cdc21..7985cd93218 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -434,6 +434,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device
       .KHR_maintenance1 = true,
       .KHR_maintenance2 = true,
       .KHR_maintenance3 = true,
+      .KHR_maintenance4 = true,
       .KHR_multiview = true,
       .KHR_pipeline_executable_properties = true,
       .KHR_pipeline_library = (device->instance->perftest_flags & RADV_PERFTEST_RT) && !device->use_llvm,
@@ -1615,6 +1616,12 @@ radv_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
          features->rayTraversalPrimitiveCulling = false;
          break;
       }
+      case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR: {
+         VkPhysicalDeviceMaintenance4FeaturesKHR *features =
+            (VkPhysicalDeviceMaintenance4FeaturesKHR *)ext;
+         features->maintenance4 = true;
+         break;
+      }
       default:
          break;
       }
@@ -2248,6 +2255,12 @@ radv_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
          props->maxRayHitAttributeSize = RADV_MAX_HIT_ATTRIB_SIZE;
          break;
       }
+      case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR: {
+         VkPhysicalDeviceMaintenance4PropertiesKHR *properties =
+            (VkPhysicalDeviceMaintenance4PropertiesKHR *)ext;
+         properties->maxBufferSize = RADV_MAX_MEMORY_ALLOCATION_SIZE;
+         break;
+      }
       default:
          break;
       }



More information about the mesa-commit mailing list