Camera3: Add auto white balance lock value to metadata

Add ANDROID_CONTROL_AWB_LOCK to metadata

Bug: 14059883
Change-Id: Ia2b1046d698944d5b0585b13322227aa3bc03968
diff --git a/camera/QCamera2/HAL3/QCamera3HWI.cpp b/camera/QCamera2/HAL3/QCamera3HWI.cpp
index fedb5dc..36b7dc5 100644
--- a/camera/QCamera2/HAL3/QCamera3HWI.cpp
+++ b/camera/QCamera2/HAL3/QCamera3HWI.cpp
@@ -2016,6 +2016,7 @@
          case CAM_INTF_PARM_WHITE_BALANCE:
          case CAM_INTF_META_AWB_REGIONS:
          case CAM_INTF_META_AWB_STATE:
+         case CAM_INTF_PARM_AWB_LOCK:
          case CAM_INTF_META_MODE: {
            ALOGV("%s: 3A metadata: %d, do not process", __func__, curr_entry);
            break;
@@ -2408,8 +2409,8 @@
  *==========================================================================*/
 camera_metadata_t*
 QCamera3HardwareInterface::translateCbUrgentMetadataToResultMetadata
-                                (metadata_buffer_t *metadata) {
-
+                                (metadata_buffer_t *metadata)
+{
     CameraMetadata camMetadata;
     camera_metadata_t* resultMetadata;
 
@@ -2521,6 +2522,13 @@
            ALOGV("%s: urgent Metadata : ANDROID_CONTROL_AWB_STATE", __func__);
            break;
         }
+        case CAM_INTF_PARM_AWB_LOCK: {
+            uint8_t  *awb_lock =
+              (uint8_t *)POINTER_OF(CAM_INTF_PARM_AWB_LOCK, metadata);
+            camMetadata.update(ANDROID_CONTROL_AWB_LOCK, awb_lock, 1);
+            ALOGV("%s: urgent Metadata : ANDROID_CONTROL_AWB_LOCK", __func__);
+            break;
+        }
         case CAM_INTF_META_MODE: {
             uint8_t *mode =(uint8_t *)POINTER_OF(CAM_INTF_META_MODE, metadata);
             camMetadata.update(ANDROID_CONTROL_MODE, mode, 1);
diff --git a/camera/QCamera2/stack/common/cam_intf.h b/camera/QCamera2/stack/common/cam_intf.h
index 588cf43..3de809f 100644
--- a/camera/QCamera2/stack/common/cam_intf.h
+++ b/camera/QCamera2/stack/common/cam_intf.h
@@ -462,7 +462,7 @@
     INCLUDE(CAM_INTF_PARM_EV_STEP,                  	cam_rational_type_t,         1);
     INCLUDE(CAM_INTF_PARM_AEC_LOCK,                 	uint8_t,                     1);
     INCLUDE(CAM_INTF_PARM_FPS_RANGE,                	cam_fps_range_t,             1);
-    INCLUDE(CAM_INTF_PARM_AWB_LOCK,                 	int32_t,                     1);
+    INCLUDE(CAM_INTF_PARM_AWB_LOCK,                 	uint8_t,                     1);
     INCLUDE(CAM_INTF_PARM_EFFECT,                   	int32_t,                     1);
     INCLUDE(CAM_INTF_META_AEC_PRECAPTURE_TRIGGER,   	cam_trigger_t,               1);
     INCLUDE(CAM_INTF_META_AF_TRIGGER,               	cam_trigger_t,               1);