qdutils: Add VT timestamp to the metadata

Bug: 30411594
Change-Id: Iba7892aff33fdad522d22a60785054712ede3abd
diff --git a/msm8996/libqdutils/qdMetaData.cpp b/msm8996/libqdutils/qdMetaData.cpp
index 72edfdf..4ada44b 100644
--- a/msm8996/libqdutils/qdMetaData.cpp
+++ b/msm8996/libqdutils/qdMetaData.cpp
@@ -87,6 +87,9 @@
         case SET_SINGLE_BUFFER_MODE:
             data->isSingleBufferMode = *((uint32_t *)param);
             break;
+        case SET_VT_TIMESTAMP:
+            data->vtTimeStamp = *((uint64_t *)param);
+            break;
         default:
             ALOGE("Unknown paramType %d", paramType);
             break;
@@ -149,6 +152,9 @@
         case GET_SINGLE_BUFFER_MODE:
             *((uint32_t *)param) = data->isSingleBufferMode ;
             break;
+        case GET_VT_TIMESTAMP:
+            *((uint64_t *)param) = data->vtTimeStamp;
+            break;
         default:
             ALOGE("Unknown paramType %d", paramType);
             break;
diff --git a/msm8996/libqdutils/qdMetaData.h b/msm8996/libqdutils/qdMetaData.h
index fd4f444..deaeedd 100644
--- a/msm8996/libqdutils/qdMetaData.h
+++ b/msm8996/libqdutils/qdMetaData.h
@@ -79,36 +79,40 @@
     /* Set by graphics to indicate that this buffer will be written to but not
      * swapped out */
     uint32_t isSingleBufferMode;
+    /* Set by camera to program the VT Timestamp */
+    uint64_t vtTimeStamp;
 };
 
 enum DispParamType {
-    UNUSED0             = 0x0001,
-    UNUSED1             = 0x0002,
-    PP_PARAM_INTERLACED = 0x0004,
-    UNUSED2             = 0x0008,
-    UNUSED3             = 0x0010,
-    UNUSED4             = 0x0020,
-    UNUSED5             = 0x0040,
+    UNUSED0                = 0x0001,
+    UNUSED1                = 0x0002,
+    PP_PARAM_INTERLACED    = 0x0004,
+    UNUSED2                = 0x0008,
+    UNUSED3                = 0x0010,
+    UNUSED4                = 0x0020,
+    UNUSED5                = 0x0040,
     UPDATE_BUFFER_GEOMETRY = 0x0080,
-    UPDATE_REFRESH_RATE = 0x0100,
-    UPDATE_COLOR_SPACE = 0x0200,
-    MAP_SECURE_BUFFER = 0x400,
-    S3D_FORMAT = 0x800,
-    LINEAR_FORMAT = 0x1000,
-    SET_IGC = 0x2000,
+    UPDATE_REFRESH_RATE    = 0x0100,
+    UPDATE_COLOR_SPACE     = 0x0200,
+    MAP_SECURE_BUFFER      = 0x0400,
+    S3D_FORMAT             = 0x0800,
+    LINEAR_FORMAT          = 0x1000,
+    SET_IGC                = 0x2000,
     SET_SINGLE_BUFFER_MODE = 0x4000,
+    SET_VT_TIMESTAMP       = 0x8000,
 };
 
 enum DispFetchParamType {
-    GET_PP_PARAM_INTERLACED = 0x0004,
-    GET_BUFFER_GEOMETRY = 0x0080,
-    GET_REFRESH_RATE = 0x0100,
-    GET_COLOR_SPACE = 0x0200,
-    GET_MAP_SECURE_BUFFER = 0x400,
-    GET_S3D_FORMAT = 0x800,
-    GET_LINEAR_FORMAT = 0x1000,
-    GET_IGC = 0x2000,
-    GET_SINGLE_BUFFER_MODE = 0x4000,
+    GET_PP_PARAM_INTERLACED  = 0x0004,
+    GET_BUFFER_GEOMETRY      = 0x0080,
+    GET_REFRESH_RATE         = 0x0100,
+    GET_COLOR_SPACE          = 0x0200,
+    GET_MAP_SECURE_BUFFER    = 0x0400,
+    GET_S3D_FORMAT           = 0x0800,
+    GET_LINEAR_FORMAT        = 0x1000,
+    GET_IGC                  = 0x2000,
+    GET_SINGLE_BUFFER_MODE   = 0x4000,
+    GET_VT_TIMESTAMP         = 0x8000,
 };
 
 struct private_handle_t;