Commit Graph

212876 Commits

Author SHA1 Message Date
Simon Perretta
2476e4c1ab pvr: add debug for missing sysvals
Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37512>
2025-09-30 12:15:42 +00:00
Simon Perretta
f20c7b92b2 pvr, pco: track and implement workaround for brn74056
Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37512>
2025-09-30 12:15:42 +00:00
Mike Blumenkrantz
5702234013 zink: fix disabling multiview mesh with shader objects
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37623>
2025-09-30 11:22:28 +00:00
Mike Blumenkrantz
3b63317d93 mesa: delete task and mesh programs on context destroy
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37623>
2025-09-30 11:22:28 +00:00
Roland Scheidegger
7e0c0ba08c lavapipe: implement VK_EXT_sample_locations
Seems to pass all relevant lavapipe vk cts tests
zink-lavapipe fails, but it's broken in zink, update ci expectation

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37603>
2025-09-30 01:13:29 +00:00
Konstantin Seurer
dca33aa0a0 vulkan/vk_cmd_queue: Clone VkSampleLocationsInfoEXT extending VkRenderingInfo
This is used by the renderpass implementation but the Vulkan spec does
not say that VkSampleLocationsInfoEXT can extend VkRenderingInfo.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37603>
2025-09-30 01:13:29 +00:00
Jianxun Zhang
a5acfdf753 iris: Assert no disabling aux in first query (xe2)
Xe2 platforms have a different way to disable CCS
compression.

Suggested by Nanley Chery <nanley.g.chery@intel.com>

Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37098>
2025-09-29 17:08:54 -07:00
Jianxun Zhang
1cbee485e7 iris: Ensure type of bo's heap is consistent with modifier
This helps us to catch a compressed bo is picked up for
an uncompressed modifiers when importing dmabuf, and vise
versa.

Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37098>
2025-09-29 17:08:53 -07:00
Jianxun Zhang
5aa4dc7f77 iris: Disable compression on sharing without modifier
For an image created either without a modifier to share or as the
destination image to get rid of compression by re-allocation, it
should have compression disabled.

Close: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13729
(Fix firefox misrendering when gfx.wayland.hdr option is true)

Backport-to: 25.2

Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37098>
2025-09-29 17:08:53 -07:00
Aitor Camacho
06dbd4c33c nir: Set cursor in lower_sampler_lod_bias
Reviewed-by: Alyssa Anne Rosenzweig <alyssa.rosenzweig@intel.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37494>
2025-09-29 23:24:52 +00:00
Deborah Brouwer
9029c8b1e3 android: fall back to SwiftShader’s LLVM
If no external/llvm-project directory is present, build with SwiftShader’s
static LLVM library if available. This can simplify Mesa builds inside
AOSP.

Signed-off-by: Deborah Brouwer <deborah.brouwer@collabora.com>
Reviewed-by: Antonio Ospite <antonio.ospite@collabora.com>
Reviewed-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37607>
2025-09-29 14:49:43 -07:00
Ian Romanick
23bd356b42 brw/nir: nir_intrinsic_load_reloc_const_intel may not be scalar [v3]
If the (NIR) destination is a register (i.e., not an SSA value), the
destination of the BRW instruction will not be is_scalar. This occurs in
some shaders in Final Fantasy XVI (and
finalfantasytype0_1.rdc.2826e29da3722a83.1.foz).

If the destination is not is_scalar, revert most of this code to the
state previous to f3593df877. This means

- Allocate a SIMD1 register and UNDEF it.
- Emit a SIMD1 MOV_RELOC_IMM to that register.
- Emit an additional MOV to expand the SIMD1 result.

Closes: #12520
Fixes: f3593df877 ("brw/nir: Treat load_reloc_const_intel as convergent")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37384>
2025-09-29 16:48:07 +00:00
Samuel Pitoiset
29ccbb21f3 radv: add a helper whether shader fp16 is enabled
To remove code duplication.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37619>
2025-09-29 16:17:11 +00:00
Bas Nieuwenhuizen
00b8b571c6 device-select: Fix error check.
Fixes: 355b96413d ("egl/wayland: Move bind_wayland_display to legacy build option")
Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13931
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37622>
2025-09-29 17:19:34 +02:00
Christoph Neuhauser
5e5bc7a1c7 egl: Fix invalid device UUID returned by EGL_EXT_device_persistent_id
MR !36998 / commit 72f2565fc9 introduced
an issue where QueryDeviceInfo is not called in eglQueryDeviceBinaryEXT,
which causes the queried UUID to always be zero.
This commit fixes the issue by adding a call to QueryDeviceInfo.
Also, it refactors the inconsistent function names passed to _eglError.

Signed-off-by: Christoph Neuhauser <christoph.neuhauser@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37616>
2025-09-29 12:56:59 +00:00
Thomas H.P. Andersen
b58026fac9 nvk: allow host image copy on non host visible heaps
According to the comment removing non host visible heaps
was only meant for non-ReBAR. We can detect ReBAR and
allow host image copy on non host visible heaps.

Also drops an old comment from the first rudimentary
implementation of this function.

Results for *host_image_copy* on a Ada gpu with ReBAR.

Test run totals:
  Passed:        51686/149362 (34.6%)
  Failed:        0/149362 (0.0%)
  Not supported: 97676/149362 (65.4%)
  Warnings:      0/149362 (0.0%)
  Waived:        0/149362 (0.0%)

Reviewed-by: Mohamed Ahmed <mohamedahmedegypt2001@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37385>
2025-09-29 12:28:49 +00:00
Boris Brezillon
3d241e69c5 panvk: Only use Z24_UNORM_PACKED for AFBC images
The host copy logic doesn't support unpacking/packing D24X8, and if we
were to support it, it would be inefficient because of the non-32-bit
alignment. Given host copy is not a thing on AFBC resources, and given
the Z24_UNORM_PACKED is mostly beneficial to AFBC(Z) resources, let's
restrict its use to this case only and use Z24X8 otherwise.

Fixes: a620f33b7c ("panvk: Add planar Z24S8 support")
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37473>
2025-09-29 13:59:30 +02:00
Boris Brezillon
76843c049f panvk: Fix host copies on planar DS resources
We need to split dual-aspect copies into separate copies.

Fixes: a620f33b7c ("panvk: Add planar Z24S8 support")
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Tested-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37473>
2025-09-29 13:59:30 +02:00
Boris Brezillon
d6dd424b11 panvk: Fix panvk_interleaved_copy() formatting
Switch cases should align with the switch() statement.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Tested-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37473>
2025-09-29 13:59:30 +02:00
Boris Brezillon
27988e9848 vk/meta: Support DS <-> color copies
VK_KHR_maintenance8 allows such copies, but there are a few things we
need to fix to support the case where the destination and source aspects
don't match.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Tested-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Christoph Pillmayer <christoph.pillmayer@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37473>
2025-09-29 13:59:30 +02:00
David Rosca
214a431caf gallium/vl: Remove mpeg12 shader decoder
The decoder has been broken for years. It creates 3-plane video
buffer with RGB16 format for all three planes, which hasn't been
working since 243475b96c.
It also doesn't make sense anymore to use shader decoder for a codec
this old.

Acked-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37507>
2025-09-29 10:47:02 +00:00
David Rosca
b16910031b nouveau: Remove mpeg12 shader decoder support
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37507>
2025-09-29 10:47:02 +00:00
David Rosca
7d78016cab r300: Remove mpeg12 shader decoder support
Reviewed-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37507>
2025-09-29 10:47:02 +00:00
David Rosca
69aa754547 r600: Remove mpeg12 shader decoder support
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6162
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37507>
2025-09-29 10:47:02 +00:00
Timur Kristóf
d3579190d6 ac/nir/ngg: Fix scalarized mesh primitive indices
Take the write_mask into account when storing primitive indices,
otherwise they will end up being stored in the wrong place.

Fixes: 8e24d3426d ("ac/nir/ngg: Refactor MS primitive indices for scalarized IO.")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37610>
2025-09-29 08:07:54 +00:00
Timur Kristóf
3dc9c1a91e ac/nir/ngg: Remove dead code for 64-bit mesh shader variables
We already lower all 64-bit I/O to 32-bit before this pass,
and the rest of the code here already asserts that I/O variables
must be 32-bit or smaller.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37610>
2025-09-29 08:07:54 +00:00
Simon Perretta
86557cace1 pco: use nir_unlower_io_to_vars
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/37540>
2025-09-27 23:45:54 +01:00
Simon Perretta
cd9d55201f pco: use interpolated input intrinsics for shader io
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/37540>
2025-09-27 23:45:54 +01:00
Simon Perretta
b111b8a844 pvr, pco: implement prerequisites for sampleRateShading
- Implement load_interpolated_input and friends.
- Optimize load_barycentric_* cases that can be simplified.
- Initial support for non-standard sample locations.

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/37540>
2025-09-27 23:45:54 +01:00
Simon Perretta
83aecc8f3f mesa/st, nir: commonize unlower_io_to_vars pass
Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37540>
2025-09-27 23:45:54 +01:00
Emma Anholt
4531b8ace4 treewide: Make exported DRM FDs read-write.
Without this, somebody trying to map a buffer for write by the CPU would
fail.  This is not common to do in hardware driver environments, but it
shouldn't be disallowed, and there's no downside to allowing it.

I did skip virgl, because that's one where I don't know for sure if there
wouldn't be a downside to allowing RDWR (there are other virt exports
where RDWR is gated on a mappable flag).

This is a follow-up to !37088 to keep copy and paste from introducing the
same bug anywhere else.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37339>
2025-09-27 19:46:14 +00:00
Faith Ekstrand
8ef811b02a spirv: Add support for OpBitcast in OpSpecConstantOp
This is required for OpenCL but not Vulkan.  This fixes a bunch of
OpenCL CTS fails using the SPIR-V back-end in LLVM as opposed to
SPIRV-LLVM-Translator.

Reviewed-by: Karol Herbst <kherbst@redhat.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37555>
2025-09-27 13:45:12 +00:00
Marek Olšák
7df6431bf7 gallium/u_threaded: remove refcounting for buffer_subdata
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37568>
2025-09-26 23:43:53 +00:00
Marek Olšák
5b688ec078 gallium/u_threaded: remove refcounting for buffer_unmap
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37568>
2025-09-26 23:43:53 +00:00
Marek Olšák
4749325e08 gallium/u_threaded: remove refcounting for get_query_result_resource
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37568>
2025-09-26 23:43:52 +00:00
Marek Olšák
85db3e7de5 gallium/u_threaded: remove refcounting for draw mesh indirect buffers
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37568>
2025-09-26 23:43:52 +00:00
Marek Olšák
381a88fdbd gallium/u_threaded: remove refcounting for clear_buffer
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37568>
2025-09-26 23:43:52 +00:00
Marek Olšák
08c3edac48 gallium/u_threaded: remove refcounting for dispatch compute indirect buffers
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37568>
2025-09-26 23:43:52 +00:00
Marek Olšák
9d15ef96ca gallium/u_threaded: remove refcounting for draw indirect buffers
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37568>
2025-09-26 23:43:52 +00:00
Yiwei Zhang
80126bccf8 panvk: use os_get_option instead of getenv
...so that the options work on Android

Reviewed-by: John Anthony <john.anthony@arm.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37591>
2025-09-26 22:52:38 +00:00
Sergi Blanch Torne
114666733c Revert "ci: Fix for GitLab 18.2.2 upgrade"
This reverts commit ece0d4f998.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37599>
2025-09-26 21:38:36 +00:00
Sergi Blanch Torne
d027f1b336 Revert "ci: Temporarily hardcode S3 artifact path"
This reverts commit a693539ff9.

It was modified in 8803388d15

Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37599>
2025-09-26 21:38:36 +00:00
Aleksi Sapon
583526ba2c wsi/metal: fix cleanup on swapchain image creation failure
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33779>
2025-09-26 20:59:35 +00:00
Aleksi Sapon
fd045ac99c wsi/metal: add support for color spaces
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33779>
2025-09-26 20:59:35 +00:00
Aleksi Sapon
f022754647 wsi/metal: move VkFormat -> MTLPixelFormat conversion to wsi_common_metal_layer.m
Reviewed-by: Lucas Fryzek <lfryzek@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33779>
2025-09-26 20:59:34 +00:00
Mel Henning
d32e6f2842 nak: Implement bitfield_extract with OpSgxt
on sm70+ where we don't have a native bfe instruction. This
implementation is fewer instructions than the nir lowering.

This also implements the bfe semantics that vkd3d-proton wants. d3d12
wants specific behavior for out-of-bounds ibfe like
bitfieldExtract(-1, 15, 20) while spirv considers this undefined
behavior. Tested with VKD3D_TEST_FILTER=test_shader_instructions

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13795
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37592>
2025-09-26 20:38:04 +00:00
Mel Henning
c8116679c3 nak: Add OpSgxt
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37592>
2025-09-26 20:38:04 +00:00
Mary Guillemard
1c08e7766e nouveau/headers: Handle unbound sub channels in vk_push_print
In case of a unbound subchannel usage, the hardware will route it to the
GPFIFO class.

NVIDIA blobs use this and this was causing an assertion to be fired up
in nv_push_dump.

This adds support for that and also add mapping for cls_gpfifo in
nv_push_dump.

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/37475>
2025-09-26 19:40:47 +00:00
Mary Guillemard
03869631db nouveau/headers: Import Blackwell host class headers
From nvidia-open-kernel-modules as they missing on open-gpu-doc at the
moment.

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/37475>
2025-09-26 19:40:47 +00:00
Mary Guillemard
5e9ddffd4a nouveau/headers: Properly set subchannel 3 to 2D engine in vk_push_print
Fixes: 4bb256e5ac ("nouveau: Handle subchannels better in nv_push_print()")
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/37475>
2025-09-26 19:40:47 +00:00