vulkan: Allow drivers to add private gralloc usage flags
Change-Id: Iea33990b3a85a761e27d54bb323d866267c88901
(cherry picked from commit c040fbedde52d632a7ceeef3a9266d35b22ce53f)
diff --git a/vulkan/nulldrv/null_driver.cpp b/vulkan/nulldrv/null_driver.cpp
index 4b4d22d..e1678ea 100644
--- a/vulkan/nulldrv/null_driver.cpp
+++ b/vulkan/nulldrv/null_driver.cpp
@@ -235,6 +235,9 @@
PFN_vkVoidFunction proc = LookupDeviceProcAddr(name);
if (proc)
return proc;
+ if (strcmp(name, "vkGetSwapchainGrallocUsageANDROID") == 0)
+ return reinterpret_cast<PFN_vkVoidFunction>(
+ GetSwapchainGrallocUsageANDROID);
if (strcmp(name, "vkImportNativeFenceANDROID") == 0)
return reinterpret_cast<PFN_vkVoidFunction>(ImportNativeFenceANDROID);
if (strcmp(name, "vkQueueSignalNativeFenceANDROID") == 0)
@@ -661,6 +664,15 @@
return VK_SUCCESS;
}
+VkResult GetSwapchainGrallocUsageANDROID(VkDevice,
+ VkFormat,
+ VkImageUsageFlags,
+ int* grallocUsage) {
+ // The null driver never reads or writes the gralloc buffer
+ *grallocUsage = 0;
+ return VK_SUCCESS;
+}
+
VkResult ImportNativeFenceANDROID(VkDevice, VkSemaphore, int fence) {
close(fence);
return VK_SUCCESS;