Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 16fbb913 authored by Jeyaprakash Soundrapandian's avatar Jeyaprakash Soundrapandian Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: camera: Fix regulator disable sequence" into dev/msm-4.9-camx

parents efee82e7 4b863ab2
Loading
Loading
Loading
Loading
+5 −23
Original line number Diff line number Diff line
@@ -407,9 +407,9 @@ static int32_t cam_actuator_vreg_control(
		rc = cam_soc_util_enable_platform_resource(soc_info, false, 0,
			false);
	} else {
		rc = cam_soc_util_release_platform_resource(soc_info);
		rc = cam_soc_util_disable_platform_resource(soc_info, false,
			false);
		rc = cam_soc_util_release_platform_resource(soc_info);
	}

	return rc;
@@ -433,15 +433,6 @@ static int32_t cam_actuator_power_up(struct cam_actuator_ctrl_t *a_ctrl)
	if (soc_info->gpio_data &&
		gpio_num_info &&
		gpio_num_info->valid[SENSOR_VAF] == 1) {
		rc = cam_soc_util_request_platform_resource(&a_ctrl->soc_info,
			NULL, NULL);
		rc = cam_soc_util_enable_platform_resource(&a_ctrl->soc_info,
			false, 0, false);
		if (rc < 0) {
			CAM_ERR(CAM_ACTUATOR, "Failed in req gpio: %d", rc);
			return rc;
		}

		gpio_set_value_cansleep(
			gpio_num_info->gpio_num[SENSOR_VAF],
			1);
@@ -460,12 +451,6 @@ static int32_t cam_actuator_power_down(struct cam_actuator_ctrl_t *a_ctrl)
		&a_ctrl->soc_info;
	struct msm_camera_gpio_num_info *gpio_num_info = NULL;

	rc = cam_actuator_vreg_control(a_ctrl, 0);
	if (rc < 0) {
		CAM_ERR(CAM_ACTUATOR, "Failed %d");
		return rc;
	}

	gpio_num_info = a_ctrl->gpio_num_info;

	if (soc_info->gpio_data &&
@@ -475,14 +460,11 @@ static int32_t cam_actuator_power_down(struct cam_actuator_ctrl_t *a_ctrl)
		gpio_set_value_cansleep(
			gpio_num_info->gpio_num[SENSOR_VAF],
			GPIOF_OUT_INIT_LOW);
	}

		rc = cam_soc_util_release_platform_resource(&a_ctrl->soc_info);
		rc |= cam_soc_util_disable_platform_resource(&a_ctrl->soc_info,
					0, 0);
	rc = cam_actuator_vreg_control(a_ctrl, 0);
	if (rc < 0)
			CAM_ERR(CAM_ACTUATOR,
				"Failed to disable platform resources: %d", rc);
	}
		CAM_ERR(CAM_ACTUATOR, "Disable Regulator Failed: %d", rc);

	return rc;
}
+5 −23
Original line number Diff line number Diff line
@@ -83,9 +83,9 @@ static int cam_ois_vreg_control(struct cam_ois_ctrl_t *o_ctrl,
		rc = cam_soc_util_enable_platform_resource(soc_info, false, 0,
			false);
	} else {
		rc = cam_soc_util_release_platform_resource(soc_info);
		rc = cam_soc_util_disable_platform_resource(soc_info, false,
			false);
		rc = cam_soc_util_release_platform_resource(soc_info);
	}

	return rc;
@@ -109,15 +109,6 @@ static int cam_ois_power_up(struct cam_ois_ctrl_t *o_ctrl)
	if (soc_info->gpio_data &&
		gpio_num_info &&
		gpio_num_info->valid[SENSOR_VAF] == 1) {
		rc = cam_soc_util_request_platform_resource(&o_ctrl->soc_info,
			NULL, NULL);
		rc = cam_soc_util_enable_platform_resource(&o_ctrl->soc_info,
			false, 0, false);
		if (rc < 0) {
			CAM_ERR(CAM_OIS, "Failed in req gpio: %d", rc);
			return rc;
		}

		gpio_set_value_cansleep(
			gpio_num_info->gpio_num[SENSOR_VAF],
			1);
@@ -136,12 +127,6 @@ static int cam_ois_power_down(struct cam_ois_ctrl_t *o_ctrl)
		&o_ctrl->soc_info;
	struct msm_camera_gpio_num_info *gpio_num_info = NULL;

	rc = cam_ois_vreg_control(o_ctrl, 0);
	if (rc < 0) {
		CAM_ERR(CAM_OIS, "Failed %d");
		return rc;
	}

	gpio_num_info = o_ctrl->gpio_num_info;

	if (soc_info->gpio_data &&
@@ -151,14 +136,11 @@ static int cam_ois_power_down(struct cam_ois_ctrl_t *o_ctrl)
		gpio_set_value_cansleep(
			gpio_num_info->gpio_num[SENSOR_VAF],
			GPIOF_OUT_INIT_LOW);
	}

		rc = cam_soc_util_release_platform_resource(&o_ctrl->soc_info);
		rc |= cam_soc_util_disable_platform_resource(&o_ctrl->soc_info,
					0, 0);
	rc = cam_ois_vreg_control(o_ctrl, 0);
	if (rc < 0)
			CAM_ERR(CAM_OIS,
				"Failed to disable platform resources: %d", rc);
	}
		CAM_ERR(CAM_OIS, "Disable regualtor Failed %d", rc);

	return rc;
}