Commit graph

7086 commits

Author SHA1 Message Date
Duncan Brawley
0ea39c6305 pco: Use vertex input registers in register allocation
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Add support for the use of vertex input registers as additional general
purpose registers which previously was restricted to temporary
registers. Use of vertex input registers as additional general purpose
registers is not available for fragment shaders.

Vertex input registers are similar to temporary registers. The only
difference is that vertex input registers can contain pre-initialised
data when the shader starts.

By default, the number of vertex input registers used for register
allocation is the number of vertex input registers used for their
pre-initialised data rounded up to the nearest multiple of 4, as vertex
input registers are allocated in blocks of 4.

If PCO_DEBUG=alloc_extra_vtxins is used, a mimimum of 12 vertex input
registers are available for register allocation.

Signed-off-by: Duncan Brawley <duncan.brawley@imgtec.com>
Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39886>
2026-02-24 16:27:45 +00:00
Christian Gmeiner
8dc8a2eec4 panvk: Support VK_EXT_legacy_dithering
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Wire up the existing Panfrost dithering infrastructure to the Vulkan
extension. The library already supports dithered formats via
pan_dithered_format_from_pipe_format(), so this plumbs the
VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT flag through to the blend
descriptor emission and color attachment internal conversion paths.

Dithering is only applied to color attachments, not depth or framebuffer
preloads.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39781>
2026-02-24 11:34:19 +00:00
Georg Lehmann
c6e1c23faf radv: expose VK_VALVE_shader_mixed_float_dot_product on supported hardware
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
In practice this means Vega20, Navi14, and RDNA2+.

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40003>
2026-02-24 08:55:53 +00:00
Christian Gmeiner
086456111f panvk: Support VK_EXT_depth_clamp_control
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The Mali GPUs have native support for user-defined depth clamp bounds
via the LOW_DEPTH_CLAMP/HIGH_DEPTH_CLAMP registers and the
depth_clamp_mode field. Wire up the existing runtime plumbing to these
registers so applications can specify a custom depth clamp range instead
of always clamping to the viewport's minDepth/maxDepth.

While at it, drop the redundant CLAMP on depth values in the CSF path.
Since VK_EXT_depth_range_unrestricted is not supported, panvk_depth_range()
is already guaranteed to produce values in the 0..1 range.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39925>
2026-02-23 12:15:29 +00:00
Rob Clark
8451190601 gallium: Add PIPE_QUERY_TIMESTAMP_RAW
This is intended to enable rusticl to use get_query_result_resource()
for timestamp queries, for hw which cannot convert ticks to us on the
GPU (or for which doing the conversion on the GPU is expensive).  In
this case, the query result buffer is not exposed to the app, so we
can still do the necessary conversion on the CPU.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39995>
2026-02-22 19:18:19 +00:00
Dylan Baker
88cfe6b4eb docs: update calendar for 25.3.6
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/40015>
2026-02-20 12:26:09 -08:00
Dylan Baker
a93046c898 docs: Fix unescaped * in 25.3.6 release notes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40015>
2026-02-20 12:26:09 -08:00
Dylan Baker
cdae2cc703 docs: Add SHA sums for 25.3.6
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40015>
2026-02-20 11:44:58 -08:00
Dylan Baker
1b4a0a3755 docs: add release notes for 25.3.6
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40015>
2026-02-20 11:44:53 -08:00
Christian Gmeiner
594b1c18bf panvk: implement VK_EXT_image_view_min_lod
Pass the per-image-view minimum LOD clamp from the Vulkan runtime
(vk_image_view::min_lod) through pan_image_view into the Mali texture
descriptor's Minimum LOD field.

Mali v6+ hardware has per-texture-descriptor LOD clamp fields that
operate independently from the sampler's LOD clamps, so no shader
lowering or descriptor merging is needed.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39938>
2026-02-20 12:46:42 +01:00
Christian Gmeiner
0e32fbc305 panvk: Advertise VK_EXT_color_write_enable
The common Vulkan runtime already provides full support for this
extension (pipeline state parsing, dynamic command handler, dirty
tracking), and panvk already consumes color_write_enables in blend
descriptor emission and fs_required() determination. Just advertise
the extension and feature.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39913>
2026-02-20 12:19:10 +01:00
Adam Jackson
527b642800 venus: advertise VK_KHR_shader_fma
v2: move feat and ext to KHR group instead of core group

v3: update docs

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39945>
2026-02-17 21:11:18 +00:00
Yiwei Zhang
a8baedef29 venus: expose VK_EXT_descriptor_heap behind a debug option
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
There's TODO for optimizing descriptor allocations, so currently we
expose the extension behind VN_DEBUG=desc_heap

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39762>
2026-02-15 04:32:30 +00:00
Emma Anholt
a220c2e564 docs/systems: Minor touch-ups from reading the page.
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/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
7e43ee3685 docs: Conformance is done through SFC now, not SPI.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
99fecde3e8 docs/index: Move the Xlib software GL driver with the other drivers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
7c86acb5e3 docs: Rename the "shading" page to "GLSL" since it's just that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
50a8299f68 docs/shading.rst: Drop a bunch of old docs about the GLSL compiler.
Mostly inaccurate for at least the last decade.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
9fbd722e47 docs/perf: Drop a bunch of old hints on getting faster GL1 swrast.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
f56d0faca9 docs/debugging: Drop this page.
MESA_DEBUG is documented in envvars, and these minor details of debugging
a few bits of GL are not a useful entrypoint for "how to do debugging".

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
44e2be8caf docs/helpwanted: Rewrite this page.
Those old driver TODOs don't have anything useful.  We don't want piglit
coverage just for the sake of piglit, but want increased coverage.  And
better instructions on writing and submitting code are fully
documented elsewhere.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
d977e64c17 docs/xlib: Stop calling the fake GLX xlib frontend the most mature of sw.
It's definitely llvmpipe these days for mature software GL, not this old
stuff.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Emma Anholt
cf445c1995 docs/xlib: Drop docs about long-dead X features.
Nobody's doing 8-bit color-indexed rendering, and the overlay planes
referenced here are not anything that X drivers support these days, and
they were never ported to gallium.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39741>
2026-02-13 13:38:42 -08:00
Mel Henning
cbec12627b nvk: VK_KHR_copy_memory_indirect
Reviewed-by: Mary Guillemard <mary@mary.zone>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39869>
2026-02-13 20:53:47 +00:00
Valentine Burley
d3557818d8 docs/features: Remove VK_KHR_android_surface
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
VK_KHR_android_surface is implemented by the Android platform Vulkan
loader rather than Mesa.

Mesa drivers on Android already expose the extension.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39856>
2026-02-12 18:00:40 +00:00
Valentine Burley
ff4e1b9ed9 tu: Advertise VK_KHR_depth_clamp_zero_one
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This was promoted from EXT.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39823>
2026-02-12 16:20:07 +00:00
Valentine Burley
b828bba6f6 tu: Advertise VK_EXT_shader_uniform_buffer_unsized_array
This is already implemented in common Vulkan code.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39823>
2026-02-12 16:20:07 +00:00
Valentine Burley
10ac4298a3 tu: Enable VK_KHR_compute_shader_derivatives for a6xx
Linear is supported on a6xx.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39823>
2026-02-12 16:20:05 +00:00
Valentine Burley
b7f0c541f2 docs: Update features.txt for Turnip
Document the already implemented extenstions that were missing, and
update the comment for a promoted extension.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39823>
2026-02-12 16:20:02 +00:00
Eric Engestrom
e2c35f4828 docs/precompiled: document debug packages
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14803
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39732>
2026-02-12 16:15:51 +00:00
Eric Engestrom
7eef815667 docs/precompiled: modernize distro documentation
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39732>
2026-02-12 16:15:50 +00:00
Christian Gmeiner
a16d36304e panvk: Support VK_EXT_astc_decode_mode
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The Panfrost hardware already supports controlling ASTC decode
precision via the Decode Wide plane descriptor field. Wire up the
Vulkan extension by parsing VkImageViewASTCDecodeModeEXT from the
image view pNext chain and setting astc.narrow when the application
requests VK_FORMAT_R8G8B8A8_UNORM decode mode.

The extension is limited to v9+ since the ASTC plane descriptors
with Decode Wide/HDR fields only exist from Valhall onwards.

decodeModeSharedExponent is not supported.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39799>
2026-02-11 21:13:45 +01:00
Eric Engestrom
2d71850820 docs: add sha sum for 26.0.0
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/39835>
2026-02-11 19:12:06 +00:00
Eric Engestrom
6412b95931 docs: add release notes for 26.0.0
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39835>
2026-02-11 19:12:06 +00:00
Eric Engestrom
362d6cede1 docs: add release calendar for the 26.0.x cycle
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39835>
2026-02-11 19:12:05 +00:00
Utku Iseri
ac0cec60e2 panvk: expose swapchain_mutable_format support
This should be a freebie since we support mutable formats already.

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39822>
2026-02-11 16:51:14 +00:00
Eric Engestrom
b2d99b9378 pick-ui: add Backport-to: * as a synonym to Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34598>
2026-02-09 18:46:20 +00:00
Aitor Camacho
cc6c200719 kk: Expose sampleRateShading
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/39699>
2026-02-09 13:35:01 +00:00
Aitor Camacho
f0b038cb7f kk: Expose VK_EXT_image_2d_view_of_3d
Add missing flag for the 2d_view_of_3d, no further changes needed.

Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:39 +00:00
Aitor Camacho
e11fd9a178 kk: Expose VK_EXT_texel_buffer_alignment
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:38 +00:00
Aitor Camacho
93d8c652da kk: Expose VK_EXT_extended_dynamic_state2
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39702>
2026-02-09 13:16:37 +00:00
Dylan Baker
8e65c6a118 docs: update calendar for 25.3.5
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/39746>
2026-02-06 13:54:42 -08:00
Dylan Baker
69e4163b9e docs: Add 25.3.5 SHA sums
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39746>
2026-02-06 13:54:35 -08:00
Dylan Baker
98a8d8d88c docs: add release notes for 25.3.5
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39746>
2026-02-06 13:54:34 -08:00
Ian Forbes
ffc6fb6377 svga: Enable GL_ARB_vertex_type_10f_11f_11f_rev
This was a required vertex format in DX10 and should be available with
VGPU10.

https://learn.microsoft.com/en-us/windows/win32/direct3ddxgi/format-support-for-direct3d-feature-level-10-0-hardware#dxgi_format_r11g11b10_floatfns-26

Signed-off-by: Ian Forbes <ian.forbes@broadcom.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39693>
2026-02-05 20:48:58 +00:00
Erik Faye-Lund
f894153142 panfrost: expose EXT_shader_image_load_store
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39686>
2026-02-05 15:40:19 +00:00
Christian Gmeiner
9e3967ea9b panvk: Support VK_EXT_zero_initialize_device_memory
Advertise the extension and enable the zeroInitializeDeviceMemory
feature. The panfrost and panthor kernel drivers uses drm_gem_shmem which
gets zeroed pages from the shmem subsystem, so memory is already
zero-initialized by default.

VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT is treated the same as
VK_IMAGE_LAYOUT_UNDEFINED. Since panvk doesn't use image layouts
(layout transitions are no-ops), no special barrier handling is
needed for either layout.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39658>
2026-02-05 11:56:38 +00:00
Danylo Piliaiev
124d550a94 docs: Add documentation on how to debug GPU crashes and misrenderings
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: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38487>
2026-02-04 21:22:37 +00:00
Danylo Piliaiev
ec6918d7ce docs/envvars: Document TU_DEBUG and IR3_SHADER_DEBUG
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38487>
2026-02-04 21:22:37 +00:00
Eric Engestrom
f1a3b6f346 docs: update calendar for 26.0.0-rc3
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39700>
2026-02-04 19:05:20 +00:00