vulkan: Add gralloc1 usage to VK_ANDROID_native_buffer
Replaces the gralloc0-style 'int' usage in
vkGetSwapchainGrallocUsage2ANDROID and VkNativeBufferANDROID with a
gralloc1-style pair of uint64_t usages. A later change will plumb this
to and from ANativeWindow; for now we just collapse and expand from
32-bit usage.
Test: vulkanGears
Change-Id: I4555ba9d6ca1d15ed0791dc0bda01a1443890d02
diff --git a/vulkan/api/vulkan.api b/vulkan/api/vulkan.api
index 5a67d36..a89fed9 100644
--- a/vulkan/api/vulkan.api
+++ b/vulkan/api/vulkan.api
@@ -2908,14 +2908,20 @@
platform.HWND hwnd
}
+@internal class Gralloc1Usage {
+ u64 consumer
+ u64 producer
+}
+
@extension("VK_ANDROID_native_buffer")
class VkNativeBufferANDROID {
VkStructureType sType
const void* pNext
platform.buffer_handle_t handle
- int stride
- int format
- int usage
+ s32 stride
+ s32 format
+ s32 usage
+ Gralloc1Usage usage2
}
@extension("VK_ANDROID_native_buffer")
@@ -5833,21 +5839,24 @@
}
@extension("VK_ANDROID_native_buffer")
+@optional
cmd VkResult vkGetSwapchainGrallocUsageANDROID(
VkDevice device,
VkFormat format,
VkImageUsageFlags imageUsage,
- int* grallocUsage) {
+ s32* grallocUsage) {
return ?
}
@extension("VK_ANDROID_native_buffer")
+@optional
cmd VkResult vkGetSwapchainGrallocUsage2ANDROID(
VkDevice device,
VkFormat format,
VkImageUsageFlags imageUsage,
VkSwapchainImageUsageFlagsANDROID swapchainImageUsage,
- int* grallocUsage) {
+ u64* grallocConsumerUsage,
+ u64* grallocProducerUsage) {
return ?
}