Merge "gralloc: Add support for new camera FLEX formats"
diff --git a/gralloc/gr_camera_info.cpp b/gralloc/gr_camera_info.cpp
index 99f3851..12ec3db 100644
--- a/gralloc/gr_camera_info.cpp
+++ b/gralloc/gr_camera_info.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2019, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -109,6 +109,15 @@
case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX:
format = CAMERA_PIXEL_FORMAT_UBWC_FLEX;
break;
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_2_BATCH:
+ format = CAMERA_PIXEL_FORMAT_UBWC_FLEX_2_BATCH;
+ break;
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_4_BATCH:
+ format = CAMERA_PIXEL_FORMAT_UBWC_FLEX_4_BATCH;
+ break;
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_8_BATCH:
+ format = CAMERA_PIXEL_FORMAT_UBWC_FLEX_8_BATCH;
+ break;
case HAL_PIXEL_FORMAT_MULTIPLANAR_FLEX:
format = CAMERA_PIXEL_FORMAT_MULTIPLANAR_FLEX;
break;
diff --git a/gralloc/gr_camera_info.h b/gralloc/gr_camera_info.h
index fe4d357..28e02b0 100644
--- a/gralloc/gr_camera_info.h
+++ b/gralloc/gr_camera_info.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2019, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -51,8 +51,14 @@
// individual APIs
CAMERA_PIXEL_FORMAT_UBWC_FLEX = 0x126, // YUV format with fliexible alignment defined by
// individual APIs
- CAMERA_PIXEL_FORMAT_MULTIPLANAR_FLEX = 0x127, // YUV format with fliexible alignment defined by
- // individual APIs
+ CAMERA_PIXEL_FORMAT_MULTIPLANAR_FLEX = 0x127, // YUV format with fliexible alignment defined by
+ // individual APIs
+ CAMERA_PIXEL_FORMAT_UBWC_FLEX_2_BATCH = 0x128, // YUV format with fliexible alignment defined by
+ // individual APIs
+ CAMERA_PIXEL_FORMAT_UBWC_FLEX_4_BATCH = 0x129, // YUV format with fliexible alignment defined by
+ // individual APIs
+ CAMERA_PIXEL_FORMAT_UBWC_FLEX_8_BATCH = 0x130, // YUV format with fliexible alignment defined by
+ // individual APIs
CAMERA_PIXEL_FORMAT_NV12_VENUS = 0x7FA30C04, // NV12 video format
CAMERA_PIXEL_FORMAT_NV12_HEIF = 0x00000116, // HEIF video YUV420 format
CAMERA_PIXEL_FORMAT_YCbCr_420_SP_UBWC = 0x7FA30C06, // 8 bit YUV 420 semi-planar UBWC format
diff --git a/gralloc/gr_utils.cpp b/gralloc/gr_utils.cpp
index 79e5d3a..07ad9e2 100644
--- a/gralloc/gr_utils.cpp
+++ b/gralloc/gr_utils.cpp
@@ -72,6 +72,9 @@
case HAL_PIXEL_FORMAT_CbYCrY_422_I:
case HAL_PIXEL_FORMAT_NV12_LINEAR_FLEX :
case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX:
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_2_BATCH:
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_4_BATCH:
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_8_BATCH:
case HAL_PIXEL_FORMAT_MULTIPLANAR_FLEX:
return true;
default:
@@ -153,6 +156,9 @@
case HAL_PIXEL_FORMAT_NV21_ZSL:
case HAL_PIXEL_FORMAT_NV12_LINEAR_FLEX:
case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX:
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_2_BATCH:
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_4_BATCH:
+ case HAL_PIXEL_FORMAT_NV12_UBWC_FLEX_8_BATCH:
case HAL_PIXEL_FORMAT_MULTIPLANAR_FLEX:
case HAL_PIXEL_FORMAT_RAW_OPAQUE:
case HAL_PIXEL_FORMAT_RAW10: