Commit graph

208841 commits

Author SHA1 Message Date
Yiwei Zhang
64a4442090 v3dv: amend AHB buffer support
...via adopting vk_android_get_ahb_buffer_properties.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
4ee67ba967 v3dv: adopt vk_android_get_ahb_image_properties
The runtime vk_android.h header has proper android detection inside, so
no need to wrap it with redundant android detection. Meanwhile, the enum
VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID is
defined in the vulkan_core.h, so no need Android wrap either.

Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
7934c9ab78 vulkan/android: make vk_ahb_probe_format private to android runtime
...and drop duplicate docs.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
e733ac9314 turnip: amend AHB buffer support
...via adopting vk_android_get_ahb_buffer_properties.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
bdf9524e1c turnip: adopt vk_android_get_ahb_image_properties
No behavior change.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
cefda4eedb venus: clean up post vk_android_get_ahb_image_properties adoption
Make this a separate commit to ease review of the prior adoption.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
e4f9ce838a venus: adopt vk_android_get_ahb_image_properties
Now we can fully resolve the AHB image query on the driver side without
roundtrips.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
e33870d207 venus/wsi: move wsi image format info validation to vn_wsi
Added vn_wsi_validate_image_format_info helper to clean up query side
codes.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
89f5938930 venus: adopt vk_android_get_ahb_buffer_properties
Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
9fb91dfd93 vulkan/android: add vk_android_get_ahb_buffer_properties
This is to assist GetPhysicalDeviceExternalBufferProperties query.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Yiwei Zhang
850ede0970 vulkan/android: add vk_android_get_ahb_image_properties
This is to assist GetPhysicalDeviceImageFormatProperties2 query.

Acked-by: Rob Clark <robclark@freedesktop.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36151>
2025-07-17 20:12:23 +00:00
Mike Blumenkrantz
c768699a73 zink: fix valid contents check for adding new bind
the previous one didn't account for buffers

Fixes: b022cdc8a1 ("zink: only copy resource during add_bind if it is valid")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36201>
2025-07-17 19:54:23 +00:00
Danylo Piliaiev
6003a89b89 tu: Use safe-const binning VS when safe-const full VS is used
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Otherwise we can have a case where binning VS uses more consts than
full VS (when safe variant is used for full VS), that will result in
a rendering issue because SP_VS_CONST_CONFIG.CONSTLEN is shared between
full and binning VS in PROGRAM_CONFIG state and gets the value from the
full VS.

There are two alternative solutions that can allow binning VS to always
use maximum constlen:
- Move constlen emission to per-XS config. This interferes
  PROGRAM_CONFIG state which uploads consts and does SP_UPDATE_CNTL.
  Consts would need to be uploaded after constlen is defined, while
  SP_UPDATE_CNTL must be done before per-XS state is emitted.
  Also having SP_UPDATE_CNTL in a draw state that is always DIRTY
  isn't great.
  Something didn't work out on A6XX, so this idea was dropped.
- Emit constlen again in VS_BINNING draw state. This seem to work
  but also likely an undefined behaviour since constlen is changed
  after some consts are uploaded.

Cc: mesa-stable

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36203>
2025-07-17 19:33:42 +00:00
Karol Herbst
a0a9c12124 rusticl/mem: set swizzle for intensity images
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36199>
2025-07-17 19:13:37 +00:00
Karol Herbst
e03d23ddc9 zink: disable shader images for intensity formats
Vulkan only allows identity remapping on storage images descriptors.

Fixes: 475c43cf8a ("zink: translate intensity formats")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36199>
2025-07-17 19:13:37 +00:00
Karol Herbst
146e843254 zink: disallow intensity buffer images
Fixes: 475c43cf8a ("zink: translate intensity formats")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36199>
2025-07-17 19:13:37 +00:00
Karol Herbst
3a2f38cd44 vtn/opencl: set exact on all ffmas and mads
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Cc: mesa-stable
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36175>
2025-07-17 16:47:23 +00:00
Mike Blumenkrantz
10602f2ddd ci: bump VVL to 1.4.322ish
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35791>
2025-07-17 15:28:21 +00:00
Valentine Burley
b7f1f40bf4 ci: Always save the artifacts for performance traces
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
We need the job artifacts in all cases to gather performance data.
Since commit b723bc80d2, we were only saving them on failures.

Fixes: b723bc80d2 ("ci/lava: inherit .piglit-traces-test in .lava-piglit-traces and deduplicate configs")

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36195>
2025-07-17 14:55:41 +00:00
Antonio Ospite
0f09c9436b ci/android: update comment about ANDROID_CTS_MODULES
After commit 545727f97c (ci/android: Move ANDROID_CTS_MODULES to build
script, 2025-06-24) the comment about ANDROID_CTS_MODULES in
lvp-android-angle-android-cts-include.txt has become inaccurate.

Update the instructions to reflect the latest status.

Fixes: 545727f97c
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36187>
2025-07-17 14:31:40 +00:00
Samuel Pitoiset
12f77a833d Revert "ci: Disable Valve keywords farm"
Martin rebooted the gateway and it seems back now.

This reverts commit 75b92990a0.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36194>
2025-07-17 14:04:21 +00:00
Vignesh Raman
54fcb0e443 ci/init-stage1: avoid duplicate mounts
Check if filesystems are mounted before attempting to mount them,
and use mkdir -p to prevent errors if directories already exist.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
89ff124263 ci/lava: bump ALPINE_X86_64_LAVA_TRIGGER_TAG
Bump ALPINE_X86_64_LAVA_TRIGGER_TAG tag to rebuild the lava-trigger
container.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
c1898908a8 ci/lava: Move lava_job_submitter tests to lava folder
The `.gitlab-ci/tests/` directory contains LAVA-specific tests, not
general test code. To avoid confusion with `.gitlab-ci/test/`, move it
to `.gitlab-ci/lava/`.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
d67436c7ec ci/lava: make rootfs shell prompt configurable
Add support for setting rootfs shell prompt. This is optional and
defaults to "lava-shell:" if not specified.

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
75d1ac4b0b ci/lava: add main() function to fix entry point
Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Vignesh Raman
38039e00e7 ci/lava: default CI_JOB_TIMEOUT to 3600 if unset
Prevents a TypeError when CI_JOB_TIMEOUT is not set by defaulting
to 3600 seconds (60 minutes).

Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35961>
2025-07-17 13:16:56 +00:00
Boyuan Zhang
9b158d0512 ci/fluster: remove 3 pass cases resulted by gaps_in_frame
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
These 3 failed tests are passing now by enabling the gaps_in_frame feature.
Therefore, remove all of them.

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36056>
2025-07-17 12:44:51 +00:00
Boyuan Zhang
a63e5f015e radeon/vcn: add gaps_in_frame flag to h264 sps
Implement gaps_in_frame_num_value_allowed_flag in h264 msg buffer.
Replace hardcoded flag values with defines.

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: David Rosca <david.rosca@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36056>
2025-07-17 12:44:51 +00:00
Boyuan Zhang
a7567ec6f4 frontends/va: get gaps_in_frame for h264 dec
Get gaps_in_frame_num_value_allowed_flag value from Va-api interface.

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: David Rosca <david.rosca@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36056>
2025-07-17 12:44:51 +00:00
Boyuan Zhang
587102196c pipe: add gaps_in_frame for h264
Add gaps_in_frame_num_value_allowed_flag to h264 sps struct.

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: David Rosca <david.rosca@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36056>
2025-07-17 12:44:51 +00:00
Valentine Burley
75b92990a0 ci: Disable Valve keywords farm
Disable the farm until it's fixed.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36193>
2025-07-17 12:42:48 +00:00
Mike Blumenkrantz
ce09d80698 gallium/hud: set the framebuffer texture when drawing
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13545

Fixes: 2eb45daa9c ("gallium: de-pointerize pipe_surface")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36167>
2025-07-17 11:48:51 +00:00
Valentine Burley
34c969f767 freedreno,zink+tu/ci: Document Piglit bug
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Document the Piglit bug exposed in 08b522d21e
("glsl: check against varying limits using NIR shader_info after nir_opt_varyings")

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36027>
2025-07-17 09:07:28 +00:00
Valentine Burley
bcc1a96a73 zink/ci: Run full zink-tu-a618 job pre-merge
We can use one more device to increase parallelism, which allows us to
run the full nightly job pre-merge.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36027>
2025-07-17 09:07:28 +00:00
Valentine Burley
0b677027a8 freedreno/ci: Re-enable a618-gl job
Re-enables the previously disabled GL and EGL jobs on a618, combining
them into a single a618-gl job.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36027>
2025-07-17 09:07:28 +00:00
Valentine Burley
2980a5913a turnip/ci: Increase coverage of a618-vk, reduce parallelism
Thanks to the optimizations in the previous commits and further
increasing tests_per_group, we can now run more tests in a618-vk
while also reducing its parallelism.

Dropping `DEQP_FRACTION: 2` and only increasing the `fraction` of
the basic test set to 3 results in broader overall coverage.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36027>
2025-07-17 09:07:26 +00:00
Valentine Burley
7ec9404971 freedreno/ci: Increase concurrency for a618 jobs
The a618 jobs run on two different 8 thread devices, which is the optimal
value for FDO_CI_CONCURRENT on most of their jobs.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36027>
2025-07-17 09:07:25 +00:00
Yiwei Zhang
afdb2c64de venus/ci: udpate expectations from venus-lavapipe-full runs
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36180>
2025-07-16 22:56:43 +00:00
fossdd
126b795e76 bin/symbols-check: add __(de)register_frame_info_bases to platform symbols
Cause of the following error on x86 (32-bit):

	src/gbm/libgbm.so.1.0.0: unknown symbol exported: __deregister_frame_info_bases
	src/gbm/libgbm.so.1.0.0: unknown symbol exported: __register_frame_info_bases

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36182>
2025-07-16 22:22:09 +00:00
Yiwei Zhang
442f242a49 venus: requests whole blob mem size for non-dedicated import
For non-dedicated import, later import could have varied size against
the same bo, so we just request the whole blob mem size for those.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36128>
2025-07-16 22:05:11 +00:00
Yiwei Zhang
b32a8d17a2 venus/virtgpu: use size zero to request mapping the entire blob mem
For import, requested size might be smaller than the whole blob mem
size. Currently, venus virtgpu backend tracks the initial import size
and sanity checks with later re-import size. So let's add a way to
request whole blob mem size

No need vtest backend changes since dma_buf import is not supported.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36128>
2025-07-16 22:05:11 +00:00
Yiwei Zhang
768375fede venus: refactor ahb import interface to take whole alloc info
Prepare for adopting common runtime so that we don't leave unused vars
after dropping codes from vn_AllocateMemory. It's trying to minimize
code changes in the venus adoption since that'd be huge.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36128>
2025-07-16 22:05:11 +00:00
Yiwei Zhang
e27ad2a021 venus: drop force_unmappable hack
No longer needed since the vkMapMemory would fail properly instead of
failing the external memory import.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36128>
2025-07-16 22:05:11 +00:00
Yiwei Zhang
6c8f075fb3 venus/virtgpu: drop mappable if blob size is smaller than requested
Instead of failing the import, drop the mappable bit if blob size is
smaller than the requested alloc size, which defers the error to the
intended vkMapMemory api call if the client app requests Vulkan mapping
from the imported external memory.

Normally this won't occur if the app obeys the spec with a properly
implemented blob mem allocator. However, legacy allocators like minigbm
virtgpu_virgl backend could allocate via virgl w/o knowing the real blob
size from the guest side. The unsatified cases are external gralloc
images, which won't be mapped in any meaningful way after being
imported. This is to prepare dropping the force_unmappable workaround,
and to further prepare adopting common Android runtime.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36128>
2025-07-16 22:05:10 +00:00
Yiwei Zhang
a6bbf544cf doc: fix section and android instruction linking for install page
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36179>
2025-07-16 20:48:41 +00:00
Eric Engestrom
e39a41e104 gfxstream: move variables into the #ifdef that uses them
../src/gfxstream/guest/vulkan_enc/ResourceTracker.cpp:7585:14: warning: unused variable ‘actualFormat’ [-Wunused-variable]
 7585 |     VkFormat actualFormat = imageInfo.createInfo.format;
      |              ^~~~~~~~~~~~

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36171>
2025-07-16 20:30:40 +00:00
Alyssa Rosenzweig
2308960bed treewide: use nir_mov_scalar
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Via Coccinelle patch:

    @@
    expression builder, scalar;
    @@

    -nir_channel(builder, scalar.def, scalar.comp)
    +nir_mov_scalar(builder, scalar)

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36142>
2025-07-16 18:59:16 +00:00
Alyssa Rosenzweig
186db0ebfe nir: add nir_mov_scalar helper
I keep reaching for this helper but it doesn't exist. So I fixed that.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36142>
2025-07-16 18:59:16 +00:00
Alyssa Rosenzweig
a5e9669a78 hk: only pass sampler heap if needed
I'm guessing the hardware needs to prefetch the whole sampler heap, so if we're
not gonna use it, let's omit it. I don't know if this helps, but it can't hurt.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36127>
2025-07-16 18:27:22 +00:00