Browse Source

msm: camera: ois: Update ois state correctly

Set ois state to config state only after init settings is
applied successfully, to avoid sensor power down is called
twice while init settings apply fail.

CRs-Fixed: 3332288
Change-Id: Ifdd407ea3c07eafc4091e2df354bc704ba6f0f7c
Signed-off-by: chengxue <[email protected]>
chengxue 2 năm trước cách đây
mục cha
commit
69c87fa237
1 tập tin đã thay đổi với 3 bổ sung2 xóa
  1. 3 2
      drivers/cam_sensor_module/cam_ois/cam_ois_core.c

+ 3 - 2
drivers/cam_sensor_module/cam_ois/cam_ois_core.c

@@ -209,6 +209,7 @@ static int cam_ois_power_down(struct cam_ois_ctrl_t *o_ctrl)
 	}
 
 	camera_io_release(&o_ctrl->io_master_info);
+	o_ctrl->cam_ois_state = CAM_OIS_ACQUIRE;
 
 	return rc;
 }
@@ -1134,7 +1135,6 @@ static int cam_ois_pkt_parse(struct cam_ois_ctrl_t *o_ctrl, void *arg)
 				CAM_ERR(CAM_OIS, " OIS Power up failed");
 				return rc;
 			}
-			o_ctrl->cam_ois_state = CAM_OIS_CONFIG;
 		}
 
 		CAM_DBG(CAM_OIS, "ois_fw_flag: %d", o_ctrl->ois_fw_flag);
@@ -1215,6 +1215,8 @@ static int cam_ois_pkt_parse(struct cam_ois_ctrl_t *o_ctrl, void *arg)
 			}
 		}
 
+		o_ctrl->cam_ois_state = CAM_OIS_CONFIG;
+
 		rc = delete_request(&o_ctrl->i2c_fwinit_data);
 		if (rc < 0) {
 			CAM_WARN(CAM_OIS,
@@ -1443,7 +1445,6 @@ void cam_ois_shutdown(struct cam_ois_ctrl_t *o_ctrl)
 		rc = cam_ois_power_down(o_ctrl);
 		if (rc < 0)
 			CAM_ERR(CAM_OIS, "OIS Power down failed");
-		o_ctrl->cam_ois_state = CAM_OIS_ACQUIRE;
 	}
 
 	if (o_ctrl->cam_ois_state >= CAM_OIS_ACQUIRE) {