panvk: Advertise VK_EXT_shader_tile_image

Enable the extension and its read-access features, gated to PAN_ARCH >= 9.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Lorenzo Rossi <lorenzo.rossi@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42043>
This commit is contained in:
Christian Gmeiner 2026-06-07 23:01:45 +02:00 committed by Marge Bot
parent 8358fb7cb8
commit dc02a63d21
3 changed files with 13 additions and 0 deletions

View file

@ -695,6 +695,7 @@ Khronos extensions that are not part of any Vulkan version:
VK_EXT_shader_stencil_export DONE (anv, hk, kk, lvp, panvk, radv, tu, vn)
VK_EXT_shader_subgroup_ballot DONE (anv, dzn, hasvk, hk, kk, lvp, nvk, panvk, pvr, radv, vn)
VK_EXT_shader_subgroup_vote DONE (anv, dzn, hasvk, hk, kk, lvp, nvk, panvk, pvr, radv, vn)
VK_EXT_shader_tile_image DONE (panvk/v9+)
VK_EXT_shader_uniform_buffer_unsized_array DONE (anv, hk, nvk, panvk, radv, tu, vn)
VK_EXT_surface_maintenance1 DONE (anv, hk, kk, lvp, nvk, panvk, radv, tu, v3dv, vn)
VK_EXT_swapchain_colorspace DONE (anv, hk, kk, lvp, nvk, radv, tu, v3dv, vn)

View file

@ -39,3 +39,4 @@ GL_OES_texture_float on etnaviv/HALF_FLOAT
GL_ARB_texture_float on etnaviv/HALF_FLOAT
VK_NVX_binary_import on NVK
VK_EXT_image_sliced_view_of_3d on panvk
VK_EXT_shader_tile_image on panvk

View file

@ -208,6 +208,7 @@ panvk_per_arch(get_physical_device_extensions)(
.EXT_shader_stencil_export = true,
.EXT_shader_subgroup_ballot = true,
.EXT_shader_subgroup_vote = true,
.EXT_shader_tile_image = PAN_ARCH >= 9,
.EXT_shader_uniform_buffer_unsized_array = true,
.EXT_subgroup_size_control = has_vk1_1,
#ifdef PANVK_USE_WSI_PLATFORM
@ -606,6 +607,11 @@ panvk_per_arch(get_physical_device_features)(
.robustImageAccess2 = false,
.nullDescriptor = PAN_ARCH >= 10,
/* VK_EXT_shader_tile_image */
.shaderTileImageColorReadAccess = PAN_ARCH >= 9,
.shaderTileImageDepthReadAccess = PAN_ARCH >= 9,
.shaderTileImageStencilReadAccess = PAN_ARCH >= 9,
/* VK_KHR_shader_clock */
.shaderSubgroupClock = device->kmod.dev->props.gpu_can_query_timestamp,
.shaderDeviceClock = device->kmod.dev->props.timestamp_device_coherent,
@ -1244,6 +1250,11 @@ panvk_per_arch(get_physical_device_properties)(
.provokingVertexModePerPipeline = false,
.transformFeedbackPreservesTriangleFanProvokingVertex = false,
/* VK_EXT_shader_tile_image */
.shaderTileImageCoherentReadAccelerated = PAN_ARCH >= 9,
.shaderTileImageReadSampleFromPixelRateInvocation = PAN_ARCH >= 9,
.shaderTileImageReadFromHelperInvocation = PAN_ARCH >= 9,
/* VK_ANDROID_native_buffer */
.sharedImage = vk_android_get_front_buffer_usage() != 0,