Explorar o código

msm: camera: sensor: Remove NULL set for regulator phandle

Regulator_get is being moved with probe time for opertional
performance improvement. With this change regualtor phandle can
only be derive at power cycle. In case of power_on/down failure case
currently regulator phandle is set with NULL which can cause
failure in power related operation in all future sessions. This change
removes NULL setting to regulator phandle in failure case.

CRs-Fixed: 3052638
Change-Id: I4abec311416e852bbe1922024b05755e2b3a3d25
Signed-off-by: Jigarkumar Zala <[email protected]>
Jigarkumar Zala %!s(int64=3) %!d(string=hai) anos
pai
achega
218814c4de

+ 9 - 9
drivers/cam_sensor_module/cam_actuator/cam_actuator_core.c

@@ -884,15 +884,6 @@ int32_t cam_actuator_driver_cmd(struct cam_actuator_ctrl_t *a_ctrl,
 			goto release_mutex;
 		}
 
-		if (a_ctrl->cam_act_state == CAM_ACTUATOR_CONFIG) {
-			rc = cam_actuator_power_down(a_ctrl);
-			if (rc < 0) {
-				CAM_ERR(CAM_ACTUATOR,
-					"Actuator Power down failed");
-				goto release_mutex;
-			}
-		}
-
 		if (a_ctrl->bridge_intf.device_hdl == -1) {
 			CAM_ERR(CAM_ACTUATOR, "link hdl: %d device hdl: %d",
 				a_ctrl->bridge_intf.device_hdl,
@@ -901,6 +892,15 @@ int32_t cam_actuator_driver_cmd(struct cam_actuator_ctrl_t *a_ctrl,
 			goto release_mutex;
 		}
 
+		if (a_ctrl->cam_act_state == CAM_ACTUATOR_CONFIG) {
+			rc = cam_actuator_power_down(a_ctrl);
+			if (rc < 0) {
+				CAM_ERR(CAM_ACTUATOR,
+					"Actuator Power Down Failed");
+				goto release_mutex;
+			}
+		}
+
 		if (a_ctrl->bridge_intf.link_hdl != -1) {
 			CAM_ERR(CAM_ACTUATOR,
 				"Device [%d] still active on link 0x%x",

+ 0 - 4
drivers/cam_sensor_module/cam_sensor_utils/cam_sensor_util.c

@@ -2055,7 +2055,6 @@ int cam_sensor_core_power_up(struct cam_sensor_power_ctrl_t *ctrl,
 							"vreg %s %d",
 							soc_info->rgltr_name[j],
 							rc);
-						soc_info->rgltr[j] = NULL;
 						goto power_up_failed;
 					}
 
@@ -2150,7 +2149,6 @@ int cam_sensor_core_power_up(struct cam_sensor_power_ctrl_t *ctrl,
 						soc_info->rgltr_name[vreg_idx],
 						rc);
 
-					soc_info->rgltr[vreg_idx] = NULL;
 					goto power_up_failed;
 				}
 
@@ -2417,8 +2415,6 @@ int cam_sensor_util_power_down(struct cam_sensor_power_ctrl_t *ctrl,
 						"Reg: %s disable failed",
 						soc_info->rgltr_name[
 							ps->seq_val]);
-						soc_info->rgltr[ps->seq_val] =
-							NULL;
 						msm_cam_sensor_handle_reg_gpio(
 							pd->seq_type,
 							gpio_num_info,