Samuel Pitoiset
f5805bcb8e
radv: implement 2D views of 3D images using 2D_ARRAY descriptors on GFX9+
...
This also allows us to disable a workaround in ACO for GFX9, but it
can't be removed completely because RadeonSI needs to use it.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31385 >
2024-10-01 08:33:51 +00:00
Konstantin Seurer
60c53f5e63
radv: Initialize sqtt state before meta state
...
Sqtt needs to be initialized before BVH build pipelines are compiled to
avoid crashes on startup.
Fixes: 5fa22f9 ("radv: regroup all tools initialization in one helper")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31207 >
2024-09-19 08:27:08 +00:00
Samuel Pitoiset
32a4c9e117
radv: disable the in-memory cache when disableInternalCache is true
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30812 >
2024-09-10 08:19:52 +00:00
Samuel Pitoiset
6fa1bf3b88
radv: pad GFX preambles IBs with only one NOP
...
This is optimal.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30743 >
2024-08-21 14:55:04 +00:00
Samuel Pitoiset
7a5b40a2ff
radv: cleanup robustness with vk_pipeline_robustness_state_fill()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30643 >
2024-08-14 07:25:03 +00:00
Samuel Pitoiset
619bcd3b5c
radv: allow to capture with RGP on GFX11_5
...
It works fine.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30225 >
2024-07-17 16:25:19 +00:00
Samuel Pitoiset
664a31bcd1
radv: disable SPM trace on GFX11_5
...
SPM needs performance counters and they aren't exposed yet.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30225 >
2024-07-17 16:25:19 +00:00
Josh Simmons
1ced840632
radv: Add RADV_PROFILE_PSTATE envvar
...
Enable selecting the specific pstate to enter when using thread tracing
and when acquiring the profiling lock for performance queries.
Signed-off-by: Josh Simmons <josh@nega.tv>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30139 >
2024-07-15 20:32:01 +00:00
Samuel Pitoiset
15a3aff0f1
radv: use zero allocation for the device queues
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
5fa22f9fec
radv: regroup all tools initialization in one helper
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
9d2751bbde
radv: add radv_device_init_rmv()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
27a90f1f29
radv: add helpers for init/deinit device fault detection
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
351fba7ee3
radv: add radv_device_init_trap_handler()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
4ab6357c42
radv: simplify keeping shader info for GPU hangs debugging
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
fe09a6d72b
radv: add helpers for init/deinit RGP
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
033084c912
radv: add helpers for init/deinit device memory cache
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
01339c6c93
radv: add radv_device_init_perf_counter()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
5657f21fcf
radv: destroy the perf counter BO in radv_device_finish_perf_counter()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30153 >
2024-07-15 09:34:42 +02:00
Samuel Pitoiset
15fe733703
radv: add a helper to get image VA
...
Similar to buffer, and less error prone.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29428 >
2024-06-06 18:21:33 +00:00
Mike Blumenkrantz
2aaa6ebba1
build/amd: add amd-use-llvm build option
...
this allows amd drivers to disable llvm support while still allowing
llvmpipe/lavapipe to be built
by disabling llvm support in amd drivers, the load times for these drivers
decreases by 5-10ms
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Tested-by: Mike Lothian <mike@fireburn.co.uk>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28969 >
2024-05-30 19:05:00 +00:00
Samuel Pitoiset
f015a4f453
radv: update configuring sample locations on GFX12
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29417 >
2024-05-30 11:05:03 +00:00
Samuel Pitoiset
a9f4931a91
ac,radv,radeonsi: a function that sets mutable CB surface fields
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29378 >
2024-05-28 08:49:53 +00:00
Samuel Pitoiset
07c6fdb878
radv: use the common helper for initializing CB surfaces
...
This adds GFX12 support implicitly.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29342 >
2024-05-27 17:04:26 +02:00
Samuel Pitoiset
1935e63545
radv: align DCC control settings to RadeonSI for GFX8
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29342 >
2024-05-27 17:04:26 +02:00
Marek Olšák
ad07ea3162
amd: enable 32B minimum DCC block size for gfx1151
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29313 >
2024-05-24 13:48:28 +00:00
Samuel Pitoiset
cd5f980d51
ac,radv,radeonsi: move ZRANGE_PRECISION to mutable DS fields
...
The DS surfaces are now completely configured in common code.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
332a06903d
ac,radv,radeonsi: a function that sets mutable DS surface fields
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
1a08fa6150
ac,radv,radeonsi: add function to get the number of ZPLANES
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
dcfa351af3
radv: only enable DB_STENCIL_INFO.ITERATE_FLUSH when necessary
...
When no HTILE for stencil this shouldn't be neessary.
This also matches RadeonSI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29349 >
2024-05-24 11:48:32 +00:00
Samuel Pitoiset
ed30b320c8
radv: use the common helper for initializing DS surfaces
...
This adds GFX12 support implicitly.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
e1da1c891c
radv: separate non-mutable vs mutable fields for ds surface
...
RADV doesn't really have a concept of mutable fields but RadeonSI does.
Separate setting those fields to introduce common helpers.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
55be5868c5
radv: tidy up radv_initialise_ds_surface()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
e9a390cb94
radv: replace db_{z,stencil}_{read,write}_base by db_{depth,stencil}_base
...
Both read/write register values are similar.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29329 >
2024-05-23 15:47:14 +00:00
Samuel Pitoiset
2867a07922
radv: fix setting a custom pitch for CB on GFX10_3+
...
The gfx_level check was missing the version...
Found by inspection.
Fixes: 3f7ddaf281 ("radv: implement setting a custom pitch to any multiple of 256B on gfx10.3+"
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29331 >
2024-05-23 06:10:07 +00:00
Samuel Pitoiset
81e927ea05
ac,radv,radeonsi: add a helper to get the tile mode index
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29286 >
2024-05-21 16:41:40 +00:00
Samuel Pitoiset
96a9625866
ac,radv,radeonsi: add a function to get the color format endian swap
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29265 >
2024-05-20 13:41:03 +00:00
Samuel Pitoiset
35c6b9c066
ac,radv,radeonsi: add a function to translate db format
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29265 >
2024-05-20 13:41:03 +00:00
Samuel Pitoiset
934fc47822
radv: use PIPE_FORMAT in radv_translate_dbformat()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29265 >
2024-05-20 13:41:03 +00:00
Samuel Pitoiset
7f0430bb36
ac,radv,radeonsi: add a function to translate colorswap
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29265 >
2024-05-20 13:41:02 +00:00
Samuel Pitoiset
40428bd497
radv: use PIPE_FORMAT in radv_translate_colorswap()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29265 >
2024-05-20 13:41:02 +00:00
Samuel Pitoiset
50ef8600bc
radv: pass radv_physical_device to radv_emit_default_sample_locations()
...
To emit PA_SC_CENTROID_0 which changed on GFX12.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29215 >
2024-05-17 08:04:02 +00:00
Samuel Pitoiset
9e7c44ea11
radv: simplify radv_emit_default_sample_locations()
...
PA_SC_CENTROID_PRIORITY has been moved on GFX12 and it will be easier
to emit it outside of the switch case.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29215 >
2024-05-17 08:04:02 +00:00
Konstantin Seurer
df82221bb3
radv: Remove arenas from capture_replay_arena_vas
...
Avoids an use after free when looking up an arena.
cc: mesa-stable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28961 >
2024-05-12 10:28:27 +00:00
Marek Olšák
58a5de5c34
amd: add gfx12 register definitions into the register header generator
...
The generator renamed some definitions to resolve conflicts.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Timur Kristóf <timur.kristof@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29007 >
2024-05-11 22:14:05 -04:00
Samuel Pitoiset
095e3af2b0
radv: add RADV_DEBUG=psocachestats to report per-pipeline cache hits/misses
...
This can be useful to make sure precompilation works as expected.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28829 >
2024-04-22 13:54:05 +00:00
Samuel Pitoiset
54b08d6bbf
radv: return per plane requirements for disjoint images
...
Returning the whole image size/alignment isn't wrong but it's wasteful
for disjoint images which requires a separate bound memory object per
plane.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10997
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28808 >
2024-04-19 08:17:55 +00:00
Samuel Pitoiset
f6d9772010
radv: determine if the cache is disabled at device creation time
...
It's a cleanup but also for future work.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28645 >
2024-04-10 06:38:37 +00:00
Samuel Pitoiset
87fde606cf
radv: use SPDX-License-Identifier
...
Only files under src/amd/vulkan/** are concerned.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28599 >
2024-04-08 07:17:31 +00:00
Samuel Pitoiset
69b911bc53
radv: remove radv_private.h
...
This file was a giant mess and I'm very happy to remove it entirely.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28568 >
2024-04-04 21:57:46 +00:00
Samuel Pitoiset
28eefbadeb
radv: move CLOCK_MONOTONIC_RAW define to radv_physical_device.h
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28568 >
2024-04-04 21:57:46 +00:00