Mesa (main): radv: Expose the VK_KHR_dynamic_rendering extension.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sun Dec 5 17:56:10 UTC 2021


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

Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Mon Nov  1 16:36:44 2021 +0100

radv: Expose the VK_KHR_dynamic_rendering extension.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13721>

---

 docs/features.txt              |  2 +-
 docs/relnotes/new_features.txt |  2 +-
 src/amd/vulkan/radv_device.c   | 13 +++++++++++--
 3 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/docs/features.txt b/docs/features.txt
index f9792f0f96b..9357529e64c 100644
--- a/docs/features.txt
+++ b/docs/features.txt
@@ -477,7 +477,7 @@ Khronos extensions that are not part of any Vulkan version:
   VK_KHR_deferred_host_operations                       DONE (anv, radv)
   VK_KHR_display                                        DONE (anv, lvp, radv, tu, v3dv)
   VK_KHR_display_swapchain                              not started
-  VK_KHR_dynamic_rendering                              DONE (lvp)
+  VK_KHR_dynamic_rendering                              DONE (lvp, radv)
   VK_KHR_external_fence_fd                              DONE (anv, radv, tu, v3dv, vn)
   VK_KHR_external_fence_win32                           not started
   VK_KHR_external_memory_fd                             DONE (anv, lvp, radv, tu, v3dv, vn)
diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt
index 996508bca51..0cea82cfe3e 100644
--- a/docs/relnotes/new_features.txt
+++ b/docs/relnotes/new_features.txt
@@ -1,3 +1,3 @@
-lavapipe KHR_dynamic_rendering
+lavapipe,radv KHR_dynamic_rendering
 radv EXT_image_view_min_lod
 VK_KHR_synchronization2 on RADV.
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 59898ee656a..aac5f842b76 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -418,6 +418,7 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device
       .KHR_device_group = true,
       .KHR_draw_indirect_count = true,
       .KHR_driver_properties = true,
+      .KHR_dynamic_rendering = true,
       .KHR_external_fence = true,
       .KHR_external_fence_fd = true,
       .KHR_external_memory = true,
@@ -438,9 +439,11 @@ radv_physical_device_get_supported_extensions(const struct radv_physical_device
       .KHR_maintenance4 = true,
       .KHR_multiview = true,
       .KHR_pipeline_executable_properties = true,
-      .KHR_pipeline_library = (device->instance->perftest_flags & RADV_PERFTEST_RT) && !device->use_llvm,
+      .KHR_pipeline_library =
+         (device->instance->perftest_flags & RADV_PERFTEST_RT) && !device->use_llvm,
       .KHR_push_descriptor = true,
-      .KHR_ray_tracing_pipeline = (device->instance->perftest_flags & RADV_PERFTEST_RT) && !device->use_llvm,
+      .KHR_ray_tracing_pipeline =
+         (device->instance->perftest_flags & RADV_PERFTEST_RT) && !device->use_llvm,
       .KHR_relaxed_block_layout = true,
       .KHR_sampler_mirror_clamp_to_edge = true,
       .KHR_sampler_ycbcr_conversion = true,
@@ -1644,6 +1647,12 @@ radv_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice,
          features->synchronization2 = true;
          break;
       }
+      case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR: {
+         VkPhysicalDeviceDynamicRenderingFeaturesKHR *features =
+            (VkPhysicalDeviceDynamicRenderingFeaturesKHR *)ext;
+         features->dynamicRendering = true;
+         break;
+      }
       default:
          break;
       }



More information about the mesa-commit mailing list