Module: Mesa Branch: master Commit: 104744f4dfce026ebaf8c5c6c9b1eba905dd40be URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=104744f4dfce026ebaf8c5c6c9b1eba905dd40be
Author: Tapani Pälli <[email protected]> Date: Thu Jan 23 09:48:47 2020 +0200 anv/android: setup gralloc1 usage from gralloc0 usage manually This cuts away dependency to libgrallocusage. Signed-off-by: Tapani Pälli <[email protected]> Acked-by: Lionel Landwerlin <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3532> --- src/intel/Android.vulkan.mk | 4 ---- src/intel/vulkan/anv_android.c | 21 +++++++++++++++++---- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/intel/Android.vulkan.mk b/src/intel/Android.vulkan.mk index 134f4183eec..c5280b0bf04 100644 --- a/src/intel/Android.vulkan.mk +++ b/src/intel/Android.vulkan.mk @@ -329,9 +329,5 @@ else libexpat endif -ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 27; echo $$?), 0) -LOCAL_STATIC_LIBRARIES += libgrallocusage -endif - include $(MESA_COMMON_MK) include $(BUILD_SHARED_LIBRARY) diff --git a/src/intel/vulkan/anv_android.c b/src/intel/vulkan/anv_android.c index 7e4047696f9..d50a0294962 100644 --- a/src/intel/vulkan/anv_android.c +++ b/src/intel/vulkan/anv_android.c @@ -25,7 +25,6 @@ #if ANDROID_API_LEVEL >= 26 #include <hardware/gralloc1.h> -#include <grallocusage/GrallocUsageConversion.h> #endif #include <hardware/hardware.h> @@ -634,7 +633,6 @@ setup_gralloc0_usage(VkFormat format, VkImageUsageFlags imageUsage, return VK_SUCCESS; } - #if ANDROID_API_LEVEL >= 26 VkResult anv_GetSwapchainGrallocUsage2ANDROID( VkDevice device_h, @@ -660,8 +658,23 @@ VkResult anv_GetSwapchainGrallocUsage2ANDROID( if (result != VK_SUCCESS) return result; - android_convertGralloc0To1Usage(grallocUsage, grallocProducerUsage, - grallocConsumerUsage); + /* Setup gralloc1 usage flags from gralloc0 flags. */ + + if (grallocUsage & GRALLOC_USAGE_HW_RENDER) { + *grallocProducerUsage |= GRALLOC1_PRODUCER_USAGE_GPU_RENDER_TARGET; + *grallocConsumerUsage |= GRALLOC1_CONSUMER_USAGE_CLIENT_TARGET; + } + + if (grallocUsage & GRALLOC_USAGE_HW_TEXTURE) { + *grallocConsumerUsage |= GRALLOC1_CONSUMER_USAGE_GPU_TEXTURE; + } + + if (grallocUsage & (GRALLOC_USAGE_HW_FB | + GRALLOC_USAGE_HW_COMPOSER | + GRALLOC_USAGE_EXTERNAL_DISP)) { + *grallocProducerUsage |= GRALLOC1_PRODUCER_USAGE_GPU_RENDER_TARGET; + *grallocConsumerUsage |= GRALLOC1_CONSUMER_USAGE_HWCOMPOSER; + } return VK_SUCCESS; } _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
