Commit graph

7112 commits

Author SHA1 Message Date
Eric Engestrom
2b7077b8ba freedreno: fix a few missed afuc -> qrisc renames
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Fixes: 6e3d805735 ("freedreno: Rename afuc to QRisc")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40322>
2026-03-10 16:05:24 +00:00
Christian Gmeiner
c12095721c panvk: Advertise VK_EXT_shader_stencil_export
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The panfrost stack already supports everything 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/39944>
2026-03-07 01:19:54 +00:00
Connor Abbott
4b87df29b3 tu: Implement subsampled images
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39868>
2026-03-06 21:26:46 +00:00
Eric Engestrom
2c4a39152a docs: update link to ubuntu's debug symbols documentation
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/40259>
2026-03-06 14:44:02 +00:00
Eric Engestrom
a8c0c5f9f2 docs/linkcheck: ignore one more website that doesn't allow linkcheck
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40259>
2026-03-06 14:44:02 +00:00
Christian Gmeiner
266160fe4e panvk: Advertise VK_VALVE_mutable_descriptor_type
Trivial promotion alias of VK_EXT_mutable_descriptor_type which is
already supported on v9+.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40254>
2026-03-06 14:16:00 +00:00
Radu Costas
9e8faa6eea pco: Add hwinfo check for features in sampler code
Add checks for integer coordinates and array indexing HW features
Features require HW support and the PCO_DEBUG env var to contain the
adv_smp entry
Integer coordinates are supported for images and textures without an LOD
setting
Array indexing is not supported and will trigger an abort

Reviewed-by: Simon Perretta <simon.perretta@imgtec.com>
Signed-off-by: Radu Costas <radu.costas@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40139>
2026-03-05 15:33:10 +00:00
Eric Engestrom
69336187b7 docs/linkcheck: ignore a few more websites that don't allow linkcheck
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/40241>
2026-03-05 15:45:26 +01:00
Christian Gmeiner
b442dc23fd panvk: advertise VK_EXT_nested_command_buffer on v10+
The CSF backend's cs_call() is a hardware call/return instruction that
nests naturally. The existing CmdExecuteCommands implementation already
performs caller-callee state merging without checking command buffer
level, so no functional changes are needed.

The hardware call stack has 8 levels. The kernel consumes one for the
ringbuffer CALL, and two are reserved for future internal driver use,
leaving maxCommandBufferNestingLevel at 5.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40120>
2026-03-05 12:06:52 +00:00
Marek Olšák
f421eecebe radv,radeonsi: PA_SC_BINNER changes for gfx12
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40022>
2026-03-04 21:14:56 +00:00
Karol Herbst
bba6e40ea7 asahi: support subgroup_rotate
This enables cl_khr_subgroup_rotate

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37169>
2026-03-03 16:31:32 +00:00
Karol Herbst
ca30514389 rusticl: support more subgroup extensions
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37169>
2026-03-03 16:31:32 +00:00
irql-notlessorequal
74e73b0e21 docs/features: Mark VK_KHR_maintenance6 complete for hasvk
Also does the same for VK_KHR_maintenance5 as that was missed.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37434>
2026-03-02 23:16:11 +00:00
Christian Gmeiner
4a5123241f panvk: Advertise VK_ARM_scheduling_controls on CSF
Expose the extension, feature bit, and properties for
VK_ARM_scheduling_controls on CSF architectures (>= v10).

The only supported scheduling control flag is
VK_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_SHADER_CORE_COUNT_ARM, which
allows applications to limit the number of shader cores used by a
queue via VkDeviceQueueShaderCoreControlCreateInfoARM.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40063>
2026-03-02 20:22:07 +00:00
Leon Perianu
7e3aa7e627 pvr: enable VK_KHR_maintenance4
This commit adds support for VK_KHR_maintenance4 extension by
implementing the required function.

Makes the following tests to pass/be supported:
dEQP-VK.api.info.get_physical_device_properties2.features.maintenance4_features
dEQP-VK.api.info.vulkan1p3_limits_validation.khr_maintenance4
dEQP-VK.api.device_init.create_device_unsupported_features.maintenance4_features
dEQP-VK.memory.requirements.create_info.buffer.regular
dEQP-VK.memory.requirements.create_info.image.regular_tiling_linear
dEQP-VK.memory.requirements.create_info.image.regular_tiling_optimal
dEQP-VK.memory.requirements.create_info.image.transient_tiling_linear
dEQP-VK.memory.requirements.create_info.image.transient_tiling_optimal

Signed-off-by: Leon Perianu <leon.perianu@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39776>
2026-03-02 10:55:45 +00:00
Lionel Landwerlin
0b1d1dc61b docs/anv: add some debug tips
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40134>
2026-03-02 07:30:34 +00:00
Rob Clark
b618b7e725 freedreno: Add missing cl_gl_sharing cap
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: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40140>
2026-03-01 14:34:36 +00:00
Eric Engestrom
0ea485406c docs: add sha sum for 26.0.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40100>
2026-02-26 18:17:22 +00:00
Eric Engestrom
b09692bf99 docs: add release notes for 26.0.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40100>
2026-02-26 18:17:22 +00:00
Eric Engestrom
9894012f8d docs: update calendar for 26.0.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40100>
2026-02-26 18:17:21 +00:00
Aitor Camacho
d55a71893b docs: Add KosmicKrisp to the list of layered drivers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Eric Engestrom <eric@igalia.com>
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40033>
2026-02-26 10:14:24 +00:00
Aitor Camacho
636640ecce docs/kk: Update build instructions to add --prefer-static
Reviewed-by: Eric Engestrom <eric@igalia.com>
Signed-off-by: Aitor Camacho <aitor@lunarg.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40033>
2026-02-26 10:14:24 +00:00
Marek Olšák
857f5a8e9c st/mesa: optimize glCopyImageSubData for 3D and array textures
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
radeonsi is significantly faster if we use a 3D copy instead of copying
layers separately. (about 2-10x faster)

Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40071>
2026-02-25 14:14:50 +00:00
Juan A. Suarez Romero
675e5527ba v3d: add support for GL_ARB_sample_shading
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Most of the work was already done for the Vulkan driver.

The main difference to handle is that OpenGL request to ignore sample
mask when the framebuffer is non-multisampled, while Vulkan applies it
always.

This also fixes KHR-GL31.frag_coord_conventions.multisample.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40059>
2026-02-25 10:03:39 +00:00
Rob Clark
d487358527 rusticl: Add CL specific bind flag
In some cases CL has higher precision requirements for format support.
Add a PIPE_BIND_x flag so that drivers can expose formats in GL(ES) that
they cannot expose in CL.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40028>
2026-02-25 00:47:51 +00:00
Rob Clark
7dc6fbd5c5 gallium: Switch TIMESTAMP_RAW back to callback
The original MR switched to use a float raw_timestamp_period to scale
the raw timestamp outside of the gallium driver.  This better matched
how vulkan works.

But unlike vulkan, gallium has timestamp related queries/APIs that
return already scaled time, resulting in small errors if the way the
scaling is done differs between driver scaling and frontend scaling.
The important thing is that any error introduced by scaling must be
the same error across APIs.

(In particular, a f64 value cannot preciesly represent an arbitrary
u64 value.  OTOH the driver's scaling could be simply multiply be an
integer.  But differing precision errors of the two approachs causes
problems when comparing between timestamps that are converted in
different ways.)

In some, but not all, cases this could be addressed by changing the
driver to use the same scaling function, but this is not always possible
(if, for ex, the scaling is done on the GPU CP).  So switch back to
the original approach from !39995, using a pscreen->convert_timestamp()
callback, to put the control back in the hands of the driver.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40051>
2026-02-24 23:19:34 +00:00
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