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>
This commit is contained in:
Yiwei Zhang
2025-08-06 07:17:14 +00:00
committed by Marge Bot
parent 8aa2f1a94f
commit 33ab9d8320
2 changed files with 7 additions and 1 deletions
+1 -1
View File
@@ -672,7 +672,7 @@ Khronos extensions that are not part of any Vulkan version:
VK_EXT_ycbcr_image_arrays DONE (anv, hasvk, hk, lvp, nvk, panvk/v10+, radv, vn)
VK_EXT_zero_initialize_device_memory DONE (nvk, radv)
VK_ANDROID_external_memory_android_hardware_buffer DONE (anv, radv, tu, vn)
VK_ANDROID_native_buffer DONE (anv, radv, tu, v3dv, vn)
VK_ANDROID_native_buffer DONE (anv, panvk, radv, tu, v3dv, vn)
VK_GOOGLE_decorate_string DONE (anv, hasvk, hk, lvp, nvk, panvk, radv, tu, vn)
VK_GOOGLE_hlsl_functionality1 DONE (anv, hasvk, hk, lvp, nvk, panvk, radv, tu, vn)
VK_GOOGLE_user_type DONE (anv, hasvk, hk, nvk, panvk, radv, tu, vn)