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

Commit 65cd50a9 authored by Terence Ho's avatar Terence Ho
Browse files

msm: ais: allow sensor power down from init state



Allow sensor power down from init state to facilitate requirement of
ensuring all sensors are powered off first in some usecases due to
dependencies in power up and detect sequences.

Change-Id: Iac003a4475ac3925c00202574a02f1d2c761a202
Signed-off-by: default avatarTerence Ho <terenceh@codeaurora.org>
parent ff722117
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -926,14 +926,13 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl,

		s_ctrl->sensor_state = CAM_SENSOR_ACQUIRE;
		CAM_INFO(CAM_SENSOR,
				"CAM_ACQUIRE_DEV Success %d",
				"SENSOR_POWER_UP Success %d",
				s_ctrl->soc_info.index);
	}
		break;

	case AIS_SENSOR_POWER_DOWN: {
		if ((s_ctrl->sensor_state == CAM_SENSOR_INIT) ||
			(s_ctrl->sensor_state == CAM_SENSOR_START)) {
		if (s_ctrl->sensor_state == CAM_SENSOR_START) {
			rc = -EINVAL;
			CAM_WARN(CAM_SENSOR,
				"Not in right state to release %d (%d)",
@@ -952,7 +951,7 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl,

		s_ctrl->sensor_state = CAM_SENSOR_INIT;
		CAM_INFO(CAM_SENSOR,
			"CAM_RELEASE_DEV Success %d",
			"SENSOR_POWER_DOWN Success %d",
			s_ctrl->soc_info.index);
	}
		break;
@@ -1007,7 +1006,7 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl,
			goto release_mutex;
		}

		CAM_WARN(CAM_SENSOR, "Read 0x%x : 0x%x <- 0x%x",
		CAM_DBG(CAM_SENSOR, "Read 0x%x : 0x%x <- 0x%x",
			i2c_read.i2c_config.slave_addr,
			i2c_read.reg_addr, i2c_read.reg_data);

@@ -1052,7 +1051,7 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl,
			goto release_mutex;
		}

		CAM_INFO(CAM_SENSOR,
		CAM_DBG(CAM_SENSOR,
			"Write 0x%x, 0x%x <- 0x%x [%d, %d]",
			i2c_write.i2c_config.slave_addr,
			i2c_write.wr_payload.reg_addr,
@@ -1166,7 +1165,7 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl,
			goto release_mutex;
		}

		CAM_INFO(CAM_SENSOR,
		CAM_DBG(CAM_SENSOR,
			"Write 0x%x, %d regs [%d, %d]",
			i2c_write.i2c_config.slave_addr,
			i2c_write.count,