Commit graph

179976 commits

Author SHA1 Message Date
Connor Abbott
e6f5d7222c vk,lvp,tu,radv,anv: Add common vk_*_pipeline_create_flags() helper
And replace the various homegrown or copy-pasted helpers in drivers.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25436>
2023-11-06 14:33:51 +00:00
Erik Faye-Lund
cac194ff38 panfrost: look at correct blendable format version
We're currently looking at a mixture of v7 only and v6 and v7 versions
of the blendable formats. Let's use the one we have stored, so we always
use the most recent definition.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25968>
2023-11-06 14:30:34 +01:00
Erik Faye-Lund
f277124544 panfrost: store blendable_formats in panfrost_device
This way, we don't need to look at the generation to find the right
version. It's also less code to update when we're adding new hardware
generations.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25968>
2023-11-06 14:30:31 +01:00
Erik Faye-Lund
40656b6fa0 panfrost: pass blendable formats to pan_pack_color
This allows us to specify the correct array later on, while still being
able to use the function as-is from call-sites that doesn't have a
panfrost_device.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25968>
2023-11-06 14:30:28 +01:00
Erik Faye-Lund
f69b573dfc panfrost: bypass format-table for null-textures
We directly look up in the format arrays here to save indirections. But
do you know what's even faster than a single indirection? Assigning a
compile-time constant!

So let's use the newly available pack-helper to pack directly what we
want here.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25968>
2023-11-06 14:30:20 +01:00
Erik Faye-Lund
7d3ef1a057 panfrost: allow packing formats outside of pan_format.c
This is useful when we want to avoid looking up a format in the format
table.

Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25968>
2023-11-06 14:30:14 +01:00
Eric Engestrom
ac342f6851 rpi4/ci: skip more timing out tests in the dEQP-VK.ssbo.layout.* group
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:50 +00:00
Eric Engestrom
208f94f7ec vc4/ci: add piglit "full run" variant of vc4-rpi3-gl:arm32 as a manual job
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:50 +00:00
Eric Engestrom
4c00cff2d2 v3dv/ci: add "full run" variant of v3dv-rpi4-vk:arm64 as a manual job
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:50 +00:00
Eric Engestrom
725a4338fc v3d/ci: add "full run" variant of v3d-rpi4-gl:arm64 as a manual job
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:50 +00:00
Eric Engestrom
85ecf9d487 v3dv/ci: add manual variant of .v3dv-rules
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:49 +00:00
Eric Engestrom
8ca683fb12 vc4/ci: add manual variant of .vc4-rules
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:49 +00:00
Eric Engestrom
8803d6d9d9 broadcom/ci: split broadcom-common manual rules to .broadcom-common-manual-rules
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:49 +00:00
Eric Engestrom
692b779f67 broadcom/ci: fix list indentation
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25975>
2023-11-06 12:45:49 +00:00
Sergi Blanch Torne
be1eb0f6d2 Revert "ci: disable Collabora's LAVA lab for maintance"
This reverts commit 7d6f9ccfbe

Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26060>
2023-11-06 12:03:20 +00:00
Eric Engestrom
9349b7d2fb broadcom/ci: merge gl test lists to use a single deqp instance
This makes the config file easier to read, and also shaves 5-10 seconds
of deqp-run per job, but that's cancelled out by all the random network
delays of everything else in the job so we'll never actually notice the
difference.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26039>
2023-11-06 11:13:10 +00:00
Samuel Pitoiset
790fabd38e radv: advertise VK_EXT_device_fault
This is only exposed if the kernel supports GPUVM fault query.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25875>
2023-11-06 10:35:05 +00:00
Samuel Pitoiset
8097becc7f radv: add initial VK_EXT_device_fault support
This implementation only returns VM faults information for now, but
vendor crash dumps will be adder later.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25875>
2023-11-06 10:35:05 +00:00
Vlad Schiller
1dd1c9d610 pvr: Fix VK_EXT_texel_buffer_alignment
In the commit that enabled the extension, I forgot to add the required
properties, which made some tests to fail.

Fixes: 649ebbb0fb ("pvr: Implement VK_EXT_texel_buffer_alignment")
Signed-off-by: Vlad Schiller <vlad-radu.schiller@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26002>
2023-11-06 09:58:07 +00:00
Samuel Pitoiset
abfd208cb0 nir: fix inserting the break instruction for partial loop unrolling
If the break in the original loop isn't in the first top-level if,
this would have re-inserted it in the wrong block.

Fixes this by re-inserting the break block to the corresponding break
block in the new loop by using the remap hashtable.

fossils-db (NAVI21):
Totals from 88 (0.11% of 79330) affected shaders:
Instrs: 109602 -> 109929 (+0.30%); split: -0.10%, +0.40%
CodeSize: 570968 -> 573332 (+0.41%); split: -0.08%, +0.49%
Latency: 1682510 -> 1682505 (-0.00%); split: -0.01%, +0.01%
Copies: 12832 -> 12746 (-0.67%); split: -1.54%, +0.87%
Branches: 2879 -> 2930 (+1.77%)

Deathloop and F1 2023 are affected but I'm not aware of any issues
for these two games.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10001
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26009>
2023-11-06 09:18:09 +00:00
Sergi Blanch Torne
7d6f9ccfbe ci: disable Collabora's LAVA lab for maintance
This is to inform you of some planned downtime in the LAVA lab as follows:

    Start: 2023-11-06 08:00 GMT (UTC+0)
    End: 2023-11-06 12:00 GMT (UTC+0)

Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26059>
2023-11-06 09:11:37 +01:00
LingMan
106acbbed9 rusticl: Avoid repeatedly creating Vecs during Platform initialization
Creates a Vec once instead of four times.

Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26050>
2023-11-06 00:08:52 +00:00
LingMan
b4d052e4cb rusticl: Only put an Arc around PipeScreen where needed
This only delays moving the PipeSceen into the Arc, but makes is clearer where the Arc's properties are needed.

Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26050>
2023-11-06 00:08:52 +00:00
LingMan
8103be7faa rusticl: Directly pass a &Device to Mem::map_image and Mem::map_buffer
Until now they took a `&Arc<Queue>` but only ever used it to accessed the `Device`.
Makes it clearer what these methods actually require.

Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26050>
2023-11-06 00:08:52 +00:00
Karol Herbst
8cbb84dc42 rusticl/queue: fix implicit flushing of queue dependencies
Needed by Davinci Resolve.

There are two parts to this fix:
1. flush dependencies also on flush, not just finish
2. move the dependency checking logic into Queue::flush as otherwise we
   miss required implicit flushes.

Fixes: 8616c0a52c ("rusticl/event: flush queues from dependencies")
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: @LingMan <18294-LingMan@users.noreply.gitlab.freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26053>
2023-11-05 23:53:20 +00:00
Karol Herbst
52e41d4c97 rusticl/queue: do not send empty lists of event to worker queue
This saves us a few CPU cycles and makes properly fixing implicit flushes
less expensive.

Fixes: 8616c0a52c ("rusticl/event: flush queues from dependencies")
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: @LingMan <18294-LingMan@users.noreply.gitlab.freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26053>
2023-11-05 23:53:20 +00:00
David Rosca
bf364cbdb4 radeonsi: Fix offset for linear surfaces on GFX < 9
Fixes: 86262b6eac ("radeonsi,radv: fix usages of surf_pitch")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9949
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10073

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25970>
2023-11-05 19:36:48 +00:00
Marek Olšák
d2a025ab2b radeonsi: move setting registers at the end of si_emit_cb_render_state
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 14:06:56 -05:00
Marek Olšák
c21bcfd34f radeonsi: cosmetic changes in si_state_binning.c, si_state_msaa.c
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 14:06:56 -05:00
Marek Olšák
6455aaab07 radeonsi: cosmetic changes in si_state_viewport.c
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 14:06:56 -05:00
Marek Olšák
43cdb51402 radeonsi: move max_dist for MSAA into si_state_msaa.c
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 14:06:56 -05:00
Marek Olšák
12c239f829 radeonsi: various isolated cosmetic changes
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 14:06:56 -05:00
Marek Olšák
ca1d37e1db radeonsi: adjust setting PA_SC_EDGERULE once more
based on PAL.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 14:06:52 -05:00
Marek Olšák
4dfff0f1b7 radeonsi: use si_shader_uses_streamout properly
Reviewed-by: Qiang Yu <yuq825@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:43:11 -05:00
Marek Olšák
2a83532ed6 radeonsi: split setting num_threads in si_emit_dispatch_packets
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:42:52 -05:00
Marek Olšák
5a38757fcf radeonsi: cosmetic changes in si_pm4.c
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:42:33 -05:00
Marek Olšák
03353bd752 radeonsi: decrease PIPE_CAP_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS to 1024
to match PAL-based drivers. This is also the OpenGL minimum.

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:41:57 -05:00
Marek Olšák
6708ccd3bf radeonsi: remove and inline si_shader::ngg::prim_amp_factor
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
e98a4f3820 radeonsi: rename ctx -> sctx in si_emit_guardband
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
a61d74ed27 radeonsi: remove AMD_DEBUG=nogfx
it doesn't work - it uses the CDNA codepath for preamble, which surely
hangs on non-CDNA

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
00b716cb83 radeonsi: remove redundant VS_PARTIAL_FLUSH for streamout
si_emit_streamout_end does this already.

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
17de5dd1c4 radeonsi: inline si_screen_clear_buffer
it has only one use

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
738babc67a radeonsi: inline si_allocate_gds and si_add_gds_to_buffer_list
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
f841a5b991 radeonsi: don't use nir_optimization_barrier_vgpr_amd with ACO
It's unimplemented.

Reviewed-by: Qiang Yu <yuq825@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
44eaf50a34 ac/surface/tests: cosmetic changes
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
dfcc7f83a4 ac/surface: cosmetic changes
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:39:42 -05:00
Marek Olšák
355242f055 ac/gpu_info: adjust attribute ring size for gfx11
these are better numbers

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:36:52 -05:00
Marek Olšák
bd57630885 ac: add missing gfx11.5 bits
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26055>
2023-11-05 12:34:55 -05:00
Alyssa Rosenzweig
cd0a01522f ttn: Set sample shading for sample ID reads
Fixes on asahi arb_stencil_texturing-blit_corrupts_state -auto
GL_TEXTURE_2D_MULTISAMPLE.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26011>
2023-11-05 00:31:22 +00:00
Mauro Rossi
95ad0c750c Android.mk: disable android-libbacktrace to build with Android 14
Android libbacktrace is not available in Android 14

Fixes the following build error:

FAILED: src/util/libmesa_util.a.p/u_debug_stack_android.cpp.o
...
../src/util/u_debug_stack_android.cpp:28:10: fatal error: 'backtrace/Backtrace.h' file not found
         ^~~~~~~~~~~~~~~~~~~~~~~
1 error generated.

Cc: mesa-stable
Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25963>
2023-11-04 21:37:24 +01:00