Commit graph

1272 commits

Author SHA1 Message Date
Simon Perretta
7b28b6c43d pvr, pco: implement VK_EXT_image_2d_view_of_3d
Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36412>
2025-09-16 18:26:14 +00:00
Luigi Santivetti
b461335f64 pvr: add support for VK_KHR_maintenance1
VK_KHR_maintenance1 is a collection of several tweaks and additions to the 1.0
version of the Vulkan spec, promoted to core in more recent versions.

This change exposes the extension and only adds what was missing from our
implementation, however the driver largely already had support for what is
required by this extension.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36412>
2025-09-16 18:26:13 +00:00
Mary Guillemard
f7b953c916 hk: Advertise VK_KHR_maintenance9
Signed-off-by: Mary Guillemard <mary@mary.zone>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37380>
2025-09-16 17:36:58 +00:00
Mary Guillemard
9cc639efd9 docs/features: Mark VK_KHR_maintenance9 as done for ANV
Seems that it was missing from the initial MR.
Also fix ordering of drivers on that line.

Signed-off-by: Mary Guillemard <mary@mary.zone>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37380>
2025-09-16 17:36:57 +00:00
Eric Engestrom
95f549007a doc/features.txt: add missing supported lvp extensions
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/37400>
2025-09-16 15:13:31 +00:00
Eric Engestrom
974a79074b doc/features.txt: add missing supported tu extensions
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/37402>
2025-09-16 12:28:43 +00:00
Eric Engestrom
9e8e1d7515 doc/features.txt: add missing supported anv extensions
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37399>
2025-09-16 12:23:05 +00:00
David Rosca
c9b2c00de6 radv: Enable VK_EXT_ycbcr_2plane_444_formats
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9486
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37174>
2025-09-08 11:59:37 +00:00
Thomas H.P. Andersen
93eafbf04f nvk: implement VK_AMD_buffer_marker
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35507>
2025-09-04 15:03:09 +00:00
Alejandro Piñeiro
388f9ccd97 docs: GL_ARB_compute_shader is not a ES extension
Without this commit, GL_ARB_compute_shader appears as both an OpenGL
and an OpenGL ES extension.

But this is not an OpenGL ES extension. One of the main differences is
that the minimum value for WORK_GROUP_INVOCATIONS on
GL_ARB_compute_shader is 1024, while the minimum value required for
the OpenGL ES 3.1 spec is 128. So for example, both v3d and panfrost
doesn't expose ARB_compute_shader, while it supports compute shader on
OpenGL 3.1, so the docs are wrong.

I guess that the reason of re-using ARB_compute_shader is because
there isn't an OES compute shader extension. There was an EXT
extension though, so this is similar to geometry shader, where there
you had ARB_geometry_shader4, but it was superseded by OpenGL
3.2. This commit follows geometry shader approach, and just adds a
"Compute shader" feature on OpenGL ES 3.1

Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37131>
2025-09-04 14:26:21 +02:00
Erik Faye-Lund
b8ccbc414a panvk: enable KHR_maintenance9
Seems this just works, so let's enable it.

Unlike maintenance 4 through 8, VK_KHR_maintenance9 doesn't have a hard
dependency on Vulkan 1.1, and can also be supported on Bifrost.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987>
2025-09-01 10:08:35 +00:00
Erik Faye-Lund
e78a3854a5 panvk: enable KHR_maintenance8
Seems like we already support everyhing in this extension. Let's enable
it.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987>
2025-09-01 10:08:35 +00:00
Erik Faye-Lund
6dc24e6443 doc/features: update VK_KHR_maintenance8
This is already supported by a bunch of drivers, let's update the
features list.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987>
2025-09-01 10:08:34 +00:00
Erik Faye-Lund
e5c54cf33b panvk: enable KHR_maintenance7
In theory, we should be able to support
separateDepthStencilAttachmentAccess, but in practice this occasionally
fails tests. So let's disable it for now, and deal with that feature
down the line.

Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36987>
2025-09-01 10:08:33 +00:00
Ashley Smith
b35bb9f5c7 panfrost: Enable shader_atomic_int64 for gallium
Vulkan support was added previously, enable gallium support.

Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Acked-by: Mary Guillemard <mary.guillemard@collabora.com>
Signed-off-by: Ashley Smith <ashley.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37051>
2025-09-01 08:22:10 +00:00
Karol Herbst
24c7e247af rusticl: implement cl_khr_external_semaphore
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36007>
2025-08-31 13:12:17 +00:00
Karol Herbst
daf777df8c rusticl: implement cl_khr_semaphore
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36007>
2025-08-31 13:12:17 +00:00
Mel Henning
fcf136d247 nvk: Expose VK_KHR_maintenance8
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36950>
2025-08-27 21:12:41 -04:00
Mohamed Ahmed
7692d3c0e1 nvk: Advertise VK_KHR_maintenance9
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35804>
2025-08-27 00:50:27 +00:00
Samuel Pitoiset
b9221c7c89 radv: advertise VK_KHR_shader_untyped_pointers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36677>
2025-08-26 13:47:08 +00:00
Sid Pranjale
1f79ba9a51 docs: mark VK_KHR_depth_clamp_zero_one as done for NVK
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36962>
2025-08-24 16:10:33 +00:00
Valentine Burley
2595b029fa tu: Advertise VK_EXT_shader_atomic_float
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
We pass the tests for exchange, load, and store on R32_SFLOAT, including
shared memory (which the proprietary driver does not advertise). The blob
does not support add operations either.

Passes:
dEQP-VK.glsl.atomic_operations.exchange_float*
dEQP-VK.image.atomic_operations.exchange*r32f*

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36907>
2025-08-23 20:13:44 +00:00
Yiwei Zhang
b76c556c59 panvk: support VK_ANDROID_external_memory_android_hardware_buffer
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This last piece hooks up:
- GetPhysicalDeviceImageFormatProperties2
- GetPhysicalDeviceExternalBufferProperties
- GetImageMemoryRequirements2

Test:
- dEQP-VK.api.external.memory.android_hardware_buffer.*
- CtsNativeHardwareTestCases via ANGLE
- Android HWUI and SurfaceFlinger via skiavk (entirely AHB based)

Acked-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36603>
2025-08-22 21:39:12 +00:00
Yiwei Zhang
33ab9d8320 panvk: add shared image support and advertise VK_ANDROID_native_buffer
Now we have:
1. baseline ANB (pre ANB spec v8)
   - basic vulkan wsi on Android
2. aliased ANB (ANB spec v8+)
   - required for swapchain maintenance1 support, and is used by ANGLE
     on Android for smooth swapchain recreation.
3. ANB shared image
   - required for KHR_shared_presentable_image support.

Test:
- dEQP-VK.wsi.android.*
- dEQP-EGL.* via ANGLE
- CtsGraphicsTestCases via ANGLE
- CtsOpenGLTestCases via ANGLE
- Instagram via ANGLE

Acked-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36603>
2025-08-22 21:39:12 +00:00
Yiwei Zhang
ec4cebbf2e venus: expose KHR_present_id(2)/wait(2) support
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Venus does support these via common wsi.

Test: dEQP-VK.wsi.*.present_id_wait.*
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36834>
2025-08-19 22:48:35 +00:00
Erik Faye-Lund
4c9aac2799 docs/features: sort drivers
We usually keep these alphabetically sorted, let's update the sorting
here.

Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36838>
2025-08-19 17:24:25 +00:00
Karol Herbst
a1aed20842 rusticl: implement cl_ext_immutable_memory_objects
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Reviewed-by: Seán de Búrca <leftmostcat@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36630>
2025-08-14 18:40:35 +00:00
Corentin Noël
4465a63456 docs/features: Add missing virgl extensions
Add all some missing available extensions for virgl

Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36735>
2025-08-12 08:04:30 +00:00
Corentin Noël
de55edade7 docs/features: Add missing llvmpipe extensions
Also mark GL 4.6, GLSL 4.60 as all DONE for llvmpipe.

Signed-off-by: Corentin Noël <corentin.noel@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36721>
2025-08-11 15:52:38 +00:00
Faith Ekstrand
65f3d7fb7f nvk: Advertise KHR_shader_untyped_pointers
Acked-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36681>
2025-08-08 22:41:15 +00:00
Caio Oliveira
e8fe6273f9 anv: Advertise VK_KHR_shader_untyped_pointers
Acked-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36681>
2025-08-08 22:41:15 +00:00
Alyssa Rosenzweig
2610d2afaf asahi: implement KHR_shader_subgroup
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36649>
2025-08-08 20:51:03 +00:00
John Anthony
dff1d91c64 panvk: Enable VK_ARM_shader_core_builtins
While the shaderCoreBuiltins feature is only supported on v9+, the
extension itself provides some useful physical device properties and is
supported on all GPUs.

Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36019>
2025-08-07 11:46:33 +02:00
Samuel Pitoiset
e33d6acca3 docs: add missing VK_KHR_present_id/2 to features.txt
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36547>
2025-08-05 08:06:43 +00:00
Juan A. Suarez Romero
6596cf08e4 v3d: implement robust buffer access
This is the last piece to expose KHR_robustness. The main bulk of the
job is done already in the broadcom compiler through lowerings, so we
only need to set the proper key in order to enable the robustness.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Reviewed-by: Maíra Canal <mcanal@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35965>
2025-07-30 11:28:19 +02:00
Erik Faye-Lund
1123987bb3 docs/features: add missing panvk extension
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Mark VK_EXT_robustness2 as supported on pank/v10+, as it's been exposed
for a little while.

Fixes: ef91ad64d5 ("panvk/v10+: Advertise nullDescriptor support")
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36408>
2025-07-28 12:01:37 +00:00
Christoph Pillmayer
1c23f18ea8 panvk: Advertise VK_EXT_mutable_descriptor_type on v9+
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36002>
2025-07-23 12:54:24 +00:00
X512
e847d9920c NVK: report VK_KHR_unified_image_layouts extenstion support
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36298>
2025-07-22 22:41:09 +00:00
Erik Faye-Lund
b3556ebdf3 docs: add GL_KHR_robustness to panfrost
GL_KHR_robustness gets implicitly added when
GL_ARB_robust_buffer_access_behavior is supported, so we should check
off these boxes as well.

Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36282>
2025-07-22 08:35:54 +00:00
Erik Faye-Lund
72b96df409 docs: document new panfrost extensions
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
Something went wrong in a rebase, and these got dropped. Whoops, let's
add them to the docs.

Reviewed-by: Chris Healy <cphealy@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36272>
2025-07-21 23:14:22 +00:00
Mike Blumenkrantz
a333e7a6b8 lavapipe: VK_KHR_unified_image_layouts
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/35743>
2025-07-17 21:37:22 +00:00
Mike Blumenkrantz
e6f18bfb42 lavapipe: maintenance9
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35743>
2025-07-17 21:37:22 +00:00
Olivia Lee
5ee3c10d1e panvk: advertise vulkan 1.4 on v10+
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
VK_EXT_host_image_copy was the last extension needed.

Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35910>
2025-07-16 10:56:03 +00:00
Olivia Lee
1cd61ee948 panvk: implement VK_EXT_host_image_copy for linear color images
Depth/stencil and tiled images require some additional complexity, so
will be implemented in later commits.

Signed-off-by: Olivia Lee <olivia.lee@collabora.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35910>
2025-07-16 10:56:01 +00:00
Samuel Pitoiset
fbea486854 radv: advertise VK_EXT_host_image_copy on GFX10+ behind RADV_PERFTEST=hic
This exposes an experimental implementation of HIC with
RADV_PERFTEST=hic. It's passing 100% of VKCTS but it requires some
benchmarks first to verify if performance is acceptable or not.

No addrlib support for GFX6-9.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35974>
2025-07-15 09:12:16 +00:00
Ashley Smith
e55e63c5a7 panvk: Enable VK_KHR_shader_atomic_int64 on Valhall
Bifrost will require more work

Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com>
Reviewed-by: Eric R. Smith <eric.smith@collabora.com>
Signed-off-by: Ashley Smith <ashley.smith@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35789>
2025-07-11 12:42:30 +00:00
Juan A. Suarez Romero
cb22616f18 docs/features: GL_ARB_timer_query implemented for v3d
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run
This extension is implemented for v3d, but we forgot to update the
documentation.

Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36042>
2025-07-11 08:03:45 +00:00
John Anthony
aaf29ade1c panvk: Enable VK_ARM_shader_core_properties
The extension allows returning 0 if a given rate is unknown, which
allows us to support this on all GPUs, but since the extension depends
on Vulkan 1.1, we only expose it on v10+ for now.

Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35155>
2025-07-09 08:40:12 +00:00
Luigi Santivetti
6ad0b59cc8 Revert "pvr: Implement VK_EXT_memory_budget"
This reverts commit 97efa57531.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Acked-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33998>
2025-07-08 23:10:52 +00:00
Simon Perretta
a22ad99bdd pvr: set device features/props/extensions to Vulkan 1.0 minimums (unless implemented)
The KHR_shader_expect_assume dEQP tests use dynamic rendering without
first checking that the driver supports 1.3 or the
KHR_dynamic_rendering extension

Signed-off-by: Simon Perretta <simon.perretta@imgtec.com>
Acked-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33998>
2025-07-08 23:10:52 +00:00