vulkan: Conditionally enumerate KHR_shared_presentable_image
This requires:
- GPDP2 present and enabled
- ANDROID_native_buffer V7 implemented
- Driver supporting at least one shared presentation mode
This unpicks the weird case of the hal having to expose the
extension while the api surface was all implemented in the
loader.
V3: Single flag
Change-Id: I336af1a9d2549b74631c7a93a2c3e0e1469a9622
Test: build
diff --git a/vulkan/libvulkan/driver.h b/vulkan/libvulkan/driver.h
index 5383f59..7f8ae98 100644
--- a/vulkan/libvulkan/driver.h
+++ b/vulkan/libvulkan/driver.h
@@ -109,6 +109,10 @@
bool OpenHAL();
const VkAllocationCallbacks& GetDefaultAllocator();
+bool QueryPresentationProperties(
+ VkPhysicalDevice physicalDevice,
+ VkPhysicalDevicePresentationPropertiesANDROID *presentation_properties);
+
// clang-format off
VKAPI_ATTR PFN_vkVoidFunction GetInstanceProcAddr(VkInstance instance, const char* pName);
VKAPI_ATTR PFN_vkVoidFunction GetDeviceProcAddr(VkDevice device, const char* pName);