Commit graph

71677 commits

Author SHA1 Message Date
Rob Clark
ae8907f270 freedreno/registers: Add a way to disable deprecated warnings
Intended for temporarily disabling the warnings when bringing up a new
gen.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37009>
2025-08-28 16:59:28 +00:00
Rob Clark
f31883c20c freedreno/registers: pm4 cleanup
Use <stripe> to handle 32b vs 64b gpu differences.

Signed-off-by: Rob Clark <rob.clark@oss.qualcomm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37009>
2025-08-28 16:59:28 +00:00
Philipp Zabel
0e6b24451d rusticl: Fix hidden lifetime warnings
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Fix the following warning, and others that are similar, as rustc
suggests:

warning: hiding a lifetime that's elided elsewhere is confusing
   --> ../src/gallium/frontends/rusticl/mesa/compiler/nir.rs:282:22
    |
282 |     pub fn variables(&mut self) -> ExecListIter<nir_variable> {
    |                      ^^^^^^^^^     -------------------------- the same lifetime is hidden here
    |                      |
    |                      the lifetime is elided here
    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
help: use `'_` for type paths
    |
282 |     pub fn variables(&mut self) -> ExecListIter<'_, nir_variable> {
    |                                                 +++

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37059>
2025-08-28 16:39:53 +00:00
Mike Blumenkrantz
1d3f52f78f zink: fixes for flushing clears
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
* immediately terminate renderpass after flushing
this otherwise could persist and trigger a bad state where the
zsbuf is eliminated

* no-op if already in renderpass
this function can be called from within a renderpass, at which time
it should do nothing because clears will be flushed automatically

Fixes: 5de34e47ad6 ("zink: unify/fix clear flushing")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37052>
2025-08-28 13:32:53 +00:00
Yonggang Luo
51f2314640 d3d10umd: Fixes gcc warning: enumeration value 'D3D11_SB_OPERAND_TYPE_FUNCTION_BODY' not handled in switch [-Wswitch]
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: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37040>
2025-08-28 08:55:04 +00:00
Guilherme Gallo
a8a0f11953 ci/zink: Document bypassed failures
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
A few failures bypassed the pipeline, since a `zink-lavapipe` job [1]
misbehaved (did not run the deqp-runner tests at all), making the MR [2]
merge and subsequent marge pipelines fail.

[1]: https://gitlab.freedesktop.org/mesa/mesa/-/jobs/83398228
[2]: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37024

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37039>
2025-08-28 01:46:05 -03:00
Pohsiang (John) Hsu
dac9360bac mediafoundation: periodic clang-format, no code changes
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Wenfeng Gao <wenfeng@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37035>
2025-08-27 23:18:35 +00:00
Rohit Athavale
0d2502e892 mediafoundation: Add IsSupported() & GetValue() for CODECAPI_AVEncVideoInputDeltaQPBlockSettings
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com>
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37035>
2025-08-27 23:18:35 +00:00
Sil Vilerino
e47d5c1019 d3d12: Fix two pass flag setting and rate control dirty flag check
Reviewed-by: Pohsiang (John) Hsu <pohhsu@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37035>
2025-08-27 23:18:34 +00:00
Mike Blumenkrantz
b122c3eaa9 zink: unify/fix clear flushing
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
this ensures the blitting/queries_disabled flags are always set/unset
and the layouts are too

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37024>
2025-08-27 14:01:07 +00:00
Mike Blumenkrantz
c6062e8463 zink: update resized swapchain depth buffer layout while blitting
this otherwise will not be set for the renderpass

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37024>
2025-08-27 14:01:07 +00:00
Michal Krol
0aa5bed029 llvmpipe: Add support for 8x MSAA.
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Advertise format support for 8 samples.

Extend tri rasteriser to operate on fb_max_samples samples, rather than hardcoded 4.

Since we have run out of space for input mask in fragment shaders, add a second 64-bit input mask to handle samples 4 to 7.

Add sample positions for 8xMSAA.

Reviewed-by: Brian Paul brian.paul@broadcom.com
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37001>
2025-08-27 12:04:13 +00:00
Mike Blumenkrantz
92f2ef5a72 zink: fix sizing on resolve resource array
let the compiler figure it out instead of mis-sizing it

Fixes: a71b6ac41a ("tc: also inline depth resolves")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37012>
2025-08-27 11:12:13 +00:00
Mike Blumenkrantz
8c1519318f zink: trigger fb unbind barrier on resolve images too
these are likely to be used as fs textures, therefore always
pre-sync them in tiler mode

Fixes: a71b6ac41a ("tc: also inline depth resolves")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37012>
2025-08-27 11:12:13 +00:00
Ritesh Raj Sarraf
3dc9f2f70f ci: Uprev kernel to pick up virtio fix and use it for venus
The regressed changes have been reverted for Linux 6.16 in commit 9d85a32f0e6bf6878676a9ec7ce3c8032c500c7c

This should now allow us to use Linux 6.16 for the rest of the testing

Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36909>
2025-08-27 00:15:57 +00:00
Alexandros Frantzis
67f9aac728 egl/wayland: Support pbuffer surfaces
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13454
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36064>
2025-08-26 20:03:23 +00:00
Tapani Pälli
ad2ef16198 iris/anv: toggle on CACHE_MODE_0::MsaaFastClearEnabled on BMG G31
This increases rate of depth fast clear rate on BMG G31
per HSD 22020044224.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35966>
2025-08-26 19:35:34 +00:00
Robert Mader
461e3848b9 panfrost: Add lowerings for the NV61, NV24 and NV42 pixel formats
For now only add the fallback variants with multiple sampler views in
order to keep things simple.

Signed-off-by: Robert Mader <robert.mader@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36890>
2025-08-26 18:08:37 +00:00
Robert Mader
6c83ae95a2 mesa: Add support for NV61, NV24 and NV42 pixel formats
Which are essentially variants of NV12. All of them have been tested
with the Weston client-buffer test with llvmpipe and radeonsi.

Signed-off-by: Robert Mader <robert.mader@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36890>
2025-08-26 18:08:37 +00:00
Ahmed Hesham
61fd24c552 rusticl: Fix negative CTS device tests
`clRetainDevice` and `clReleaseDevice` ignore the device argument, it
should be checked for validity and return `CL_INVALID_DEVICE` if it
fails.

`check_cl_device_type` fails if entrypoint is passed `0` as the device
type. Zero as an input for a bitwise and operation will always result
in a zero, so the utility function fails to return
`CL_INVALID_DEVICE_TYPE`.

Signed-off-by: Ahmed Hesham <ahmed.hesham@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37008>
2025-08-26 17:52:40 +00:00
Erik Faye-Lund
f9248e81a5 pan/lib: clean up tilebuffer size helpers
This way we report the *actual* tilebuffer sizes rather than reporting
twice the amount and then correcting for it later on. The distinction
really only matters on V4 and V6 GPUs, but let's get it correct.

This shouln't have any functional changes, it just makes it easier to
reason about what each GPU supports.

While we're at it, correct the typo in the comment about what gens
supports disabling pipelining. It's *not* supported on V6.

Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35755>
2025-08-26 16:21:23 +00:00
Jesse Natalie
11bf9ad9ee d3d12: Only use DComp swapchains when alpha is present in the framebuffer
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36994>
2025-08-26 13:31:13 +00:00
Jesse Natalie
75d285c2e2 wgl: Always revalidate framebuffer when front is requested
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36994>
2025-08-26 13:31:13 +00:00
Jesse Natalie
cc017057eb d3d12: Flush command queue when destroying or resizing
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36994>
2025-08-26 13:31:13 +00:00
Brais Solla
ae7f9552be r300: Added support for GL_ATI_meminfo and GL_NVX_gpu_memory_info
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36859>
2025-08-26 11:47:18 +00:00
Connor Abbott
7d925dbc52 freedreno/ci: Update a750 expectations
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/32533>
2025-08-25 20:11:58 +00:00
Christian Gmeiner
e689b342fe etnaviv: Optimize sampler view iteration with u_foreach_bit(..)
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Replace loop over all PIPE_MAX_SAMPLERS with u_foreach_bit(..) to iterate
only over active sampler views. This avoids unnecessary iterations.

Improves drawoverhead test 1 performance by ~10%.

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/36831>
2025-08-25 19:21:09 +00:00
Mike Blumenkrantz
39ffc3f629 zink: when sparse unbinding, always wait on main timeline semaphore
this ensures synchronization between gfx/compute work and the sparse queue

fixes KHR-GL46.sparse_buffer_tests.BufferStorageTest_cases_*. on turnip

cc: mesa-stable

Closes: #13747
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36954>
2025-08-25 14:35:25 -04:00
Mike Blumenkrantz
2cf626d17d zink: pass ctx to sparse bind functions
no functional changes

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36954>
2025-08-25 14:35:25 -04:00
Mike Blumenkrantz
c9746103f5 zink: break out unflushed batch waiting into separate function/mechanism
this is useful on its own

no functional changes

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36954>
2025-08-25 14:35:25 -04:00
Mike Blumenkrantz
483d53e0e3 zink: ALWAYS_INLINE resource inlines
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36954>
2025-08-25 14:35:25 -04:00
Mike Blumenkrantz
f9bf524a6d zink: inline zink_resource_access_is_write()
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36954>
2025-08-25 14:35:25 -04:00
Jesse Natalie
fee83f4fcc d3d12: Move logicop descriptor initialization to after all blits
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
The blit code is destructive on the framebuffer state, which means
that it can set new render targets. If you have 2 BGRA surfaces bound
for logic ops, then after setting up the surface for the first one,
the blit for the second will end up destroying + re-creating the
surface for the first one.

Let's be robust to this by putting the blit in a first pass, and
then actually initializing all of the descriptors in a second pass.

This is still woefully inefficient but at least it's correct.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36945>
2025-08-25 17:21:37 +00:00
Jesse Natalie
cd3885c592 d3d12: Move logicop emulation resource from surface to resource
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36945>
2025-08-25 17:21:37 +00:00
Jesse Natalie
784f93653a d3d12: Support more logic op formats
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36945>
2025-08-25 17:21:36 +00:00
Jesse Natalie
91c063493d d3d12: Stop using util_framebuffer_init
For https://gitlab.freedesktop.org/mesa/mesa/-/issues/13262

This just inlines the existing logic. A surface cache needs to be
introduced next.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36945>
2025-08-25 17:21:36 +00:00
Mike Blumenkrantz
dfab0e952b zink: sprinkle in a bunch of MESA_TRACE_FUNC
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36984>
2025-08-25 15:34:20 +00:00
Eric Engestrom
fa74e939bf ci/piglit: automatically use LAVA proxy
This avoids having to hardcode the proxy in the traces `download-url` or
jobs setting `PIGLIT_REPLAY_EXTRA_ARGS` and accidentally overriding the
default args when the author meant to append.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36955>
2025-08-25 14:52:38 +00:00
Eric Engestrom
b4e49664f4 vmware/ci: fix caching proxy url
FDO_HTTP_CACHE_URI is not defined, but LAVA_HTTP_CACHE_URI is and is the
right URL for this.

This job is currently disabled, but fix it in preparation for when
someone eventually brings it back.

Note that this line also has another bug that will be addressed by the
next commit.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36955>
2025-08-25 14:52:37 +00:00
Eric Engestrom
2851a305fd virgl/ci: drop invalid but overridden empty caching proxy
The variable is undefined, leading to an empty proxy being set, but
luckily it's actually overridden back to the default args, so this was
just dead code.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36955>
2025-08-25 14:52:37 +00:00
David Rosca
e1fcc403d4 radeonsi/vcn: Fix HEVC encode transform_skip with old FW
Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36845>
2025-08-25 13:55:40 +00:00
David Rosca
26fc4798c1 radeonsi/vcn: Fix HEVC encode cu_qp_delta with old FW
VCN2 needs interface version bump to enable it.

Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36845>
2025-08-25 13:55:39 +00:00
David Rosca
e945bb3649 radeonsi/vcn: Fix compatibility with old FW for encode
The interface version can't be higher than the FW version, otherwise
FW will reject all encode jobs.

Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36845>
2025-08-25 13:55:39 +00:00
David Rosca
51d5c0d537 radeonsi/vcn: Disable H264/5 constrained intra pred with rate control
There is a FW issue when using constrained intra prediction with rate
control enabled, causing unexpected quality degradation.
Disable it until FW fix is available.

Cc: mesa-stable
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36837>
2025-08-25 13:34:00 +00:00
Konstantin Seurer
9df7b48d2f nir: Use nir_def_as_* in more places
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36746>
2025-08-24 14:03:09 +00:00
Pierre-Eric Pelloux-Prayer
0088fbc3a9 radeonsi/tests: update rasterpos results
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
It's not a Flake anymore: it consistently fails instead of crashing
sometimes.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36411>
2025-08-23 14:44:29 +00:00
Karol Herbst
d9c3bbb08c aux/trace: move fence_server calls outside the locked area
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Multiple contexts can use those causing deadlocks if e.g. fence_get_fd
gets called before fence_server_signal on another thread on the same
pipe_fence_handle.

Cc: mesa-stable
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36819>
2025-08-23 13:40:58 +02:00
Karol Herbst
5fe097a844 rusticl: add SPDX tags
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Using MIT as mesa is MIT by default.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36856>
2025-08-23 11:19:57 +00:00
Pohsiang (John) Hsu
e76e95e084 gallium/pipebuffer: fix multithread issue on pb_slab_manager_create_buffer
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This is an issue found in testing multiple mediafoundation MFT
concurrently.  Thanks to Jesse for the fix.

cc: mesa-stable

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36923>
2025-08-23 02:09:15 +00:00
Mel Henning
b5973bed78 zink: Add zink_check_requirements
This is a new tool that checks a driver against the vulkan profile and
complains about any missing features.

Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36061>
2025-08-22 16:08:11 -04:00