From 61e899a181aff87f34aa702cf217aede089501e4 Mon Sep 17 00:00:00 2001 From: Yiwei Zhang Date: Sat, 3 Sep 2022 06:50:34 +0000 Subject: [PATCH] venus: enable zink required extensions on Android Below extensions are enabled: - VK_KHR_external_memory_fd - VK_EXT_external_memory_dma_buf - VK_EXT_image_drm_format_modifier Signed-off-by: Yiwei Zhang Part-of: --- src/virtio/vulkan/vn_physical_device.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/virtio/vulkan/vn_physical_device.c b/src/virtio/vulkan/vn_physical_device.c index 41fc30803bc..8797075e73c 100644 --- a/src/virtio/vulkan/vn_physical_device.c +++ b/src/virtio/vulkan/vn_physical_device.c @@ -868,13 +868,13 @@ vn_physical_device_init_external_memory( physical_dev->external_memory.renderer_handle_type = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT; -#ifdef ANDROID - physical_dev->external_memory.supported_handle_types = - VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID; -#else physical_dev->external_memory.supported_handle_types = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT | VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT; + +#ifdef ANDROID + physical_dev->external_memory.supported_handle_types |= + VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID; #endif } } @@ -1002,7 +1002,8 @@ vn_physical_device_get_native_extensions( exts->KHR_external_fence_fd = true; exts->KHR_external_semaphore_fd = true; } -#else /* ANDROID */ +#endif + if (can_external_mem) { exts->KHR_external_memory_fd = true; exts->EXT_external_memory_dma_buf = true; @@ -1016,7 +1017,6 @@ vn_physical_device_get_native_extensions( exts->KHR_swapchain_mutable_format = true; } #endif -#endif /* ANDROID */ exts->EXT_physical_device_drm = true; /* use common implementation */ @@ -1108,9 +1108,7 @@ vn_physical_device_get_passthrough_extensions( /* vendor */ .VALVE_mutable_descriptor_type = true, -#ifndef ANDROID .EXT_image_drm_format_modifier = true, -#endif .EXT_image_view_min_lod = true, .EXT_index_type_uint8 = true, .EXT_line_rasterization = true,