Commit graph

7313 commits

Author SHA1 Message Date
Samuel Pitoiset
887a390ec0 radv: advertise VK_KHR_shader_abort
Without VK_KHR_device_fault there is no way to get back the abort
messages.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40723>
2026-06-09 10:33:12 +00:00
squidbus
371ed09659 kk: Work around crash with multiple concurrent MTL4Compiler
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Using multiple `MTL4Compiler` instances concurrently may result in
the process crashing from within the Metal driver. Work around this
by maintaining one `MTL4Compiler` per `MTLDevice`.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41842>
2026-06-09 02:47:38 -07:00
Jose Maria Casanova Crespo
d81c4bd242 v3d: Enables GL_ARB_clip_control for v71+
Based on current v3dv support for clip control

v1: original version (Andrew Copland)
v2: update docs, really enable extension (Alejandro Piñeiro)
v3: adjusted viewport and its dirty flag (Chema Casanova)
v4: avoid dirty flags when no rasterization is enabled (Iago Toral)

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42082>
2026-06-08 11:53:47 +00:00
Daniel Stone
c9c48f79a1 doc/ci: Add custom-kernel testing workflow
So you're working on kernel stuff, and you want to test Mesa. Here you
go.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41899>
2026-06-08 11:16:28 +00:00
squidbus
d24599ee21 kk: Support VK_EXT_sample_locations
Sample locations are render pass state in Metal. In the best case
(same sample positions for all of subpass), we simply configure it
at the start and proceed as normal. For sub-optimal case (sample
positions change during subpass), we can support it by restarting
the Metal render pass with the new values.

This also interacts with the existing logic for centering sample
positions for bresenham lines. The user's custom sample positions
are prioritized, and centering applies in the default case. Some bug
fixes have also been made to prevent losing attachment contents from
render pass restarts and ensure the render pass restart happens before
other draw state is flushed.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42036>
2026-06-08 10:45:01 +00:00
Emma Anholt
b6661df5f0 vulkan: Enable GOOGLE_display_timing on KHR_display across multiple drivers.
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This covers some drivers which expose KHR_display and EXT_present_timing.

Based on Emma Anholt's work from 2025, rebased on current Mesa 26.2-devel,
tiny compile fixes and docs/features updates by Mario Kleiner.
See MR 38472 for reference of Emma's work, based on Keith's work.

Tested locally on AMD Polaris for radv, Intel Kabylake for anv, and on
Mesa CI's VK-CTS VK_GOOGLE_display_timing test case for AMD radv,
Intel anv, Qualcomm Adreno tu.

Original code of Emma is
Reviewed-by: Mario Kleiner <mario.kleiner.de@gmail.com>

Update of docs/features.txt + new_features.txt updates is

Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Reviewed-by: Hans-Kristian Arntzen <post@arntzen-software.no>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41168>
2026-06-05 10:21:51 +00:00
squidbus
94295fda67 kk: Support VK_EXT_external_memory_host
Metal does not support importing host memory pointers into MTLHeap,
only MTLBuffer. Buffers can import without issue, and images are
restricted to linear images without flags requiring aliasing.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41894>
2026-06-04 12:12:09 +00:00
squidbus
74665ac901 kk: Support VK_EXT_primitive_topology_list_restart
Limited only to if the user explicitly requests it, to avoid unroll costs
otherwise.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41888>
2026-06-03 15:51:53 +00:00
squidbus
7051f481c0 kk: Support VK_EXT_primitive_restart_index
Requires unrolling, but only if the user explicitly requests a non-standard
restart index.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41888>
2026-06-03 15:51:53 +00:00
squidbus
685e0c9891 kk: Support VK_EXT_custom_resolve
Similar to RADV, restarts render pass with resolve attachments. Not
the most ideal for tiling, but we don't even use native resolve for
built-in modes due to Metal format limitations.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41888>
2026-06-03 15:51:52 +00:00
squidbus
2263841ced kk: Support VK_EXT_blend_operation_advanced
Already supported by blend lowering, just needs to be wired up.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41888>
2026-06-03 15:51:51 +00:00
squidbus
8a65042bee kk: Support VK_EXT_vertex_attribute_robustness
Functionality is the same as provided by maintenance9, which is enabled.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41888>
2026-06-03 15:51:51 +00:00
Eric Engestrom
3808c7c60b docs: add sha sum for 26.1.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41989>
2026-06-03 10:39:06 +00:00
Eric Engestrom
31416000b0 docs: add release notes for 26.1.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41989>
2026-06-03 10:39:06 +00:00
Eric Engestrom
d32241f6c2 docs: update calendar for 26.1.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41989>
2026-06-03 10:39:06 +00:00
Valentine Burley
879dd9ca8c tu: Advertise VK_KHR_internally_synchronized_queues
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This is implemented in common code in d8ef386f98 ("vulkan: add support
for VK_KHR_internally_synchronized_queues").

Passes dEQP-VK.synchronization2.internally_synchronized_queues.*

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41926>
2026-06-03 06:21:30 +00:00
Samuel Pitoiset
b0ee9510d7 radv: advertise VK_KHR_device_fault
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41648>
2026-06-02 15:18:34 +02:00
Mary Guillemard
8ec56cc0cc docs/nvk: Add some notes about mesh shading and ISBE layout
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: Mary Guillemard <mary@mary.zone>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27196>
2026-06-02 10:34:32 +00:00
Mary Guillemard
145b8540e5 nvk: Advertises VK_EXT_mesh_shader
Signed-off-by: Mary Guillemard <mary@mary.zone>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Tested-by: Thomas H.P. Andersen <phomes@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27196>
2026-06-02 10:34:32 +00:00
Karmjit Mahil
cc02826f4e docs: Fix struct redefinition errors
Signed-off-by: Karmjit Mahil <karmjit.mahil@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41933>
2026-06-01 15:57:35 +00:00
Sid Pranjale
020a6bc282 vulkan: implement VK_EXT_debug_marker
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32722>
2026-06-01 15:31:38 +00:00
Paulo Zanoni
2d3dc35d55 anv: implement VK_KHR_copy_memory_indirect
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This implements the extension on the Graphics and Compute queues using
Blorp OpenCL compute shaders. Support for the Transfer queue will come
in a later patch. We also don't support 24/48/96 bpp formats yet.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39338>
2026-05-29 18:12:37 +00:00
Jhanani Thiagarajan
2a60e9e769 intel/mda: Change the default output directory
Directories are named using the process name and PID to avoid overwriting dumps from
subsequent runs of the same application.

v2 (Caio): Use util_get_process_name().  Change to be default behavior.
           Old behavior still accessible via MDA_OUTPUT_DIR="." env var.

Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39125>
2026-05-29 17:30:38 +00:00
Konstantin Seurer
c9b60cfa4f radv: Move a whole bunch of debug/profiling related into a subdir
For slightly better separation of debug and driver code.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41044>
2026-05-29 10:59:38 +00:00
Frank Binns
c501f3b4c9 pvr: re-enable {EXT,KHR}_index_type_uint8
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This was originally disabled by a22ad99bdd ("pvr: set device
features/props/extensions to Vulkan 1.0 minimums (unless implemented)") in order
to concentrate efforts on passing "base" Vulkan conformance before layering on
additional functionality. The driver is now Vulkan 1.2 conformant.

As the functionality is already implemented, simply enable the extension.

Signed-off-by: Frank Binns <frank.binns@imgtec.com>
Reviewed-by: Ella Stanforth <ella@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41859>
2026-05-29 09:56:28 +01:00
Sid Pranjale
825df24023 nvk: Implement VK_EXT_shader_atomic_float
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41867>
2026-05-28 23:04:32 +00:00
Icenowy Zheng
6564b70498 pvr: bump conformance version to 1.4.3.3
With a few fixes applied, present_id2/wait2 extensions disabled (these
two are not recognized by Vulkan CTS 1.4.3.x) and a fix backported to
the Vulkan CTS, the driver can now pass Vulkan CTS 1.4.3.3.

Bump the conformance version to that value.

The submission link and conformant Vulkan version information in the
current PowerVR driver-specific document is also updated.

Link: https://www.khronos.org/conformance/adopters/conformant-products/vulkan#submission_981
Signed-off-by: Icenowy Zheng <zhengxingda@iscas.ac.cn>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41786>
2026-05-28 14:37:04 +00:00
Koch, Pawel
969aaf3061 Update docs regarding anv shader dumps Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
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/41827>
2026-05-28 09:42:38 +00:00
squidbus
4339629e4e kk: Support VK_EXT_conditional_rendering
Most of the work to support predicating draws is already done, mainly
just needed to support predicating dispatches and wire it up.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41839>
2026-05-28 02:19:31 -07:00
squidbus
86e7204774 kk: Enable VK_EXT_nested_command_buffer
This is already supported since we use common command buffer recording,
just needs to be enabled.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41839>
2026-05-28 02:19:28 -07:00
Eric Engestrom
3800f465f5 docs: add sha sum for 26.0.8
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41838>
2026-05-27 18:13:54 +00:00
Eric Engestrom
b8a61f5641 docs: add release notes for 26.0.8
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41838>
2026-05-27 18:13:54 +00:00
Eric Engestrom
16ac3506fc docs: update calendar for 26.0.8
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41838>
2026-05-27 18:13:53 +00:00
Marc Alcala Prieto
60d7aa4cb5 panfrost: Advertise Mali-G1-Premium and Mali-G1-Ultra support
Also, fix texel rate for G1-Pro variant 1.

And mention G1-Ultra, G1-Premium and G1-Pro in the release notes.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41639>
2026-05-27 11:33:20 +02:00
Benoît du Garreau
7683d552be docs: Add many missing features
I have only looked for unconditionally enabled features, so some are
probably still missing.

Signed-off-by: Benoît du Garreau <benoit@dugarreau.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40680>
2026-05-26 20:54:24 +02:00
squidbus
2d6ad3cba1 kk: Support VK_KHR_shader_untyped_pointers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
With memcpy lowering and fix for infinite optimize loop on 4x16 packs,
passes `dEQP-VK.spirv_assembly.instruction.compute.untyped_pointers.*`.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41695>
2026-05-26 11:09:12 +00:00
Karol Herbst
a9da8ec49b nvk: enable VK_KHR_shader_fma
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This allows rusticl to make use of the native fma instructions giving us
better OpenCL performance.

e.g. ProjectPhysX_OpenCL-Benchmark on my GA102:

FP32 0.610 -> 11.474 TFLOPs/s

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41720>
2026-05-25 14:27:51 +00:00
Georg Lehmann
f43bc8e8be radv: support VK_KHR_shader_fma
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41649>
2026-05-25 11:50:38 +00:00
Icenowy Zheng
d445a950fd docs/zink: add maint5 to the list of required extensions
Zink now unconditionally requires VK_KHR_maintenance5 to run.

Add it to the required extension list of Zink documentation.

Signed-off-by: Icenowy Zheng <zhengxingda@iscas.ac.cn>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41729>
2026-05-21 16:08:52 +00:00
squidbus
b1c72223af kk: Support VK_KHR_unified_image_layouts
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Metal has no concept of image layouts, and we don't care about them.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41613>
2026-05-21 09:59:38 +00:00
squidbus
f52f7bf8d5 kk: Support attachment feedback loop extensions
Metal GPU image optimization is disabled for attachment feedback
usage since it causes some CTS flakes.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41613>
2026-05-21 09:59:38 +00:00
squidbus
2a119991f6 kk: Support VK_KHR_shader_fma
Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41692>
2026-05-21 09:36:35 +00:00
squidbus
33ce3040e6 kk: Support VK_EXT_host_image_copy
Metal provides straightforward ways to copy an image to/from memory,
and image-to-image copies can be implemented by chaining them.

Note that host copy of combined depth-stencil is not supported, as
Metal does not allow CPU copy for these formats. Additionally, GPU
optimized contents are not allowed with host image copy usage; CTS
directly initializes the raw memory of optimized images to random
invalid data, which appears to decompress differently on GPU vs CPU
and fail.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41714>
2026-05-21 02:06:46 -07:00
Eric Engestrom
3c45804f38 docs: add sha sum for 26.1.1
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/41686>
2026-05-19 22:09:25 +00:00
Eric Engestrom
4311b796b8 docs: add release notes for 26.1.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41686>
2026-05-19 22:09:25 +00:00
Eric Engestrom
6450c00aa8 docs: update calendar for 26.1.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41686>
2026-05-19 22:09:24 +00:00
squidbus
840952cc35 kk: Enable maintenance extensions through 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
Full CTS tests pass.

Reviewed-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41663>
2026-05-19 17:28:18 +00:00
Icenowy Zheng
ad14a81cc7 pvr: advertise VK_KHR_maintenance5
As most work for maintenance5 is already done in the common Vulkan
runtime, functions required by it are implemented in pvr driver and
blitting functions are changed to use common functions for acquiring
subresource layer count, advertise VK_KHR_maintenance5 now.

Signed-off-by: Icenowy Zheng <zhengxingda@iscas.ac.cn>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41569>
2026-05-18 16:05:43 +00:00
Simon Perretta
124b30f7ba pco, pvr: finish and enable VK_KHR_workgroup_memory_explicit_layout
Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Acked-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41545>
2026-05-18 12:43:52 +00:00
Simon Perretta
1821309b54 pvr, pco: add support for spilling shared memory to global memory
Add a PCO_DEBUG option to force spilling to begin with.

Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Acked-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41545>
2026-05-18 12:43:51 +00:00