frontbuffer enhancements to ANDROID_vulkan_native_buffer
Since VK_KHR_swapchain is implemented entirely in libvulkan, we need an
image-level mechanism to inform the driver that a swapchain image will
be used for front-buffered rendering. This is implemented by chaining
another structure off of the VkImageCreateInfo passed to the driver when
creating swapchain images.
V2: Don't foul up api file. Rerun code generators.
V3: Rename VkNativeBuffer2ANDROID structure to
VkSwapchainImageCreateInfoANDROID
V4: Provide nulldrv stub for new function
V5: rebase.
Change-Id: I4447400cb1782440638e4c8816b081dd8923ddb9
Test: compile
diff --git a/vulkan/libvulkan/driver_gen.cpp b/vulkan/libvulkan/driver_gen.cpp
index d979a34..a98a091 100644
--- a/vulkan/libvulkan/driver_gen.cpp
+++ b/vulkan/libvulkan/driver_gen.cpp
@@ -246,6 +246,13 @@
nullptr,
},
{
+ "vkGetSwapchainGrallocUsage2ANDROID",
+ ProcHook::DEVICE,
+ ProcHook::ANDROID_native_buffer,
+ nullptr,
+ nullptr,
+ },
+ {
"vkGetSwapchainGrallocUsageANDROID",
ProcHook::DEVICE,
ProcHook::ANDROID_native_buffer,
@@ -351,6 +358,7 @@
INIT_PROC(dev, DestroyImage);
INIT_PROC(dev, AllocateCommandBuffers);
INIT_PROC_EXT(ANDROID_native_buffer, dev, GetSwapchainGrallocUsageANDROID);
+ INIT_PROC_EXT(ANDROID_native_buffer, dev, GetSwapchainGrallocUsage2ANDROID);
INIT_PROC_EXT(ANDROID_native_buffer, dev, AcquireImageANDROID);
INIT_PROC_EXT(ANDROID_native_buffer, dev, QueueSignalReleaseImageANDROID);
// clang-format on