From 909dabf44bf34805b0aa577986bcd0b81aabae00 Mon Sep 17 00:00:00 2001
From: Rylie Pavlik <rylie.pavlik@collabora.com>
Date: Wed, 5 Jun 2024 11:52:15 -0500
Subject: [PATCH] c/client: Require dependency Android Vulkan extensions

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2233>
---
 src/xrt/compositor/client/comp_vk_glue.c | 4 ++++
 tests/tests_comp_client_vulkan.cpp       | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/src/xrt/compositor/client/comp_vk_glue.c b/src/xrt/compositor/client/comp_vk_glue.c
index f9a473b5b..0ea298900 100644
--- a/src/xrt/compositor/client/comp_vk_glue.c
+++ b/src/xrt/compositor/client/comp_vk_glue.c
@@ -33,6 +33,10 @@ const char *xrt_gfx_vk_device_extensions = VK_KHR_DEDICATED_ALLOCATION_EXTENSION
 
 #elif defined(XRT_GRAPHICS_BUFFER_HANDLE_IS_AHARDWAREBUFFER)
     " " VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME
+    // AHB deps
+    " " VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME " " VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME
+    // YCbCr conversion deps
+    " " VK_KHR_BIND_MEMORY_2_EXTENSION_NAME " " VK_KHR_MAINTENANCE_1_EXTENSION_NAME
 
 #elif defined(XRT_GRAPHICS_BUFFER_HANDLE_IS_WIN32_HANDLE)
     " " VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME
diff --git a/tests/tests_comp_client_vulkan.cpp b/tests/tests_comp_client_vulkan.cpp
index 1a52f5500..6c1ec059e 100644
--- a/tests/tests_comp_client_vulkan.cpp
+++ b/tests/tests_comp_client_vulkan.cpp
@@ -58,6 +58,10 @@ static const char *required_device_extensions[] = {
 
 #elif defined(XRT_GRAPHICS_BUFFER_HANDLE_IS_AHARDWAREBUFFER)
     VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME,
+    VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME,
+    VK_KHR_MAINTENANCE_1_EXTENSION_NAME,
+    VK_KHR_BIND_MEMORY_2_EXTENSION_NAME,
+    VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME,
 
 #elif defined(XRT_GRAPHICS_BUFFER_HANDLE_IS_WIN32_HANDLE)
     VK_KHR_EXTERNAL_MEMORY_WIN32_EXTENSION_NAME,