venus: use more common vk for AHB
What does this MR do and why?
venus: use more common vk for AHB
Related: venus common ANB adoption is here: !25185 (merged), !25262 (merged)
Commit summary:
- The dependency common Vulkan/Android bits have been extracted to !25263 (merged)
- The rest commits adopt common Android helpers around AHB and adopt common
vk_image
andvk_device_memory
as object bases, which allows venus to use common AHB export alloc tracking and reuse common AHB export impl.
What's changed:
-
vn_android_ahb_format_from_vk_format
->vk_image_format_to_ahb_format
-
vn_android_get_ahb_usage
->vk_image_usage_to_ahb_usage
-
vn_android_device_allocate_ahb
->vk_alloc_ahardware_buffer
invk_device_memory_create
-
vn_GetMemoryAndroidHardwareBufferANDROID
-> common vk
Test:
dEQP-VK.api.external.memory.android_hardware_buffer.*
-
android.hardware.nativehardware.cts.AHardwareBufferNativeTests
with ANGLE on Venus -
android.video.cts.VideoEncoderDecoderTest
with ANGLE on Venus
Follow up:
- leverage common vk_image tracked bits and drop redundant tracking from vn_image (re-do venus image creation code paths)