Commit graph

210186 commits

Author SHA1 Message Date
Hyunjun Ko
b133855c40 anv/video: add VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_KHR for minimum ctb sizes
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: Hyunjun Ko <zzoon@igalia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36211>
2025-08-08 11:26:15 +00:00
Hyunjun Ko
0453eb0c4b anv/video: create Motion Vector buffers for encoding too
Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36211>
2025-08-08 11:26:15 +00:00
Hyunjun Ko
090d7e6582 anv/video: don't set the MVDL1Zero for encoding
Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36211>
2025-08-08 11:26:15 +00:00
Hyunjun Ko
68e862fe51 anv/video: set short term ref list1 even if P frames provided
Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36211>
2025-08-08 11:26:15 +00:00
Hyunjun Ko
c55366682c anv/genxml: the type of POC delta changes correctly
It should be between -16 and 16

Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36211>
2025-08-08 11:26:14 +00:00
Hyunjun Ko
5f6aa3d297 anv/video: fix to set some attributes for HCP_PIC_STATE.
Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36211>
2025-08-08 11:26:14 +00:00
Hyunjun Ko
609ef617c9 vulkan/video: align with spec correctly for h265 slice header.
Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36211>
2025-08-08 11:26:13 +00:00
Emma Anholt
99f09f8047 Revert "tu: Use nir_opt_reassociate."
This reverts commit 3735ac6165.  It
regressed rendering on a few D3D11 traces we have, and I won't have time
to debug before going camping for a few days.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36657>
2025-08-08 11:10:16 +00:00
Karol Herbst
9d8c95f8d3 zink: fix data race in descriptor_util_pool_key_get
Two threads could end up creating a pool_key for the same hash and end up
overwriting the earlier one.

Fixes flaky image kernel_read_write CL CTS tests.

Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36652>
2025-08-08 10:26:52 +00:00
Karol Herbst
fe09dfbcf3 vulkan: use p_atomic_read on vk_descriptor_set_layout::ref_cnt
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36652>
2025-08-08 10:26:52 +00:00
Alyssa Rosenzweig
5b6ad73ac7 hk: reduce storage desc
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36633>
2025-08-08 10:10:58 +00:00
Alyssa Rosenzweig
9aad6f005d hk: drop unused
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36633>
2025-08-08 10:10:58 +00:00
Alyssa Rosenzweig
ba00c87fdf hk: fix pathological RAM use for tess emulation
These * 32's got added when debugging this I guess and I never took them out.
Ouchie. Reduces memory footprint of tess by 32x. Geez.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36633>
2025-08-08 10:10:58 +00:00
Alyssa Rosenzweig
7eb7db3613 hk: clarify command pool types
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36633>
2025-08-08 10:10:58 +00:00
Alyssa Rosenzweig
e9bf1c59ed hk: fix todo
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36633>
2025-08-08 10:10:58 +00:00
Alyssa Rosenzweig
1ef97241d7 asahi: reduce ppp alignment
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36633>
2025-08-08 10:10:58 +00:00
Alyssa Rosenzweig
7297a699f7 asahi: clang-format
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36633>
2025-08-08 10:10:57 +00:00
David Rosca
9491ea761f radv/video: Use more common defines
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36645>
2025-08-08 09:22:54 +00:00
David Rosca
d1165984e9 ac/vcn_dec: Add RDECODE_IT_SCALING_TABLE_SIZE
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36645>
2025-08-08 09:22:54 +00:00
David Rosca
532eb40404 radv/video: Remove unused enum
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36645>
2025-08-08 09:22:54 +00:00
David Rosca
c904796350 radv/video: Simplify vp9 q params
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36645>
2025-08-08 09:22:53 +00:00
David Rosca
27dec41c81 radv/video: Don't init vp9 probs table in message buffer
This is needed in context buffer, but message buffer only uses the
segmentation data.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36645>
2025-08-08 09:22:53 +00:00
David Rosca
142d54817a radv: Add timeout to video encode query
Reviewed-by: Dave Airlie <airlied@redhat.com>
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36645>
2025-08-08 09:22:52 +00:00
Lionel Landwerlin
4c65aef155 brw: implement ACCESS_COHERENT on Gfx12.5+
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36595>
2025-08-08 08:44:22 +00:00
Samuel Pitoiset
2e51b50db2 radv: regroup CB related states emission together
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31659>
2025-08-08 08:16:26 +00:00
Samuel Pitoiset
fa677ca0c3 radv: track more CB related context registers on < GFX12
The tracked registers mechanism isn't used yet on GFX12.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31659>
2025-08-08 08:16:25 +00:00
Samuel Pitoiset
6a170c5de1 radv: precompute color blend equations
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31659>
2025-08-08 08:16:25 +00:00
Samuel Pitoiset
52589ed1e9 radv: precompute the mask for color write attachments
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31659>
2025-08-08 08:16:25 +00:00
Samuel Pitoiset
43cc048deb radv: precompute the mask for enabled color writes
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31659>
2025-08-08 08:16:24 +00:00
Valentine Burley
d2a1acaa2c zink/ci: Document flakes on ANV
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36662>
2025-08-08 09:54:12 +02:00
Valentine Burley
b2eba071c5 zink/ci: Skip flaky tests on CML due to HW deficiency
This is a known hardware limitation on Gfx9 that can cause intermittent
failures. See https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36348#note_3037412.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36662>
2025-08-08 09:02:28 +02:00
Yonggang Luo
723eeac89b util: Refactoring util_dl_get_path_from_proc out of clc/clc_helpers.cpp
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
For getting clc_helpers.cpp can be compiled with gcc/mingw

Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36597>
2025-08-07 21:15:13 +00:00
Konstantin Seurer
38db7119cc lavapipe: Mask invalid shader stage flags
lvp_execute.c iterates over all set bits which can cause oob access.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13512
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36371>
2025-08-07 20:46:24 +00:00
Konstantin Seurer
fe4c3dcab8 vulkan: Add MESA_VK_SHADER_STAGE_ALL
For masking invalid bits.

Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36371>
2025-08-07 20:46:24 +00:00
Konstantin Seurer
c4b18c689f radv: Emit compressed primitive nodes on GFX12
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Emits two triangles per node whenever possible. The nir code will
revisit the triangle node to handle the second triangle only if both
triangles are interescted by the ray.

Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35734>
2025-08-07 20:23:15 +00:00
Konstantin Seurer
fb83a5793a radv/rra/gfx12: Handle compressed primitive nodes
Reviewed-by: Natalie Vock <natalie.vock@gmx.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35734>
2025-08-07 20:23:15 +00:00
Faith Ekstrand
5eb2c2ab06 nouveau/winsys: Refactor nouveau_ws_context_create()
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:13 +00:00
Faith Ekstrand
4bcb784339 nouveau/winsys: Allow subchan_dealloc() on zeroed subchans
This makes cleanup a little more robust.  I'm not sure it's strictly
needed as the kernel will probably just error in that case but it's
probably safer to not call destroy on something that isn't registered or
is already destroyed.

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:13 +00:00
Faith Ekstrand
5a9eda9285 nouveau/push: Map b0 classes to subchannel 4
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:12 +00:00
Daniel Almeida
e2872a0ab0 nouveau: Handle video decode in nv_push_print()
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:11 +00:00
Dave Airlie
4bb256e5ac nouveau: Handle subchannels better in nv_push_print()
Do not hardcode subchannels to specific classes. Instead, read the right values
from calls to SET_OBJECT.

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:10 +00:00
Faith Ekstrand
ce2a2d7ed0 nouveau/headers: Import video encode/decode headers from NVIDIA
From open-gpu-doc commit c8607fe576b5 ("Add hopper and blackwell
dma-copy class header files").

Signed-off-by: Daniel Almeida <daniel.almeida@collabora.com>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:10 +00:00
Daniel Almeida
03d79bc09d nouveau/headers: Import the video class headers from NVIDIA
From open-gpu-doc commit c8607fe576b5 ("Add hopper and blackwell
dma-copy class header files").

Signed-off-by: Daniel Almeida <daniel.almeida@collabora.com>
Signed-off-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:10 +00:00
Faith Ekstrand
31a6e80bb3 nouveau/class_parser: Strip unnecessary parens
Some of the headers (video is a particularly egregious culprit) wrap
defined values in parens, even when they don't need to be.  This changes
the parser to up-front strip all outer pairs of parens to get us down to
the original value.

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36641>
2025-08-07 20:09:10 +00:00
Simon Perretta
ba92104b56 wsi/display: make HDR_OUTPUT_METADATA, Colorspace properties optional
Fixes some dEQP-VK.wsi.display.* issues on platforms that don't
support said properties following their addition in !35461.

Fixes: b4176393a0 ("wsi/display: Implement VK_EXT_hdr_metadata on KHR_display swapchain")

Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Reviewed-by: David Rosca <david.rosca@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36607>
2025-08-07 20:32:02 +01:00
Mel Henning
2bd5639152 nvk: Disable non-graphics timestamp queries
We can support this in the future, but we don't implement it just yet.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36651>
2025-08-07 18:47:47 +00:00
Mel Henning
9c6d6daf1b nvk: Check subchannels are valid in nv_push
The hardware already checks that any subchannel that we use is valid,
but those error messages don't provide much context and can be hard to
debug. Add an assert in nv_push that the subchannel we're using has
been allocated. This way, we can pinpoint exactly where the incorrect
method was used by looking at the stack trace.

Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36651>
2025-08-07 18:47:47 +00:00
Mel Henning
521537503c nvk: Factor out nvk_queue_engines_from_queue_flags
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36651>
2025-08-07 18:47:47 +00:00
Mel Henning
87d6840110 nvk: Call cmd_buffer_begin_* based on queue flags
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36651>
2025-08-07 18:47:47 +00:00
Faith Ekstrand
66017ae4a6 nvk: Handle empty pushes in nvk_queue_push()
The only reason why this did not crash until now  is because NVKMD_ENGINE_3D
and NVKMD_ENGINE_COMPUTE are always set in the only queue we returned.

With the addition of a video queue, where no state must be submitted, the logic
would try to push an empty push_buffer. This is wrong and the first place where
it fails is when it tries to allocate a BO of size 0 for the push data.

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36651>
2025-08-07 18:47:46 +00:00