Commit Graph

189667 Commits

Author SHA1 Message Date
Alejandro Piñeiro
07f3c37b9a v3dv/meta_clear: take into account multiview for the custom clear pipeline caches
The resulting pipeline/shaders are different when we are using
multiview (for example, a geometry shader is injected in order to
support multiview).

Doesn't fix any CTS test run individually, but fixes some
dEQP-VK.draw.dynamic_rendering.primary_cmd_buff.multi_draw.overlapping*
CTS tests when run in a batch (using deqp-vk --deqp-caselist-file),
like:

dEQP-VK.draw.dynamic_rendering.primary_cmd_buff.multi_draw.mosaic.indexed_mixed.16_draws.stride_zero.10_instances.vert_only.single_view.offset_6_no_draw_id
dEQP-VK.draw.dynamic_rendering.primary_cmd_buff.multi_draw.overlapping.normal.one_draw.stride_zero.1_instance.vert_only.multiview.no_offset_no_draw_id

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29218>
2024-05-20 10:01:33 +02:00
Alejandro Piñeiro
4f26303dbb v3dv: add debug option to disable custom pipeline caches for meta operations
Included as a new option of the existing V3DV_ENABLE_PIPELINE_CACHE
environment variable.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29218>
2024-05-20 10:01:33 +02:00
Timothy Arceri
795057d44e glsl: move geom input array sizing to nir linker
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29256>
2024-05-20 00:12:50 +00:00
David Heidelberg
08659a0baa winsys/i915: depends on intel_wa.h
Prevent compilation failure due to not-yet generated intel_wa header.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11174
Cc: mesa-stable

Reviewed-by: Mark Janes <markjanes@swizzler.org>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29252>
2024-05-18 15:36:13 +00:00
Mike Blumenkrantz
ffe54ca293 nir/linking: fix nir_assign_io_var_locations for scalarized dual blend
this would previously assign all scalar variables to the highest
driver location

cc: mesa-stable

Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28753>
2024-05-18 13:50:27 +00:00
Mike Blumenkrantz
e28061c502 nir/lower_aaline: fix for scalarized outputs
this otherwise was broken

cc: mesa-stable

Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28753>
2024-05-18 13:50:27 +00:00
Marek Olšák
b4bd380704 nir/algebraic: eliminate pack+unpack and unpack+pack pairs
A new NIR shader for AMD drivers will need this.

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29233>
2024-05-17 22:04:00 +00:00
Faith Ekstrand
681acde6d3 nvk/meta: Save and restore set_dynamic_buffer_start
Fixes: e0d907f56f ("nvk: Rework descriptor set binding")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:18 +00:00
Faith Ekstrand
3e9b08f417 nvk: Refactor nvk_meta_begin() to use a desc helper
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:17 +00:00
Faith Ekstrand
6f0292f6b0 nvk: Add an NVK_MAX_SAMPLES #define
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:17 +00:00
Faith Ekstrand
ce0efbd175 nvk: Move and better document set_dynamic_buffer_start
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:17 +00:00
Faith Ekstrand
99f806b733 nvk: Advertise 32 descriptor sets
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:17 +00:00
Faith Ekstrand
54ce220f10 nvk: Store an nvk_buffer_address for each set in the root table.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:17 +00:00
Faith Ekstrand
0e417df499 nvk: Add static asserts for nvk_buffer_address layout
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:17 +00:00
Faith Ekstrand
6fcfcd2625 nvk: Store descriptor set addresses in descriptor state
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29276>
2024-05-17 21:41:17 +00:00
David Heidelberg
f55c51a343 ci/etnaviv: add flakes from nightly runs
Acked-by: Christian Gmeiner <cgmeiner@igalia.com>
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29254>
2024-05-17 19:29:40 +00:00
David Heidelberg
788d945c9a ci/alpine: re-enable Mold linker
It's more than one year since it was problematic.

Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29272>
2024-05-17 11:11:59 -07:00
Roman Stratiienko
7ae4a2ae34 u_gralloc/fallback: Extract modifier from QCOM native_handle
After Turnip moved to u_gralloc, some users started complaining
about issues. It turns out that modern platforms do not have
grallocs{0,1} but have gralloc4 only. There's no
known way to build mesa3d with gralloc4 support using NDK.

So we add this workaround to fallback gralloc to mimic the original
behavior of the Turnip driver before switching to u_gralloc.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11171
Fixes: 1373b0966c ("turnip: ANB/AHB support")
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29260>
2024-05-17 15:03:53 +00:00
Adrian Perez de Castro
2934e1fad5 Revert "egl/wayland: Remove EGL_WL_create_wayland_buffer_from_image"
The EGL_WL_create_wayland_buffer_from_image is still used in WPE WebKit.
There is work in progress to continue adoption of DMA-BUF usage inside
WebKit which will eventually render the extension unneeded; but in the
meantime an update to a version of Mesa without the extension would
render applications using WPE WebKit unusable.

This reverts commit a3418105b9.

Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29266>
2024-05-17 14:15:47 +00:00
Samuel Pitoiset
7fe169dd4a ac,radv,radeonsi: introduce a helper to build a sampler descriptor
This introduces ac_sampler_state which contains all information to
build a sampler descriptor for AMD hardware instead of duplicating
code between RADV and RadeonSI. Both drivers just need to fill this
new struct to get a descriptor.

This allows RADV to get GFX12 support for free. I think we should
introduce helpers for other type of descriptors.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29221>
2024-05-17 13:43:12 +00:00
Samuel Pitoiset
cd05b23a95 radeonsi: refactor si_translate_border_color()
For using the common ac helper for building a sampler descriptor.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29221>
2024-05-17 13:43:12 +00:00
Mike Blumenkrantz
c6b29a4788 egl/dri2: fix error returns on dri2_initialize_x11_dri3 fail
this is a failure path, so return failure

Fixes: 62f65f4bfd ("egl/dri2: if zink is preferred from dri3 skip dri2 paths.")

Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29171>
2024-05-17 12:28:52 +00:00
Samuel Pitoiset
caca5e0de6 radv: add more helpers to emit viewports
Viewports are emitted differently on GFX12 and adding helpers would
help.

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
73e1ff6b54 radv: use float instead of double for viewport zscale/ztranslate
The float precision should be largely enough.

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
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
Samuel Pitoiset
0697452f57 ac,radv,radeonsi: add a helper to translate buffer dataformat
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29236>
2024-05-17 07:30:16 +00:00
Samuel Pitoiset
5d9bdb6410 ac,radv,radeonsi: add a helper to translate buffer numformat
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29236>
2024-05-17 07:30:16 +00:00
Samuel Pitoiset
3409015103 radv: reject unsupported buffer formats earlier
To simplify adding common helpers for translating buffer formats.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29236>
2024-05-17 07:30:16 +00:00
Samuel Pitoiset
622e1b6385 radv: only enable VK_MESA_image_alignment_control on GFX9-11.5
This is not yet implemented on GFX6-8 and GFX12, better to disable it.

Fixes: 6c3457033a ("radv: Implement VK_MESA_image_alignment_control")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29219>
2024-05-17 06:56:07 +00:00
Samuel Pitoiset
f0200a54d9 radv: add a helper to configure ring buffer descriptors
Instead of duplicating everything which is annoying for bringup when
some fields are updated.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29234>
2024-05-17 06:21:35 +00:00
Juston Li
db58d0f40b venus: forward nice priority when creating ring
Forward the nice priority to the renderer so that corresponding renderer
threads are created with the same priority.

For backwards compatibility, conditioned on
VK_MESA_VENUS_PROTOCOL_SPEC_VERSION >= 2

Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29012>
2024-05-17 00:03:44 +00:00
Juston Li
4d2d49c63f sync protocol for VkRingPriorityInfoMESA
Bumps VK_MESA_VENUS_PROTOCOL_SPEC_VERSION to 2

Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29012>
2024-05-17 00:03:44 +00:00
David Heidelberg
9b02584bed ci/panfrost: Revert "ci/panfrost: disable G52 until machines gets fixed"
Machines are reported as fixed.

This reverts commit 891730ac0b.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29207>
2024-05-16 22:50:09 +00:00
David Heidelberg
782f2b3dea ci/intel: add new jsl flake
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29207>
2024-05-16 22:50:09 +00:00
David Heidelberg
49760b6af6 ci: Revert "ci: update failures list with angle for jsl, tgl"
MesaCI has new ANGLE, we can revert this one.

This reverts commit 197f99dc70.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29207>
2024-05-16 22:50:09 +00:00
David Heidelberg
ec8eeb39ae ci: bump ANGLE
Signed-off-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29207>
2024-05-16 22:50:09 +00:00
Alyssa Rosenzweig
9a8cb81f61 nir/tex_instr_result_size: handle subpass_ms
I hit this and don't see any reason it shouldn't work

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29249>
2024-05-16 18:09:39 -04:00
Danylo Piliaiev
72326e15f3 anv: Use current_frame from vk device to delimit u_trace frames
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29220>
2024-05-16 18:12:31 +00:00
Danylo Piliaiev
c73b3f590b tu: Use current_frame from vk device to delimit u_trace frames
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29220>
2024-05-16 18:12:30 +00:00
Danylo Piliaiev
4510350d55 util/u_trace: Pass explicit frame_nr argument to delimit frames
Otherwise u_trace has to think that each submission is a frame,
and that's not great if we want to gather statistics on per real
frame basis.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29220>
2024-05-16 18:12:30 +00:00
Danylo Piliaiev
eed28932c0 vulkan/wsi: Make current_frame usable in all cases
It would be useful for u_trace to separate frames.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29220>
2024-05-16 18:12:30 +00:00
Alyssa Rosenzweig
e5637f44b8 asahi: unify naming for COUNTS structs
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00
Alyssa Rosenzweig
a173c2e38c asahi: split CDM Launch words
similarly separates counts from USC words.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00
Alyssa Rosenzweig
5fbd8bb694 asahi: split frag shader words
Isolate the counts from the rest, in particular.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00
Alyssa Rosenzweig
7dcd5f1f02 asahi: don't allocate for USC words
let the driver.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00
Alyssa Rosenzweig
06d59d3f5c asahi: rename meta -> bg/eot
meta is for making meta gallium calls, we already have something else
appropriately named meta. bg/eot programs are not meta, they're their own
hardware mechanism. use the appropiate powervr name instead.

nfc

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00
Alyssa Rosenzweig
cd3dabe8e0 asahi: clean up bg/eot counts
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00
Alyssa Rosenzweig
ed2d15d42f asahi: track imports for decode
otherwise we fail with interesting dmabuf tracing

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00
Alyssa Rosenzweig
ff553d1ac8 asahi/decode: QoL improvements
- plumb through a context so we can handle multiple VMs in a single process
- add image heap dumping helper for bindless images
- try to guess betwen texture & PBE to reduce noise

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29247>
2024-05-16 13:25:56 -04:00