display: Add support for Venus color format for newer platforms
Change-Id: I4c9a327bd30d1321e1f8383ffc1ca978efc8e9b9
Conflicts:
liboverlay/overlayUtils.h
libqdutils/gpuformats.h
libqdutils/qcom_ui.cpp
diff --git a/libgralloc/alloc_controller.cpp b/libgralloc/alloc_controller.cpp
index 823c1ae..a6311f2 100644
--- a/libgralloc/alloc_controller.cpp
+++ b/libgralloc/alloc_controller.cpp
@@ -235,6 +235,11 @@
alignedh = height;
size = ALIGN(alignedw * alignedh * 2, 4096);
break;
+ case HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS:
+ size = alignedw*alignedh +
+ (ALIGN(alignedw/2, 32) * (alignedh/2))*2;
+ size = ALIGN(size, 4096);
+ break;
default:
ALOGE("unrecognized pixel format: 0x%x", format);
return -EINVAL;
diff --git a/libgralloc/gralloc_priv.h b/libgralloc/gralloc_priv.h
index 59fbd30..4f6445d 100644
--- a/libgralloc/gralloc_priv.h
+++ b/libgralloc/gralloc_priv.h
@@ -96,6 +96,7 @@
enum {
/* OEM specific HAL formats */
HAL_PIXEL_FORMAT_NV12_ENCODEABLE = 0x102,
+ HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS = 0x7FA30C04,
HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED = 0x7FA30C03,
HAL_PIXEL_FORMAT_YCbCr_420_SP = 0x109,
HAL_PIXEL_FORMAT_YCrCb_420_SP_ADRENO = 0x7FA30C01,