Merge "sdm: Define client interface to enable/disable idle pc"
diff --git a/gralloc/gr_utils.cpp b/gralloc/gr_utils.cpp
index dc64b58..1ecbce3 100644
--- a/gralloc/gr_utils.cpp
+++ b/gralloc/gr_utils.cpp
@@ -66,6 +66,7 @@
     // Below formats used by camera and VR
     case HAL_PIXEL_FORMAT_BLOB:
     case HAL_PIXEL_FORMAT_RAW_OPAQUE:
+    case HAL_PIXEL_FORMAT_NV12_HEIF:
       return true;
     default:
       return false;
@@ -328,6 +329,9 @@
         size = ALIGN((alignedw * alignedh) + (alignedw * alignedh) / 2,
                      SIZE_4K);
         break;
+      case HAL_PIXEL_FORMAT_NV12_HEIF:
+        size = VENUS_BUFFER_SIZE(COLOR_FMT_NV12_512, width, height);
+        break;
       default:ALOGE("%s: Unrecognized pixel format: 0x%x", __FUNCTION__, format);
         return 0;
     }
@@ -457,6 +461,7 @@
     case HAL_PIXEL_FORMAT_YCbCr_422_SP:
     case HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS:
     case HAL_PIXEL_FORMAT_NV12_ENCODEABLE:
+    case HAL_PIXEL_FORMAT_NV12_HEIF:
       // Same as YCbCr_420_SP_VENUS
       GetYuvSPPlaneInfo(hnd->base, width, height, 1, ycbcr);
       break;
@@ -908,6 +913,10 @@
       aligned_w = ALIGN(width, 64);
       aligned_h = ALIGN(height, 64);
       break;
+    case HAL_PIXEL_FORMAT_NV12_HEIF:
+      aligned_w = INT(VENUS_Y_STRIDE(COLOR_FMT_NV12_512, width));
+      aligned_h = INT(VENUS_Y_SCANLINES(COLOR_FMT_NV12_512, height));
+      break;
     default:
       break;
   }
@@ -979,6 +988,7 @@
     case HAL_PIXEL_FORMAT_YCbCr_420_TP10_UBWC:
     case HAL_PIXEL_FORMAT_YCbCr_420_P010_UBWC:
     case HAL_PIXEL_FORMAT_YCbCr_420_P010_VENUS:
+    case HAL_PIXEL_FORMAT_NV12_HEIF:
       offset[1] = static_cast<uint32_t>(reinterpret_cast<uint64_t>(yuvInfo.cb) - hnd->base);
       break;
     case HAL_PIXEL_FORMAT_YCrCb_420_SP:
diff --git a/gralloc/gralloc_priv.h b/gralloc/gralloc_priv.h
index 4c981d4..fa086cc 100644
--- a/gralloc/gralloc_priv.h
+++ b/gralloc/gralloc_priv.h
@@ -128,6 +128,7 @@
 #define HAL_PIXEL_FORMAT_YCrCb_420_SP_VENUS 0x114
 #define HAL_PIXEL_FORMAT_BGR_565 0x115
 #define HAL_PIXEL_FORMAT_RAW8 0x123
+#define HAL_PIXEL_FORMAT_NV12_HEIF 0x116
 
 // 10 bit
 #define HAL_PIXEL_FORMAT_ARGB_2101010 0x117