diff options
author | Zhijun He <zhijunhe@google.com> | 2021-06-05 09:49:08 -0700 |
---|---|---|
committer | Zhijun He <zhijunhe@google.com> | 2021-06-05 18:17:43 +0000 |
commit | f03c2c9f5a09b56d4f26831ce11746ede00f7910 (patch) | |
tree | 2e21cbc3f07a347d76a218a7fcb53d4a6db49e4a /gralloc4/src | |
parent | fe189f7ded1e4b612245cd36b685b0e242682a17 (diff) | |
download | gchips-f03c2c9f5a09b56d4f26831ce11746ede00f7910.tar.gz |
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
Diffstat (limited to 'gralloc4/src')
-rw-r--r-- | gralloc4/src/core/mali_gralloc_formats.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
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; |