Merge "QCamera2: HAL3: Fix null AF_MODE metadata issue in HFR" into oc-dr1-dev
diff --git a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
index fa4a91a..ed9bf0f 100644
--- a/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/msm8998/QCamera2/HAL3/QCamera3HWI.cpp
@@ -6911,6 +6911,25 @@
             float fwk_DevCamDebug_aec_gamma_ratio = *DevCamDebug_aec_gamma_ratio;
             camMetadata.update(DEVCAMDEBUG_AEC_GAMMA_RATIO, &fwk_DevCamDebug_aec_gamma_ratio, 1);
         }
+        // DevCamDebug metadata translateFromHalMetadata AEC MOTION
+        IF_META_AVAILABLE(float, DevCamDebug_aec_camera_motion_dx,
+                CAM_INTF_META_DEV_CAM_AEC_CAMERA_MOTION_DX, metadata) {
+            float fwk_DevCamDebug_aec_camera_motion_dx = *DevCamDebug_aec_camera_motion_dx;
+            camMetadata.update(DEVCAMDEBUG_AEC_CAMERA_MOTION_DX,
+                               &fwk_DevCamDebug_aec_camera_motion_dx, 1);
+        }
+        IF_META_AVAILABLE(float, DevCamDebug_aec_camera_motion_dy,
+                CAM_INTF_META_DEV_CAM_AEC_CAMERA_MOTION_DY, metadata) {
+            float fwk_DevCamDebug_aec_camera_motion_dy = *DevCamDebug_aec_camera_motion_dy;
+            camMetadata.update(DEVCAMDEBUG_AEC_CAMERA_MOTION_DY,
+                               &fwk_DevCamDebug_aec_camera_motion_dy, 1);
+        }
+        IF_META_AVAILABLE(float, DevCamDebug_aec_subject_motion,
+                CAM_INTF_META_DEV_CAM_AEC_SUBJECT_MOTION, metadata) {
+            float fwk_DevCamDebug_aec_subject_motion = *DevCamDebug_aec_subject_motion;
+            camMetadata.update(DEVCAMDEBUG_AEC_SUBJECT_MOTION,
+                               &fwk_DevCamDebug_aec_subject_motion, 1);
+        }
         // DevCamDebug metadata translateFromHalMetadata AWB
         IF_META_AVAILABLE(float, DevCamDebug_awb_r_gain,
                 CAM_INTF_META_DEV_CAM_AWB_R_GAIN, metadata) {
@@ -10220,6 +10239,10 @@
        DEVCAMDEBUG_AEC_LTM_RATIO,
        DEVCAMDEBUG_AEC_LA_RATIO,
        DEVCAMDEBUG_AEC_GAMMA_RATIO,
+       // DevCamDebug metadata result_keys AEC MOTION
+       DEVCAMDEBUG_AEC_CAMERA_MOTION_DX,
+       DEVCAMDEBUG_AEC_CAMERA_MOTION_DY,
+       DEVCAMDEBUG_AEC_SUBJECT_MOTION,
        // DevCamDebug metadata result_keys AWB
        DEVCAMDEBUG_AWB_R_GAIN,
        DEVCAMDEBUG_AWB_G_GAIN,
diff --git a/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp b/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
index 07915ed..72366c1 100644
--- a/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
+++ b/msm8998/QCamera2/HAL3/QCamera3VendorTags.cpp
@@ -295,6 +295,10 @@
    { "devcamdebug_aec_ltm_ratio",              TYPE_FLOAT },
    { "devcamdebug_aec_la_ratio",               TYPE_FLOAT },
    { "devcamdebug_aec_gamma_ratio",            TYPE_FLOAT },
+   // DevCamDebug vendor AEC MOTION
+   { "devcamdebug_aec_camera_motion_dx",       TYPE_FLOAT },
+   { "devcamdebug_aec_camera_motion_dy",       TYPE_FLOAT },
+   { "devcamdebug_aec_subject_motion",         TYPE_FLOAT },
    // DevCamDebug vendor tag AWB
    { "devcamdebug_awb_r_gain",                 TYPE_FLOAT },
    { "devcamdebug_awb_g_gain",                 TYPE_FLOAT },
@@ -498,6 +502,10 @@
     (uint32_t)DEVCAMDEBUG_AEC_LTM_RATIO,
     (uint32_t)DEVCAMDEBUG_AEC_LA_RATIO,
     (uint32_t)DEVCAMDEBUG_AEC_GAMMA_RATIO,
+    // DEVCAMDEBUG AEC MOTION
+    (uint32_t)DEVCAMDEBUG_AEC_CAMERA_MOTION_DX,
+    (uint32_t)DEVCAMDEBUG_AEC_CAMERA_MOTION_DY,
+    (uint32_t)DEVCAMDEBUG_AEC_SUBJECT_MOTION,
     // DEVCAMDEBUG AWB
     (uint32_t)DEVCAMDEBUG_AWB_R_GAIN,
     (uint32_t)DEVCAMDEBUG_AWB_G_GAIN,
diff --git a/msm8998/QCamera2/HAL3/QCamera3VendorTags.h b/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
index cbc57df..f505d20 100644
--- a/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
+++ b/msm8998/QCamera2/HAL3/QCamera3VendorTags.h
@@ -346,6 +346,10 @@
     DEVCAMDEBUG_AEC_LTM_RATIO,
     DEVCAMDEBUG_AEC_LA_RATIO,
     DEVCAMDEBUG_AEC_GAMMA_RATIO,
+    // DEVCAMDEBUG AEC MOTION
+    DEVCAMDEBUG_AEC_CAMERA_MOTION_DX,
+    DEVCAMDEBUG_AEC_CAMERA_MOTION_DY,
+    DEVCAMDEBUG_AEC_SUBJECT_MOTION,
     // DEVCAMDEBUG AWB
     DEVCAMDEBUG_AWB_R_GAIN,
     DEVCAMDEBUG_AWB_G_GAIN,
diff --git a/msm8998/QCamera2/stack/common/cam_intf.h b/msm8998/QCamera2/stack/common/cam_intf.h
index 02448b3..aa12488 100644
--- a/msm8998/QCamera2/stack/common/cam_intf.h
+++ b/msm8998/QCamera2/stack/common/cam_intf.h
@@ -1197,6 +1197,10 @@
     INCLUDE(CAM_INTF_META_DEV_CAM_AEC_LTM_RATIO,             float,                  1);
     INCLUDE(CAM_INTF_META_DEV_CAM_AEC_LA_RATIO,              float,                  1);
     INCLUDE(CAM_INTF_META_DEV_CAM_AEC_GAMMA_RATIO,           float,                  1);
+    /* DevCamDebug metadata CAM_INTF.H AEC MOTION */
+    INCLUDE(CAM_INTF_META_DEV_CAM_AEC_CAMERA_MOTION_DX,      float,                  1);
+    INCLUDE(CAM_INTF_META_DEV_CAM_AEC_CAMERA_MOTION_DY,      float,                  1);
+    INCLUDE(CAM_INTF_META_DEV_CAM_AEC_SUBJECT_MOTION,        float,                  1);
     /* DevCamDebug metadata CAM_INTF.H AWB */
     INCLUDE(CAM_INTF_META_DEV_CAM_AWB_R_GAIN,           float,                       1);
     INCLUDE(CAM_INTF_META_DEV_CAM_AWB_G_GAIN,           float,                       1);
diff --git a/msm8998/QCamera2/stack/common/cam_types.h b/msm8998/QCamera2/stack/common/cam_types.h
index 83142b7..a567f59 100644
--- a/msm8998/QCamera2/stack/common/cam_types.h
+++ b/msm8998/QCamera2/stack/common/cam_types.h
@@ -2507,6 +2507,10 @@
     CAM_INTF_META_DEV_CAM_AEC_LTM_RATIO,
     CAM_INTF_META_DEV_CAM_AEC_LA_RATIO,
     CAM_INTF_META_DEV_CAM_AEC_GAMMA_RATIO,
+    /* DevCamDebug metadata CAM_INTF.H AEC MOTION */
+    CAM_INTF_META_DEV_CAM_AEC_CAMERA_MOTION_DX,
+    CAM_INTF_META_DEV_CAM_AEC_CAMERA_MOTION_DY,
+    CAM_INTF_META_DEV_CAM_AEC_SUBJECT_MOTION,
     /* DevCamDebug metadata CAM_TYPES.h AWB */
     CAM_INTF_META_DEV_CAM_AWB_R_GAIN,
     CAM_INTF_META_DEV_CAM_AWB_G_GAIN,