From f03c2c9f5a09b56d4f26831ce11746ede00f7910 Mon Sep 17 00:00:00 2001 From: Zhijun He Date: Sat, 5 Jun 2021 09:49:08 -0700 Subject: gralloc: map camera output yuv to NV21 Map camera YUV420_888 to NV21 when the consumer is GPU. It was previously mapped to NV12. Test: Build Bug: 190204149 Change-Id: I174bebb5b8012a11737c0396f031b73917f3cb23 --- gralloc4/src/core/mali_gralloc_formats.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gralloc4/src') diff --git a/gralloc4/src/core/mali_gralloc_formats.cpp b/gralloc4/src/core/mali_gralloc_formats.cpp index 38a35b5..9555727 100644 --- a/gralloc4/src/core/mali_gralloc_formats.cpp +++ b/gralloc4/src/core/mali_gralloc_formats.cpp @@ -1432,6 +1432,11 @@ uint32_t get_base_format(const uint64_t req_format, { base_format = HAL_PIXEL_FORMAT_EXYNOS_YCbCr_420_SP_M; } + else if ((usage & GRALLOC_USAGE_HW_TEXTURE) && (usage & GRALLOC_USAGE_HW_CAMERA_WRITE)) + { + // Camera flexible YUV format output maps to NV21M. + base_format = HAL_PIXEL_FORMAT_EXYNOS_YCrCb_420_SP_M; + } else if (usage & (GRALLOC_USAGE_HW_RENDER | GRALLOC_USAGE_HW_TEXTURE)) { base_format = HAL_PIXEL_FORMAT_EXYNOS_YCbCr_420_SP_M; -- cgit v1.2.3