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

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

Merge "msm: camera: Clean up camera sensor driver" into dev/msm-4.9-camx

parents a3c51c1c 94406ce6
Loading
Loading
Loading
Loading
+0 −28
Original line number Diff line number Diff line
@@ -226,14 +226,6 @@ struct camera_vreg_t {
	enum camera_vreg_type type;
};

struct cam_sensor_module_power_setting {
	enum msm_camera_power_seq_type seq_type;
	unsigned short seq_val;
	uint32_t config_val_low;
	uint32_t config_val_high;
	unsigned short delay;
};

struct msm_camera_gpio_num_info {
	uint16_t gpio_num[SENSOR_SEQ_TYPE_MAX];
	uint8_t valid[SENSOR_SEQ_TYPE_MAX];
@@ -335,26 +327,6 @@ struct cam_sensor_power_setting {
	void *data[10];
};

struct cam_sensor_power_setting_array {
	struct cam_sensor_power_setting  power_setting_a[MAX_POWER_CONFIG];
	struct cam_sensor_power_setting *power_setting;
	unsigned short size;
	struct cam_sensor_power_setting  power_down_setting_a[MAX_POWER_CONFIG];
	struct cam_sensor_power_setting *power_down_setting;
	unsigned short size_down;
};

struct msm_camera_sensor_slave_info {
	enum msm_sensor_camera_id_t camera_id;
	unsigned short slave_addr;
	enum i2c_freq_mode i2c_freq_mode;
	enum camera_sensor_i2c_type addr_type;
	struct msm_sensor_id_info_t sensor_id_info;
	struct cam_sensor_power_setting_array power_setting_array;
	unsigned char  is_init_params_valid;
	enum msm_sensor_output_format_t output_format;
};

struct cam_sensor_board_info {
	struct cam_camera_slave_info slave_info;
	int32_t sensor_mount_angle;
+7 −10
Original line number Diff line number Diff line
@@ -1307,16 +1307,13 @@ int cam_sensor_core_power_up(struct cam_sensor_power_ctrl_t *ctrl,
				CAM_ERR(CAM_SENSOR, "request gpio failed");
				return no_gpio;
			}
			if (power_setting->seq_val >= CAM_VREG_MAX ||
				!gpio_num_info) {
				CAM_ERR(CAM_SENSOR, "gpio index %d >= max %d",
					power_setting->seq_val,
					CAM_VREG_MAX);
			if (!gpio_num_info) {
				CAM_ERR(CAM_SENSOR, "Invalid gpio_num_info");
				goto power_up_failed;
			}
			CAM_DBG(CAM_SENSOR, "gpio set val %d",
				gpio_num_info->gpio_num
				[power_setting->seq_val]);
				[power_setting->seq_type]);

			rc = msm_cam_sensor_handle_reg_gpio(
				power_setting->seq_type,
@@ -1414,11 +1411,11 @@ int cam_sensor_core_power_up(struct cam_sensor_power_ctrl_t *ctrl,
			if (!gpio_num_info)
				continue;
			if (!gpio_num_info->valid
				[power_setting->seq_val])
				[power_setting->seq_type])
				continue;
			gpio_set_value_cansleep(
				gpio_num_info->gpio_num
				[power_setting->seq_val], GPIOF_OUT_INIT_LOW);
				[power_setting->seq_type], GPIOF_OUT_INIT_LOW);
			break;
		case SENSOR_VANA:
		case SENSOR_VDIG:
@@ -1584,12 +1581,12 @@ int msm_camera_power_down(struct cam_sensor_power_ctrl_t *ctrl,
		case SENSOR_CUSTOM_GPIO1:
		case SENSOR_CUSTOM_GPIO2:

			if (!gpio_num_info->valid[pd->seq_val])
			if (!gpio_num_info->valid[pd->seq_type])
				continue;

			gpio_set_value_cansleep(
				gpio_num_info->gpio_num
				[pd->seq_val],
				[pd->seq_type],
				(int) pd->config_val);

			break;