gralloc: Add option for unaligned YCrCb pixel format
* Same problem as unaligned NV21_ZSL (Samsung Galaxy A70 needs this)
Change-Id: Iddf19433ddef8023b9fa3f7b735f40039dafe3a6
diff --git a/gralloc/Android.mk b/gralloc/Android.mk
index c3f4133..57fee80 100644
--- a/gralloc/Android.mk
+++ b/gralloc/Android.mk
@@ -49,6 +49,9 @@
ifeq ($(TARGET_USES_UNALIGNED_NV21_ZSL),true)
LOCAL_CFLAGS += -DUSE_UNALIGNED_NV21_ZSL
endif
+ifeq ($(TARGET_USES_UNALIGNED_YCRCB),true)
+ LOCAL_CFLAGS += -DUSE_UNALIGNED_YCRCB
+endif
LOCAL_ADDITIONAL_DEPENDENCIES := $(common_deps)
LOCAL_SRC_FILES := gr_utils.cpp gr_adreno_info.cpp
diff --git a/gralloc/gr_utils.cpp b/gralloc/gr_utils.cpp
index d157ad6..4306663 100644
--- a/gralloc/gr_utils.cpp
+++ b/gralloc/gr_utils.cpp
@@ -1001,6 +1001,9 @@
// Below should be only YUV family
switch (format) {
case HAL_PIXEL_FORMAT_YCrCb_420_SP:
+#ifdef USE_UNALIGNED_YCRCB
+ break;
+#endif
case HAL_PIXEL_FORMAT_YCbCr_420_SP:
if (AdrenoMemInfo::GetInstance() == nullptr) {
return;