Karol Herbst
dd652bb8f0
agx: enable bitfield lowering for cl_khr_extended_bit_ops
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35448 >
2025-06-18 10:13:44 +00:00
Karol Herbst
a16eb630fa
llvmpipe: more bitfield_extract lowering
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35448 >
2025-06-18 10:13:44 +00:00
Karol Herbst
cf3b16f7af
clc: support cl_khr_extended_bit_ops
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35448 >
2025-06-18 10:13:44 +00:00
Karol Herbst
1a5b5a883d
vtn: mark BitInstructions cap as supported
...
It simply enables certain Shader only instructions for Kernels.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35448 >
2025-06-18 10:13:44 +00:00
Samuel Pitoiset
e5d047d160
ci: uprev VKCTS main to 9cc8e038994c32534b3d2c4ba88c1dc49ef53228
...
RADV is the only driver using VKCTS main. This bumps adds tests for
maintenance9, unified_image_layout and VP9.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35540 >
2025-06-18 09:15:34 +00:00
Christian Gmeiner
07f5cbcd9b
etnaviv: nir: Add assertion to prevent src2 conflicts in texture instructions
...
Add an assert to catch cases where both nir_tex_src_comparator and
nir_tex_src_ddy attempt to use the same src2 slot in texture instructions.
This prevents silent overwrites that could cause incorrect shader
compilation.
The assertion helps catch potential issues in complex texture operations
like those found in dEQP textureGrad shadow tests, where multiple
texture sources compete for the same hardware slot.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35531 >
2025-06-18 08:58:41 +00:00
Christian Gmeiner
3225d3e918
etnaviv: nir: Use texldgpcf opcode for shadow texture gradients
...
Passes all dEQP-GLES3.functional.shaders.texture_functions.texturegrad.*
tests on GC7000.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35531 >
2025-06-18 08:58:41 +00:00
Christian Gmeiner
7149597860
etnaviv: Push nir_tex_instr down to etna_emit_tex(..)
...
There are too many parameters already.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35531 >
2025-06-18 08:58:41 +00:00
Christian Gmeiner
cc4a6fa25c
etnaviv: nir: Legalize txd comparator
...
The hardware expects textureGrad (txd) shadow comparator to be
specified as the w component of the coordinate, rather than as a
separate comparator source.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35531 >
2025-06-18 08:58:41 +00:00
Christian Gmeiner
0f25d5e3f4
etnaviv: isa: Add texldgpcf instruction
...
Implement support for the texldgpcf instruction, which handles texture
gradient sampling with shadow comparison.
Blob generates such txf's for
dEQP-GLES3.functional.shaders.texture_functions.texturegrad.*shadow*
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Lucas Stach <l.stach@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35531 >
2025-06-18 08:58:40 +00:00
Karol Herbst
21ed913198
rusticl/image: enable sRGB support
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35535 >
2025-06-18 06:53:19 +00:00
Georg Lehmann
e0cdf4dfdd
radv/nir/lower_cmat: use common matrix layout on gfx12
...
The GFX12 ISA doc describes other layouts for A/B, but they are identical
to the C layout with the exception of the order of the rows (columns for A).
And as long as these are swapped in the same way for both A and B, the muladd
result will be the same. So we use the C layout for all uses.
This will simplify conversions between uses, and allows A/B to use a single
memory access for load/store in wave32.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35570 >
2025-06-18 06:33:06 +00:00
Valentine Burley
e82e1bca1d
intel/ci: Drop deprecated fp16 environment variable
...
Fixes: cf3ec8d3b9 ("rusticl: enable proper fp16 support")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35574 >
2025-06-18 06:13:25 +00:00
Valentine Burley
04d35cacbf
intel/ci: Reduce parallelism of intel-adl-cl job
...
The intel-adl-cl job was previously running on two DUTs, but the
runtime reported by deqp-runner was only about 3 minutes.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35574 >
2025-06-18 06:13:25 +00:00
Valentine Burley
68244ee819
anv/ci: Add a pre-merge vkd3d job on ADL
...
Introduce a new, pre-merge vkd3d-proton job on Alder Lake, and move the
VK_DRIVER variables to the .anv-test template.
Signed-off-by: Valentine Burley <valentine.burley@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35574 >
2025-06-18 06:13:25 +00:00
Yiwei Zhang
5cb50c3cf5
hasvk: use narrow range to match up with mesa EGL
...
This matches up with the native gl drivers as well as the media stack.
- VK_SAMPLER_YCBCR_RANGE_ITU_NARROW <=> EGL_YUV_NARROW_RANGE_EXT
Cc: mesa-stable
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35597 >
2025-06-17 22:51:40 -07:00
Yiwei Zhang
c169ad60c1
anv: use narrow range to match up with mesa EGL
...
This matches up with the native gl drivers as well as the media stack.
- VK_SAMPLER_YCBCR_RANGE_ITU_NARROW <=> EGL_YUV_NARROW_RANGE_EXT
Cc: mesa-stable
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35597 >
2025-06-17 22:51:30 -07:00
Connor Abbott
60843bc806
tu: Re-emit viewports/scissors when has_fdm changes
...
This shouldn't matter if FDM is actually enabled, because in that case
the pipeline must enable the bit and we dirty FDM state at the
beginning, but pipelines can enable FDM even if the renderpass they're
used in doesn't use FDM and in that case we still need to use the FDM
path to duplicate the viewports. Fix the case where a different pipeline
is bound that enables FDM without actually using FDM.
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35581 >
2025-06-17 23:04:00 +00:00
Connor Abbott
0017b9e8ed
tu: Make sure to re-emit viewports if per_view_viewport changes
...
We may need to re-emit the viewports if a different shader is bound that
does or doesn't use gl_ViewportIndex.
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35581 >
2025-06-17 23:04:00 +00:00
Gurchetan Singh
f7a9991b89
mesa: add option to enable virtgpu_kumquat FFI for gfxstream
...
Will be used by Cuttlefish CI/CD, but also commonly used by
gfxstream developers.
meson setup gfxstream-build -Dvulkan-drivers="gfxstream" -Dgallium-drivers="" -Dvirtgpu_kumquat=true -Dopengl=false -Drust_std=2021
In distros, virtgpu_kumquat is not expected to be packaged since
it is a CI/CD tool.
Reviewed-by: Aaron Ruby <aruby@qnx.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35210 >
2025-06-17 22:28:55 +00:00
Gurchetan Singh
f2b07903ab
mesa: import virtgpu_kumquat_ffi
...
This adds a frontend to C-FFI to VirtGpuKumquat, to be used
with gfxstream. This allows testing gfxstream, without a virtual
machine.
Reviewed-by: Aaron Ruby <aruby@qnx.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35210 >
2025-06-17 22:28:55 +00:00
Gurchetan Singh
c00027b46f
mesa: import virtgpu kumquat
...
This is Rust-based client side of the Kumquat protocol.
Reviewed-by: Aaron Ruby <aruby@qnx.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35210 >
2025-06-17 22:28:54 +00:00
Gurchetan Singh
040b256abd
mesa: import mesa3d_protocols
...
This crate is intended to house zerocopy-based protocols
and utilites for them. This is useful for paravirtualization
and microkernel-like systems.
Currently, the only supported protocol is the Kumquat GPU protocol.
https://crosvm.dev/book/appendix/rutabaga_gfx.html#kumquat-media-server
And there is a concept of a "KumquatStream". In the future, there
would be more protocols, like a "MagmaStream". In fact, this crate
would house more generic streams in the future, a gfxstream crate
(* hears minds getting blown *) if you would like.
Reviewed-by: Aaron Ruby <aruby@qnx.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35210 >
2025-06-17 22:28:54 +00:00
Gurchetan Singh
e0b1193361
mesa: import mesa3d_util
...
This is intended to a Rust analog to "src/util", which has
many utilities used by Mesa developers. This is mostly
a copy of ${crosvm} rutabaga_gfx/src/rutabaga_os (which will
be deleted in favor of this crate).
Key constructs include:
- SharedMemory
- MemoryMapping
- Tube (sockets, essentially)
- OwnedDescriptor (HANDLE or fd-based)
- WaitContext (epoll, ..)
As one would expect, Linux implementations are the most complete.
Acked-by: Aaron Ruby <aruby@qnx.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35210 >
2025-06-17 22:28:54 +00:00
Eric Engestrom
0766d14562
lavapipe/ci: catch all the dEQP-VK.synchronization2.timeline_semaphore.* flakes
...
Suggested-by: @daniels
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:36 +00:00
Eric Engestrom
734523f851
broadcom/ci: catch more similar flakes
...
Suggested-by: @daniels
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:36 +00:00
Eric Engestrom
393cbfa8f7
radv+zink/ci: document flakes seen recently
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:36 +00:00
Eric Engestrom
418ebcde82
lavapipe/ci: document flakes seen recently
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
60c89bf6f3
freedreno/ci: document flakes seen recently
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
cc1cbf87f0
broadcom/ci: document flakes seen recently
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
454684aa59
radv/ci: document flakes seen recently
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
d5a3cfac25
radeonsi/ci: document flakes seen recently
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
494bb340eb
lavapipe/ci: skip timing out tests
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
0dcdee80c6
lavapipe/ci: document new failure
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
8d497c94c1
nvk+zink/ci: document new failures
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
bd5b852ee6
freedreno/ci: document fixed & new failures
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
757ad6a333
etnaviv/ci: document new failure
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Eric Engestrom
92cf8b2dc3
radeonsi/ci: update glcts expectations
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35592 >
2025-06-17 21:49:35 +00:00
Brian Paul
0b2b51cf1c
svga: assorted code clean-ups
...
- formatting clean-ups, remove tabs, trailing whitespace.
- move var decls into loops or closer to where they're used.
- add const qualifiers.
No functional changes.
Signed-off-by: Brian Paul <brian.paul@broadcom.com >
Reviewed-by: Neha Bhende <neha.bhende@broadcom.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35579 >
2025-06-17 20:50:48 +00:00
Mike Blumenkrantz
5bc840ea62
zink: add ZINK_DEBUG to skip msaa stores on renderpasses which have ended
...
this is super illegal and not conformant but very desirable on tilers
for certain apps
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 15:49:38 -04:00
Mike Blumenkrantz
2b6e7c4609
tc: add #define to disable strict resolve merging
...
this enables merging fb resolves which do not cover the full dst
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 15:49:36 -04:00
Mike Blumenkrantz
8933b3ed39
tc: add resolve resource to rp info
...
this allows non-winsys resolves to be optimized out
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 15:49:34 -04:00
Mike Blumenkrantz
e2d40aab6f
tc: rework rp info incrementing
...
the logic for incrementing this in recorder/executor threads was far
too complex, which meant there were unlimited bugs which could trigger
in subtle corner cases
rework this to be simpler to ensure that the executor info always matches
up with the recorder info
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 15:49:31 -04:00
Mike Blumenkrantz
4989a40e89
tc: explicitly terminate renderpasses on fb access
...
this helps to avoid some deadlock scenarios when rp tracking gets more complex,
and it also makes rp splitting a bit more precise
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 15:49:29 -04:00
Mike Blumenkrantz
ea85a14c35
tc: fix zsbuf rp info persistence across fb states
...
zsbuf info is only part of data8[3], not the whole thing
cc: mesa-stable
Acked-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 15:49:27 -04:00
Mike Blumenkrantz
438e5abc06
zink: create inline resolve surface in begin_rendering
...
this will unify more code in a future commit
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 14:05:30 -04:00
Mike Blumenkrantz
a5265384fc
zink: move tc inlined resolve code down a bit
...
this was getting clobbered by msrtss
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 14:05:30 -04:00
Mike Blumenkrantz
7b3454322c
zink: add format param to zink_surface_resolve_init
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 14:05:30 -04:00
Mike Blumenkrantz
8755a8b0ca
zink: extract resolve surface init to separate function
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 14:05:30 -04:00
Mike Blumenkrantz
9b43daca24
zink: be slightly more precise about flagging loadop change on fb invalidate
...
probably doesn't change anything anywhere, but it can't hurt
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35477 >
2025-06-17 14:05:30 -04:00