David Rosca
8b1a889e45
radeonsi/vcn: Add support for QVBR rate control mode
...
This rate control mode needs pre-encode enabled and currently is
supported for VCN3 and VCN4.
AV1 needs quality level scaled down from 255 to 51 range.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4024
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30221 >
2024-07-24 20:18:49 +00:00
David Rosca
ae293d176b
radeonsi/vcn: Bump enc FW interface version for VCN3 and VCN4
...
This is needed to enable QVBR support. Also adjust to changes in
spec_misc_av1.
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30221 >
2024-07-24 20:18:49 +00:00
David Rosca
e539f8ef5f
radeonsi/vcn: Only enable filler data for CBR
...
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30221 >
2024-07-24 20:18:49 +00:00
C Stout
b6d8dd6c9f
util: fix fossilize_db compile error
...
Observed in Fuchsia build (with -Wwrite-strings):
error: passing 'const char[10]' to parameter of type 'char *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30334 >
2024-07-24 19:32:08 +00:00
Eric Engestrom
f1f8c465d5
vc4,v3d,v3dv: avoid compiling in unused sim_file
field in the {vc4,v3d}_screen/v3dv_physical_device struct
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30287 >
2024-07-24 19:11:24 +00:00
Eric Engestrom
eae740f2e4
v3d,v3dv: simplify USE_V3D_SIMULATOR/using_v3d_simulator logic
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30287 >
2024-07-24 19:11:24 +00:00
Eric Engestrom
5577078ac1
v3d,v3dv: figure out whether we're using the simulator only once
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30287 >
2024-07-24 19:11:23 +00:00
Eric Engestrom
f90d1182e0
v3d,v3dv: reuse dep_v3d_hw from simulator/meson.build
...
broadcom/simulator/ gets parsed before broadcom/vulkan/ or
gallium/drivers/v3d/ so this is safe.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30287 >
2024-07-24 19:11:23 +00:00
Alessandro Astone
7949471716
egl/gbm: Walk device list to initialize DRM platform
...
We cannot always use /dev/dri/card0.
As a matter of fact, on systems with SimpleDRM enabled /dev/dri/card0
will be created by it and removed once a GPU driver has loaded.
In any case we shouldn't hard-code the device number and instead walk
the device list to find the first suitable device.
This issue is trivially reproducible with `eglinfo -B -p gbm` on
Ubuntu 24.04 or Fedora 40
Fixes: 32f4cf3808
("egl/gbm: Fix EGL_DEFAULT_DISPLAY")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30325 >
2024-07-24 17:35:40 +00:00
Dylan Baker
4ef0cbaf05
crocus: check for depth+stencil before creating resource
...
This avoid leaking memory if we return early.
Fixes: 5f7df5df0d
("crocus: disable depth and d+s formats with memory objects")
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30305 >
2024-07-24 17:21:26 +00:00
Dylan Baker
34145725ce
crocus: properly free resources on BO allocation failure
...
Iris already has the same fix applied.
Fixes: f3630548f1
("crocus: initial gallium driver for Intel gfx 4-7")
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30305 >
2024-07-24 17:21:26 +00:00
Dylan Baker
11bc95934f
tgsi_to_nir: free disk cache value if the size is wrong
...
Fixes: 4db880d805
("ttn: Implement disk cache")
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com >
Reviewed-by: Rob Clark <robclark@freedesktop.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30308 >
2024-07-24 16:50:59 +00:00
José Roberto de Souza
945564e498
anv: Wait for Xe exec queue to be idle before destroying it
...
Paulo reported that Vulkan is also affected by the drop of permanent
exec queues in Xe KMD, Iris already have this handling.
So here using the special DRM_IOCTL_XE_EXEC with num_batch_buffer == 0
to get a syncobj signaled when the last DRM_IOCTL_XE_EXEC is completed.
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com >
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30156 >
2024-07-24 16:27:30 +00:00
Mike Blumenkrantz
6cd4372460
ci: prune dri from LD_LIBRARY_PATH
...
partial revert of 50fc7cc290
Fixes: 50fc7cc290
("glx: directly link to gallium")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30346 >
2024-07-24 15:53:12 +00:00
Christian Gmeiner
a885f91617
etnaviv: Rework uniform handling for UBO addresses
...
We are not using this 'feature'. Doing this in the
compiler would be lot of pain, as there is no backend
IR. The right way to do it would be nir address opt pass,
that does some offset and shift lowering. Lets see this
commit as prep change for a nir pass and/or backend IR.
Use the content to store the index of the UBO.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30331 >
2024-07-24 12:52:22 +00:00
Mike Blumenkrantz
9b7bb6cc9f
gallium: install gallium-$version.so to libdir
...
Installing this private library into the default library
search path avoids needing to rely on -Wl,-rpath,
which is inconsistently implemented as either DT_RUNPATH
or DT_RPATH on different distributions; in particular,
on distributions that implement it as DT_RPATH,
it interferes with use of LD_LIBRARY_PATH and has semantics
that are difficult to reason about, and is incompatible with
Steam's container runtime (which has the known limitation that
it only implements DT_RUNPATH and not DT_RPATH).
To avoid third-party developers being tempted to link to the
unstable libgallium, give it a name that varies with each Mesa release,
so that there is no obvious way for third-party software to link to it.
This is similar to the way the proprietary Nvidia driver sets up its similar
implementation-detail libraries such as libnvidia-glcore.so.535.183.01.
Fixes: 50fc7cc2
("glx: directly link to gallium")
Acked-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30328 >
2024-07-24 12:15:55 +00:00
Karol Herbst
098e660a58
rusticl/memory: add a couple of performance warnings
...
It's mostly just GPU stalls for now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30324 >
2024-07-24 11:07:52 +00:00
Karol Herbst
ea0676d8ec
rusticl/memory: remove stale TODOs
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30324 >
2024-07-24 11:07:52 +00:00
Karol Herbst
aae84eccfa
rusticl/platform: add perf debug option
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30324 >
2024-07-24 11:07:52 +00:00
Mary Guillemard
b3cd3b0ed4
panvk: Implement CmdBindDescriptorSets2KHR, CmdPushConstants2KHR and CmdPushDescriptorSet2KHR
...
Those are part of maintenance6.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30293 >
2024-07-24 10:46:00 +00:00
Mary Guillemard
0329070233
panvk: Emit viewport when state is NULL
...
When rasterizerDiscardEnable is active, it is allowed to have viewport
and scissor disabled.
In case we don't have any viewport defined we now define an empty one.
This is required for
"dEQP-VK.api.pipeline.pipeline_invalid_pointers_unused_structs.graphics"
as it never set any viewports and cause fault on IDVS jobs as a result.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30293 >
2024-07-24 10:46:00 +00:00
Mary Guillemard
cec45cac84
panvk: Fix image support in vertex jobs
...
There were various bugs causing images access to fault.
This fixes
"dEQP-VK.memory.pipeline_barrier.host_write_storage_buffer.*" and
possibly other tests.
Fixes: 7bea6f8612
("panvk: Overhaul the Bifrost descriptor set implementation")
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30293 >
2024-07-24 10:46:00 +00:00
Mary Guillemard
3b1b672849
panvk: Implement CmdPushDescriptorSetWithTemplate2KHR
...
We don't support maintenance6 yet but this is needed for
"dEQP-VK.binding_model.shader_access.secondary_cmd_buf.bind.with_push_template.*".
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30293 >
2024-07-24 10:46:00 +00:00
Mary Guillemard
6b9db2108d
docs: Add panvk in VK_EXT_private_data to features.txt
...
Was missing from the commit enabling it.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30293 >
2024-07-24 10:46:00 +00:00
Mary Guillemard
af998eb2bf
panvk: Update CI fails
...
Found with a full run without fraction, seems to have been present for a
while.
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30293 >
2024-07-24 10:46:00 +00:00
Eric Engestrom
e634acaf88
docs: add stub header for u_format_gen.h
...
Warning, treated as error:
docs/isl/aux-surf-comp.rst:51:docs/../src/util/format/u_formats.h:33: 'util/format/u_format_gen.h' file not found
Fixes: e05415a82e
("format: Generate endian-independent format aliases")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30339 >
2024-07-24 11:26:39 +02:00
Juan A. Suarez Romero
c30e5d44b1
v3d/ci: add new flakes
...
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30337 >
2024-07-24 09:19:05 +02:00
Icenowy Zheng
e16a74c023
llvmpipe: add LoongArch support in ORCJIT
...
LoongArch is an architecture too new to have MCJIT support.
Add its support to ORCJIT code.
Signed-off-by: Icenowy Zheng <uwu@icenowy.me >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30197 >
2024-07-24 00:59:23 +00:00
Icenowy Zheng
979c364018
gallivm: add LoongArch support to the mattrs setting code
...
Currently the mattrs is set according to the softdev convention, with
LSX explicitly disabled because it's troublesome at least on LLVM 17.
Signed-off-by: Icenowy Zheng <uwu@icenowy.me >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30197 >
2024-07-24 00:59:23 +00:00
Icenowy Zheng
08425d9aaf
util: detect LoongArch architecture
...
Only 64-bit is considered now because 32-bit LoongArch Linux support
doesn't exist in upstream yet.
Signed-off-by: Icenowy Zheng <uwu@icenowy.me >
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30197 >
2024-07-24 00:59:23 +00:00
Faith Ekstrand
fd83fc4bfb
nak: Don't emit barrier ops for shared memory pre-Volta
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28084 >
2024-07-23 21:12:04 +00:00
Faith Ekstrand
25eb6c8206
nak: Disable opt_jump_thread pre-Volta
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28084 >
2024-07-23 21:12:04 +00:00
Faith Ekstrand
9acacccff7
nak/sm50: Emit sync instructions for control-flow
...
Whenever we can, we emit the sync instruction instead of a branch.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28084 >
2024-07-23 21:12:04 +00:00
Faith Ekstrand
87fa8a788c
nak: Add more NIR wrappers for walking the NIR CFG
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28084 >
2024-07-23 21:12:04 +00:00
Faith Ekstrand
97d2187f48
nak/sm50: Add control-flow sync ops
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28084 >
2024-07-23 21:12:04 +00:00
Faith Ekstrand
d6de61cb7e
nak: Drop the old encode_sm*.rs files
...
I don't know how these didn't get dropped earlier.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28084 >
2024-07-23 21:12:04 +00:00
Faith Ekstrand
8bf3213a54
nak/spill_values: Don't assume no trivial phis
...
Thanks to LCSSA, we can absolutely have phis with only one source and we
need to handle those in spilling. Fortunately, there's nothing really
special about that case. I was just prematurely optimizing.
Fixes: bcad2add47
("nak: Add a spilling pass")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28084 >
2024-07-23 21:12:04 +00:00
Christian Gmeiner
305bf503e7
dri: fix driver names
...
All the driver reports itself with a hyphen here, so they all stopped
loading completely after 50fc7cc290
. Check each of them with the latest
kernel sources.
Fixes: 50fc7cc290
("glx: directly link to gallium")
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30330 >
2024-07-23 22:32:07 +02:00
Erico Nunes
0bdc2f180f
dri: fix sun4i-drm driver name
...
The driver reports itself as sun4i-drm with a hyphen here, so
it stopped loading completely after 50fc7cc290
.
Fixes: 50fc7cc290
("glx: directly link to gallium")
Signed-off-by: Erico Nunes <nunes.erico@gmail.com >
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30326 >
2024-07-23 19:27:25 +00:00
Karol Herbst
3b6867f53a
nak: fix clippy::if_same_then_else error
...
Fixes: 9321a785cf
("nak: Implement Foldable for OpShf")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30323 >
2024-07-23 18:21:18 +00:00
Karol Herbst
526a572233
nak: allow clippy::not_unsafe_ptr_arg_deref lints
...
Clippy errors on this, so just allow it here.
Fixes: b9c0e3c1ab
("nak: Add helpers for filling QMDs")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30323 >
2024-07-23 18:21:18 +00:00
Yiwei Zhang
6d0273f67a
anv: improve vma usage for descriptor buffer
...
The dynamic visible memory type (or the prior descriptor buffer memory
type) doesn't need special aux-tt alignment or additional ccs space.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30317 >
2024-07-23 17:56:20 +00:00
Ruijing Dong
8a5ef9413b
radeonsi/vcn: add HDR metadata obu in av1enc
...
Enable HDR metadata obu in av1 encoder for
both vcn4/5.
Reviewed-by: David Rosca <david.rosca@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30237 >
2024-07-23 17:16:21 +00:00
Ruijing Dong
fc4abbe27d
frontends/va: rework VAConfigAttribEncPackedHeaders query
...
to make it easy to add new values.
enable av1 meta data as the input packed header
Reviewed-by: David Rosca <david.rosca@amd.com >
Signed-off-by: David Rosca <david.rosca@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30237 >
2024-07-23 17:16:21 +00:00
Ruijing Dong
aa86c3a235
radeonsi/vcn: input av1 hdr metadata
...
get av1 hdr metadata from frontends.
Reviewed-by: David Rosca <david.rosca@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30237 >
2024-07-23 17:16:21 +00:00
Ruijing Dong
8ea977ca5e
frontends/va: check av1 enc hdr metadata
...
Decode packed header HDR metadata
for av1 encoding.
Reviewed-by: David Rosca <david.rosca@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30237 >
2024-07-23 17:16:21 +00:00
Ruijing Dong
35e4d0db9c
radeonsi/vcn: add new function for obu_header
...
add a function for av1_obu_header.
Reviewed-by: David Rosca <david.rosca@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30237 >
2024-07-23 17:16:21 +00:00
Ruijing Dong
94d881e621
radeonsi/vcn: correct a typo in a variable
...
from spliting to splitting
Reviewed-by: David Rosca <david.rosca@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30237 >
2024-07-23 17:16:21 +00:00
Juan A. Suarez Romero
559eaaf0e6
v3d/ci: add failures from piglit all profile
...
While we don't run this profile in the CI, our expected lists already
have some tests from old days when we run the all profile.
So let's update the list with new failures from this all profile,
allowing us to have a more comprehensive list of failing tests for our
drivers.
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30318 >
2024-07-23 16:52:13 +00:00
Marek Olšák
d90080b51b
nir/opt_vectorize_io: optionally don't vectorize IO with different types
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11443
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29895 >
2024-07-23 16:13:17 +00:00