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

Author: Samuel Pitoiset <[email protected]>
Date:   Tue Nov  8 17:43:18 2022 +0100

radv: advertise VK_EXT_image_sliced_view_of_3d on GFX10+

Pass dEQP-VK.pipeline.monolithic.sliced_view_of_3d_image.* on NAVI21.

Looks like older generations can't support it.

Signed-off-by: Samuel Pitoiset <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21359>

---

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

diff --git a/docs/features.txt b/docs/features.txt
index c0cdbe4c02e..0d550fcec26 100644
--- a/docs/features.txt
+++ b/docs/features.txt
@@ -561,6 +561,7 @@ Khronos extensions that are not part of any Vulkan version:
   VK_EXT_graphics_pipeline_library                      DONE (lvp)
   VK_EXT_image_2d_view_of_3d                            DONE (anv, radv, tu, 
lvp)
   VK_EXT_image_drm_format_modifier                      DONE (anv, radv/gfx9+, 
tu, v3dv, vn)
+  VK_EXT_image_sliced_view_of_3d                        DONE (radv/gfx10+)
   VK_EXT_image_view_min_lod                             DONE (anv, radv, tu, 
vn)
   VK_EXT_index_type_uint8                               DONE (anv, lvp, panvk, 
radv/gfx8+, v3dv, tu, vn)
   VK_EXT_line_rasterization                             DONE (anv, lvp, radv, 
tu, v3dv, vn)
diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt
index a4539452674..1a11d5dbe1b 100644
--- a/docs/relnotes/new_features.txt
+++ b/docs/relnotes/new_features.txt
@@ -1 +1,2 @@
 VK_EXT_pipeline_library_group_handles on RADV
+VK_EXT_image_sliced_view_of_3d on RADV/GFX10+
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 4d79a13b457..7b8fabda868 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -613,6 +613,7 @@ radv_physical_device_get_supported_extensions(const struct 
radv_physical_device
       .EXT_image_2d_view_of_3d = true,
       .EXT_image_drm_format_modifier = device->rad_info.gfx_level >= GFX9,
       .EXT_image_robustness = true,
+      .EXT_image_sliced_view_of_3d = device->rad_info.gfx_level >= GFX10,
       .EXT_image_view_min_lod = true,
       .EXT_index_type_uint8 = device->rad_info.gfx_level >= GFX8,
       .EXT_inline_uniform_block = true,
@@ -2015,6 +2016,12 @@ radv_GetPhysicalDeviceFeatures2(VkPhysicalDevice 
physicalDevice,
          features->shaderEarlyAndLateFragmentTests = true;
          break;
       }
+      case 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT: {
+         VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT *features =
+            (VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT *)ext;
+         features->imageSlicedViewOf3D = true;
+         break;
+      }
       default:
          break;
       }

Reply via email to