Skip to content

venus/android: Switch to using u_gralloc

Vladimir Beloborodov requested to merge VladimirTechMan/mesa:main into main

This commit switches the Venus-based Vulkan HAL to using u_gralloc, leveraging all the good work @roman.stratiienko is doing on the latter component. It enables testing and development of the Android Vulkan HAL on a wider range of virtualized systems - flavors of "Cuttlefish" are of particular practical interest now. At this point, only two gralloc variants are supported: CrOS and IMapper v4. The fallback gralloc (and any gralloc adapter modules relying on it, like GBM, QCOM) are out of scope for Android Vulkan HAL now.

Please, note that u_gralloc always attempts using the CrOS gralloc module first – and only tries other possible options if that one has failed. Thus, after this change, the behavior on the systems where the CrOS gralloc is available should be exactly the same as it is now.

On my side, these changes were checked with vulkan.virtio built for Android 14 "Cuttlefish" and "Trout" (for an aarch64 build target).

Edited by Vladimir Beloborodov

Merge request reports