Eric Engestrom
94c82cd938
nvk/ci: add nvk job on a GA106 (RTX 3060)
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28207 >
2024-05-22 10:06:16 +00:00
Samuel Pitoiset
3d6957268b
aco: use new common helpers for building buffer descriptors
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
074f3cfe73
radv: use new common helpers for building buffer descriptor
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
d3b01fd95e
amd/common: add new helpers to build buffer descriptors
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
3224fd706c
amd/common: only pass gfx_level to ac_get_gfx10_format_table()
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
64fefc1179
ac,radv,radeonsi: add a common helper for translating swizzle
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29268 >
2024-05-22 08:31:39 +00:00
Samuel Pitoiset
2487a87552
ac,radv,radeonsi: add function to determine if alpha should be on MSB
...
The only difference for RADV is that the helper now converts SRGB
formats to non-SRGB but that shouldn't change anything in practice.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29308 >
2024-05-22 08:17:31 +02:00
Samuel Pitoiset
179f4ed414
radv: adjust determining if alpha should be on MSB
...
Ported from RadeonSI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29308 >
2024-05-22 08:14:56 +02:00
Samuel Pitoiset
68c4d26691
radv: only set ALPHA_IS_ON_MSB if the image has DCC on GFX6-9
...
This is technically incorrect to only check meta_offset which might be
non-zero for CMASK/FMASK but this applies to DCC only.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29308 >
2024-05-22 08:14:56 +02:00
Maíra Canal
3e8b2fe053
broadcom/simulator: Add DRM_IOCTL_V3D_GET_COUNTER to simulator
...
As this new IOCTL was introduced in the kernel, mirror the change in
the simulator.
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29154 >
2024-05-22 05:37:48 +00:00
Maíra Canal
e630812b43
broadcom/simulator: Add DRM_V3D_PARAM_MAX_PERF_COUNTERS parameter support
...
As this new parameter was introduced in the kernel, mirror the change in
the simulator.
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29154 >
2024-05-22 05:37:48 +00:00
Maíra Canal
017dde0d1c
v3d: Use DRM_IOCTL_V3D_GET_COUNTER to get perfcnt information
...
Currently, the information about the performance counters is duplicated
both in the kernel and in user space. Naturally, this leads to
inconsistency, as the user space might be updated and while the kernel
isn't.
Aiming to turn the kernel as the "single source of truth", use
DRM_IOCTL_V3D_GET_COUNTER, when available, to get performance counter
information.
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29154 >
2024-05-22 05:37:48 +00:00
Maíra Canal
c5b2d943ad
v3dv: Use DRM_IOCTL_V3D_GET_COUNTER to get perfcnt information
...
Currently, the information about the performance counters is duplicated
both in the kernel and in user space. Naturally, this leads to
inconsistency, as the user space might be updated and the kernel isn't.
Aiming to turn the kernel as the "single source of truth", use
DRM_IOCTL_V3D_GET_COUNTER, when available, to get the performance
counter information.
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29154 >
2024-05-22 05:37:48 +00:00
Maíra Canal
273ba51d7f
broadcom/common: Add maximum number of perf counters to v3d_device_info
...
Now, the kernel has the ability to inform about the maximum number of
performance counters of a V3D device. Let's add this information to the
`struct v3d_device_info` to use it when performing performance queries.
From now on, V3D_PERFCNT_NUM must not be used to retrieve the maximum
number of performance counters. We must use `devinfo->max_perfcnt`,
except on the case that the kernel doesn't support DRM_V3D_PARAM_MAX_PERF_COUNTERS.
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29154 >
2024-05-22 05:37:47 +00:00
Maíra Canal
ce7bca176f
drm-uapi: Update v3d_drm.h
...
From https://cgit.freedesktop.org/drm/drm-misc/
commit 673087d8b023faf34b84e8faf63bbeea3da87bab
Author: Maíra Canal <mcanal@igalia.com >
Date: Sun May 12 19:23:29 2024 -0300
drm/v3d: Deprecate the use of the Performance Counters enum
Signed-off-by: Maíra Canal <mcanal@igalia.com >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29154 >
2024-05-22 05:37:47 +00:00
Juston Li
4b3e286d33
venus: add missing sTypes for vk_set_physical_device_properties_struct
...
The contents were previously copied with vk_copy_struct_guts(),
now that we use vk_set_physical_device_properties_struct, the sType
is needed.
Fixes: ("3c152a6e5dd venus: Use common physical device properties")
Signed-off-by: Juston Li <justonli@google.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29314 >
2024-05-21 23:01:37 +00:00
Rhys Perry
b99c48b011
aco/lower_phis: don't create boolean loop header phis in some situations
...
If we have a loop with continue_or_break and no divergent exits, there is
no need for a loop header phi.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
4ae8a558b2
aco: remove nir_to_aco
...
This isn't used anymore
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
b1964f03e7
aco: use scalar phi lowering for lcssa workaround
...
This lets us use non-undef for the last operand, if necessary
(demonstrated in the test).
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
bbe4652430
aco: create lcssa phis for continue_or_break loops when necessary
...
These might not exist because adding would decrease the quality of
divergence analysis. They are necessary for continue_or_break though, so
add them later, where they won't affect divergence analysis.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10623
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29121 >
2024-05-21 21:28:13 +00:00
Rhys Perry
3fc7207f50
aco/lower_phis: create loop header phis for non-boolean loop exit phis
...
These might be necessary if continue_or_break and divergent breaks are both used:
loop {
if (divergent) {
a = loop_invariant_sgpr
break
}
discard_if
}
b = phi a
If we break because discard_if makes exec empty but only did so in
previous iterations, then the phi should use "a" from those previous
iterations.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29121 >
2024-05-21 21:28:13 +00:00
Derek Foreman
175d2d680a
wsi/wayland: Fix use after free from improperly stored VkAllocationCallbacks
...
These callbacks are no longer valid when cleaning up, and a use after free
occurs.
There's no need to store this at all anyway, so just stop doing that.
Fixes: 57c03fe4
Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11184
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29310 >
2024-05-21 21:01:25 +00:00
Timur Kristóf
0e0c2574d1
radv: Add shader stats for inputs and outputs.
...
These new stats report the combined inputs and outputs of
graphics stages stages where applicable.
Task -> Mesh payload is not included.
This is useful for reporting the effects of any shader
optimizations which affect linking.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29209 >
2024-05-21 20:37:05 +00:00
Timur Kristóf
590fff6906
radv: Add TES num_linked_patch_inputs.
...
Not needed by actual driver functionality, but will be
used for reporting I/O stats.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29209 >
2024-05-21 20:37:05 +00:00
David Heidelberg
4a6d7e79ad
subprojects: uprev perfetto to v45.0
...
Cc: mesa-stable
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29311 >
2024-05-21 20:02:00 +00:00
Constantine Shablia
0d59fe21ce
panvk: remove descriptor pool counters
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29250 >
2024-05-21 19:41:11 +00:00
Samuel Pitoiset
bb09fac659
ac,radv,radeonsi: add a function for getting border color swizzle
...
The swizzle for 8-bit stencil shuld be also fine on RadeonSI.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29307 >
2024-05-21 19:12:52 +00:00
Rob Clark
25a206b9ac
tu: Don't advertise AHB handle time on non-android
...
Fixes
dEQP-VK.api.external.memory.android_hardware_buffer.dedicated.image.info
among others.
Fixes: 99753001f3
("turnip: Support AHardwareBuffer")
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29309 >
2024-05-21 18:45:31 +00:00
Rob Clark
b71f3f1314
docs/features: Add missing AHB for tu
...
Signed-off-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29309 >
2024-05-21 18:45:31 +00:00
Marek Olšák
eef5e4221f
radeonsi: vectorize load/stores and shrink stores
...
based on RADV
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29282 >
2024-05-21 18:20:30 +00:00
Marek Olšák
8cb254e0b8
radeonsi: call nir_lower_int64 later to fix ACO failure with Tomb Raider
...
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29282 >
2024-05-21 18:20:30 +00:00
Marek Olšák
5a115b1055
ac/llvm: global stores should have no holes in the writemask
...
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29282 >
2024-05-21 18:20:30 +00:00
Marek Olšák
7952e4fc7a
ac: move radv_mem_vectorize_callback to common code
...
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29282 >
2024-05-21 18:20:30 +00:00
Samuel Pitoiset
26cd3a1718
ac,radv,radeonsi: add a helper to set mutable tex desc fields
...
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
7523c1ec57
radv: stop clearing unnecessary bitfields in radv_set_mutable_tex_desc_fields()
...
They should already be zero because nothing else sets them before.
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
d09afbdebc
radv: set ITERATE_256 for GFX10+ in radv_set_mutable_tex_desc_fields()
...
To be closer to the RadeonSI helper. This doesn't change anything for
RADV because images are required to be bound at image view creation.
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
fb37ea092d
radv: tidy up meta_va in radv_set_mutable_tex_desc_fields()
...
To be closer to the RadeonSI helper.
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
8adb326f59
radv: tidy up custom pitch for gfx10.3 in radv_set_mutable_tex_desc_fields()
...
To be closer to the RadeonSI helper.
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
d1fa5ffab0
radv: tidy up swizzle in radv_set_mutable_tex_desc_fields()
...
To be closer to the RadeonSI helper.
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
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
72485fe592
radv: set image view descriptors as buffer for non-graphics GPU
...
Ported from RadeonSI, for CDNA.
Cc: mesa-stable
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
Timur Kristóf
c1d38b0b37
nir: Add nir_opt_load_store_update_alignments.
...
New pass that shares code with nir_opt_load_store_vectorize but
it only updates the alignment of load/store instructions.
It is useful before running other passes which may
potentially destroy that information (eg. by removing some
instructions from which the alignment may be deduced).
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29210 >
2024-05-21 16:06:23 +00:00
Alyssa Rosenzweig
0b582449f0
nir/lower_point_size: support lowered i/o
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29248 >
2024-05-21 15:30:10 +00:00
Valentine Burley
471ac97a4a
drm-shim: Stub syncobj reset ioctl
...
Fixes DRM_SHIM: unhandled core DRM ioctl 0xC4 (0xc01064c4).
Signed-off-by: Valentine Burley <valentine.burley@gmail.com >
Reviewed-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28504 >
2024-05-21 14:14:25 +00:00
Georg Lehmann
cc404d45ff
aco: remove perfwarn
...
This didn't do anything useful.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29270 >
2024-05-21 13:31:23 +00:00
Georg Lehmann
ea3e5bcc99
aco/optimizer: remove ineffective undef opt
...
No stats changes.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29270 >
2024-05-21 13:31:23 +00:00
Georg Lehmann
bd699b5d88
aco/optimizer: remove ineffective vcc opt
...
No stats changes.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29270 >
2024-05-21 13:31:23 +00:00
Eric R. Smith
eefe34127f
panfrost: add a barrier when launching xfb jobs in CSF
...
When we start writing to an XFB buffer we need to synchronize with
any batches reading from it (because the data they need is about
to be overwritten). Do this by introducing a barrier in csf_launch_xfb.
This patch fixes a valhall failure in
KHR-GLES31.core.vertex_attrib_binding.advanced-iterations
Cc: mesa-stable
Signed-off-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/29092 >
2024-05-21 13:03:40 +00:00
Juan A. Suarez Romero
69ceb5dab9
v3d: remove handled cases for devices <= 42
...
The driver nowadays requires hardware version >= 4.2, but in the old
days it managed older versions.
Remove some leftovers remaining in the code.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29299 >
2024-05-21 12:39:41 +00:00
Juan A. Suarez Romero
cbcfb34cf7
v3d: use BITSET for the masks
...
So far we were using raw uint32_t for handling masks. But this has the
issue that it only allows to handle up to 32 elements; if we need to
handle more elements, the we need to upgrade to uint64_t.
And this happened inadvertently with commit 370f02bf02
("gallium: Bump
PIPE_MAX_SHADER_IMAGES to 64"), where the number of elements to handled
were increased from 32 to 64, but we didn't upgrade the mask type.
To fix this, and avoid this happening again in the future, let's use
BITSET, which is designed to handle bitmasks, and can able to handle as
many elements as desired.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29299 >
2024-05-21 12:39:41 +00:00