Mesa (main): radv: advertise VK_EXT_primitive_topology_list_restart

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Aug 30 19:01:31 UTC 2021


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

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Fri Aug 27 17:16:55 2021 +0200

radv: advertise VK_EXT_primitive_topology_list_restart

Everything should be already supported, except patch list.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12611>

---

 docs/relnotes/new_features.txt | 1 +
 src/amd/vulkan/radv_device.c   | 8 ++++++++
 2 files changed, 9 insertions(+)

diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt
index ac5d90fc375..abd83b286f4 100644
--- a/docs/relnotes/new_features.txt
+++ b/docs/relnotes/new_features.txt
@@ -6,3 +6,4 @@ VK_KHR_timeline_semaphore on lavapipe
 VK_EXT_external_memory_host on lavapipe
 GL_AMD_pinned_memory on llvmpipe
 GL 4.5 compatibility on llvmpipe
+VK_EXT_primitive_topology_list_restart on RADV.
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index a4366192cbd..6bf2b80045c 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -486,6 +486,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device
       .EXT_pipeline_creation_cache_control = true,
       .EXT_pipeline_creation_feedback = true,
       .EXT_post_depth_coverage = device->rad_info.chip_class >= GFX10,
+      .EXT_primitive_topology_list_restart = true,
       .EXT_private_data = true,
       .EXT_provoking_vertex = true,
       .EXT_queue_family_foreign = true,
@@ -1692,6 +1693,13 @@ radv_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
          features->sparseImageFloat32AtomicMinMax = has_shader_float_minmax;
          break;
       }
+      case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: {
+         VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT *features =
+            (VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT *)ext;
+         features->primitiveTopologyListRestart = true;
+         features->primitiveTopologyPatchListRestart = false;
+         break;
+      }
       default:
          break;
       }



More information about the mesa-commit mailing list