Commit graph

1372 commits

Author SHA1 Message Date
Yiwei Zhang
6865ff18ba kk: support VK_(KHR|EXT)_calibrated_timestamps
Use common implementation.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38965>
2025-12-16 18:30:21 +00:00
Christoph Pillmayer
8b6e4c68d6 panvk: Expose EXT_multisampled_render_to_single_sampled
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38825>
2025-12-16 08:22:23 +00:00
Luigi Santivetti
564bf2379e pvr: enable VK_KHR_dynamic_rendering
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38744>
2025-12-11 12:52:28 +00:00
Aitor Camacho
16a94b1b7f kk: Enable float16 and int8
Metal does not seem to respect memory coherency for threads. Workaround 6
enforces device coherency for global loads/stores even if it should not
be needed.

Reviewed-by: Arcady Goldmints-Orlov <arcady@lunarg.com>
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38847>
2025-12-11 10:30:39 +00:00
Ian Forbes
6beb92a0d4 svga: Enable GL_ARB_texture_mirror_clamp_to_edge
We've supported this via SVGA3D_TEX_ADDRESS_MIRRORONCE for years.
Lets enable it as it gets us slightly closer to GL 4.4.

Signed-off-by: Ian Forbes <ian.forbes@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38854>
2025-12-09 21:31:04 +00:00
Aitor Camacho
6d6634e805 kk: Expose 4444 and ycbcr 2plane 444 formats
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Extensions:
- VK_EXT_4444_formats
- VK_EXT_ycbcr_2plane_444_formats

Features:
- formatA4R4G4B4
- formatA4B4G4R4
- ycbcr2plane444Formats

Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38831>
2025-12-09 01:19:32 +00:00
Aitor Camacho
dd4a1a50f5 kk: Expose ASTC HDR formats
Extensions:
- VK_EXT_texture_compression_astc_hdr

Features:
- textureCompressionASTC_HDR

Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38831>
2025-12-09 01:19:31 +00:00
Aitor Camacho
5b039e0996 kk: Expose more features/extensions we already support
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Extensions:
- VK_KHR_load_store_op_none
- VK_KHR_map_memory2
- VK_EXT_load_store_op_none

Features:
- fullDrawIndexUint32
- inheritedQueries
- shaderStorageImageExtendedFormats

Reviewed-by: Arcady Goldmints-Orlov <arcady@lunarg.com>
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38783>
2025-12-04 18:21:02 +00:00
Yiwei Zhang
bb19e30e0d venus: add VK_EXT_mesh_shader support
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This fills in the last piece for vkd3d-proton feature level 12_2.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38739>
2025-12-03 07:21:53 +00:00
Eric R. Smith
6735fe939a panvk: enable ycbcr on bifrost
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This also enables EXT_image_drm_format_modifier, which depends on
ycbcr.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38145>
2025-12-01 13:22:40 +00:00
Hans-Kristian Arntzen
974dba2afe vulkan/wsi: Promote EXT_swapchain/surface_maintenance1.
No spec changes, just update the enums and types.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37157>
2025-11-30 10:30:52 +01:00
Yiwei Zhang
6b9c4535f9 venus: support VK_EXT_shader_uniform_buffer_unsized_array
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38722>
2025-11-30 08:09:20 +00:00
Yiwei Zhang
918f81ff05 venus: support VK_EXT_shader_float8
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38722>
2025-11-30 08:09:20 +00:00
Yiwei Zhang
d1181b6cb7 venus: support VK_KHR_shader_untyped_pointers
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38722>
2025-11-30 08:09:20 +00:00
Yiwei Zhang
7949aeafaf venus: support VK_KHR_shader_bfloat16
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38722>
2025-11-30 08:09:19 +00:00
Yiwei Zhang
219bb0e01e venus: support VK_KHR_cooperative_matrix
Tested with dEQP-VK.compute.pipeline.cooperative_matrix.* on anv with
INTEL_LOWER_DPAS=true

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38722>
2025-11-30 08:09:19 +00:00
Yiwei Zhang
a6ade961b2 venus: implement VK_EXT_map_memory_placed
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38706>
2025-11-28 16:38:26 +00:00
Christian Gmeiner
d7fff632cd lavapipe: Trivially expose VK_GOOGLE_user_type extension
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
There's nothing for the driver to do; it's all handled in spirv_to_nir.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Acked-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38574>
2025-11-27 20:52:17 +00:00
Yiwei Zhang
73e8d6533e docs: add VK_KHR_robustness2 and supported drivers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38690>
2025-11-27 19:51:28 +00:00
Aitor Camacho
87b81b7385 kk: Exposes more extensions/features we already supported
Extensions:
- VK_KHR_sampler_mirror_clamp_to_edge

Features:
- alphaToOne
- samplerMirrorClampToEdge
- shaderStorageImageArrayNonUniformIndexing
- shaderStorageTexelBufferArrayNonUniformIndexing
- shaderUniformBufferArrayNonUniformIndexing

Reviewed-by: Arcady Goldmints-Orlov <arcady@lunarg.com>
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38591>
2025-11-24 10:40:48 +00:00
spencer-lunarg
77030f296e lavapipe: Expose EXT version of global_priority
We already supported 1.4 which has VK_KHR_global_priority and the
globalPriorityQuery feature.

tested with:
dEQP-VK.api.device_init.create_device_global_priority*
dEQP-VK.synchronization.global_priority_transition.*

Signed-off-by: spencer-lunarg <spencer@lunarg.com>
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38340>
2025-11-24 07:29:24 +00:00
Aitor Camacho
abc719f01f kk: Add multiViewport and EXT_shader_viewport_index_layer support
Reviewed-by: Arcady Goldmints-Orlov <arcady@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38518>
2025-11-19 23:29:00 +00:00
Erik Faye-Lund
ba3a0c580f zink: only expose rgba buffer-textures
Unlike textures, we can't easily do format-conversion of the data
before, because the source is a buffer object and not a texture object.

But we already have a hammer for this in Mesa, which means we'll drop
the ARB_texture_buffer_object extension support, but only for the OpenGL
compatibility profile. We still get GL 4.6, both core and compatibility.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38162>
2025-11-19 09:10:19 +00:00
Erik Faye-Lund
73b1ea4491 panfrost: only expose rgba buffer-textures
Unlike textures, we can't easily do format-conversion of the data
before, because the source is a buffer object and not a texture object.

But we already have a hammer for this in Mesa, which means we'll drop
the ARB_texture_buffer_object extension support, but only for the OpenGL
compatibility profile. We still get GL 3.1 exposed.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38162>
2025-11-19 09:10:19 +00:00
Erik Faye-Lund
08b5876c37 v3d: only expose rgba buffer-textures
Unlike textures, we can't easily do format-conversion of the data
before, because the source is a buffer object and not a texture object.

But we already have a hammer for this in Mesa, which means we'll drop
the ARB_texture_buffer_object extension support, but only for the OpenGL
compatibility profile. We still get GL 3.2 exposed.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38162>
2025-11-19 09:10:18 +00:00
Erik Faye-Lund
70f1603125 mesa/main: do not check for ARB_texture_buffer_object for GL 3.1
While OpenGL 3.1 does require texture buffer objects, the ARB spec for
this requires support for texture buffers with alpha, luminance,
luminance-alpha and intensity formats in addition to RGBA formats. The
version of texture buffer objects that ended up in the OpenGL spec (even
in the compatibility spec) does not require these formats.

But, we don't even need to check this, because this is already included
in the GLSL 1.40 requirement that's also checked. So this shouldn't make
us expose GL 3.1 in cases where it isn't supported in the first place.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38162>
2025-11-19 09:10:17 +00:00
Ryan Mckeever
298ad17b81 panfrost: enable EXT_shader_pixel_local_storage
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37110>
2025-11-18 20:25:43 +00:00
Samuel Pitoiset
9f512d8f93 radv: advertise VK_EXT_custom_resolve
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38442>
2025-11-18 17:03:13 +00:00
Christian Gmeiner
adf881cd3e etnaviv: Add support for ARB_vertex_type_2_10_10_10_rev
This extension seems to be supported on GC3000 (HALTI2) and later hardware.
While no explicit feature bit documents this capability, testing
confirms that the required vertex formats work correctly on these GPUs.

This patch adds the missing B10G10R10A2 vertex format variants
(UNORM, SNORM, USCALED, SSCALED), gates support behind the HALTI2
feature check, and updates features.txt to reflect the new capability.

All relevant piglit tests pass.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38446>
2025-11-17 21:33:31 +00:00
Qiang Yu
f07dab1899 doc: mark GL_EXT_mesh_shader as done
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38044>
2025-11-13 01:30:29 +00:00
Autumn Ashton
2705d8bd8b radv/video: Implement VK_VALVE_video_encode_rgb_conversion
This is used by Steam Link VR (driver_vrlink) to avoid doing YUV conversion itself.

Signed-off-by: Autumn Ashton <misyl@froggi.es>
Reviewed-by: David Rosca <david.rosca@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37500>
2025-11-12 08:25:36 +00:00
Faith Ekstrand
27d9e4ec2a nvk: VK_EXT_shader_uniform_buffer_unsized_array
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38230>
2025-11-04 17:25:04 +00:00
Arcady Goldmints-Orlov
4c7c5a2a11 kk: enable VK_KHR_vertex_attribute_divisor
And also VK_EXT_vertex_attribute_divisor

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38154>
2025-11-01 16:31:26 +00:00
Arcady Goldmints-Orlov
ef66fdf47c kk: enable VK_KHR_workgroup_memory_explicit_layout
Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38154>
2025-11-01 16:31:24 +00:00
Samuel Pitoiset
c8aaf3f5b5 radv: advertise VK_KHR_maintenance10
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38043>
2025-10-31 07:51:22 +00:00
Aitor Camacho
6577d6c9f6 docs: Reorder VK_EXT_image_robustness
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38137>
2025-10-29 19:33:35 +00:00
Aitor Camacho
770486e11d docs: Add KosmicKrisp to Vulkan
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38137>
2025-10-29 19:33:35 +00:00
Yiwei Zhang
c6ff8ce373 panvk: support VK_EXT_device_memory_report
This change adds the minimum support for VK_EXT_device_memory_report,
which only reports device memory events at this point. We can make it
more useful later (like what's done in ANV) if desired by some tools.

Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37987>
2025-10-29 17:09:41 +00:00
Samuel Pitoiset
45affb0e53 radv: advertise VK_EXT_shader_uniform_buffer_unsized_array
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38047>
2025-10-28 07:55:40 +01:00
Faith Ekstrand
a9e0adc679 nvk: Advertise VK_KHR_maintenance10
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38094>
2025-10-27 16:20:32 -04:00
Lionel Landwerlin
3955787ab2 anv: implement VK_KHR_maintenance10
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38045>
2025-10-27 19:20:09 +00:00
Mario Kleiner
3ca1cee8b0 hk: Enable VK_KHR_present_id[2] and VK_KHR_present_wait[2]
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
These extensions are implemented in shared Vulkan/WSI code and
not driver specific. A Vulkan driver just needs to support
VK_KHR_timeline_semaphore, which Honeykrisp already supports
since its inclusion into Mesa.

Successfully tested on Apple MacBookAir 2020 with M1 SoC on
top of KDE KWin 6.4 and GNOME mutter 48.

Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38069>
2025-10-27 12:27:23 +00:00
Caio Oliveira
a8449171d3 iris: Enable GL_KHR_shader_subgroup_* extensions for Gfx >= 9 when possible
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
For platforms that don't have native float64 support, skip the
arithmetic and clustered ops.  While they would work, the lowering
for float64 for those increase significantly the shader for some
of those operations.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35844>
2025-10-24 16:41:29 +00:00
Lorenzo Rossi
dc0dcc993b nvk: implement VK_EXT_discard_rectangles
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Signed-off-by: Lorenzo Rossi <git@rossilorenzo.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33476>
2025-10-21 23:17:38 +00:00
Yiwei Zhang
bd53bbbc57 panvk: support VK_EXT_external_memory_acquire_unmodified
Upon acquiring an external image from external/foreign queue family,
skip AFBC metadata invalidation if the app has explicitly requested
acquireUnmodifiedMemory. This also applies to CRC which may or may not
get hooked up later.

Reviewed-by: John Anthony <john.anthony@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37972>
2025-10-21 19:15:58 +00:00
Frank Binns
b9baf2c260 pvr: Advertise VK_KHR_storage_buffer_storage_class
Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Karmjit Mahil <karmjit.mahil@igalia.com>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37913>
2025-10-17 08:11:11 +00:00
Frank Binns
c6c0690723 pvr: Advertise VK_KHR_relaxed_block_layout
This is already supported by the compiler and all the relevant conformance
tests pass.

Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Karmjit Mahil <karmjit.mahil@igalia.com>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37913>
2025-10-17 08:11:11 +00:00
Autumn Ashton
15d375dc6e nvk: Implement VK_NVX_image_view_handle
This is used by DLSS to pass in image view
descriptors via parameter buffers for its
kernel launches.

Signed-off-by: Autumn Ashton <misyl@froggi.es>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37889>
2025-10-15 17:53:06 +00:00
Erico Nunes
48f3bcdd02 pvr: enable KHR_wayland_surface
Just expose the extension to enable Wayland WSI.
The current use case for this is being able to run Wayland clients on
e.g. an offscreen compositor.

Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37721>
2025-10-15 08:58:03 +00:00
Mike Blumenkrantz
9d0e73335a zink: enable GL_EXT_mesh_shader
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37788>
2025-10-14 23:14:17 +00:00