Ejemplo n.º 1
0
static int32_t s5k4e1_sensor_power_down(struct msm_sensor_ctrl_t *s_ctrl)
{
	struct msm_camera_sensor_info *data = s_ctrl->sensordata;
	printk("%s: E, %d\n", __func__, __LINE__); /*                                                                */


	/*                                                       */
		#ifdef LGIT_IEF_SWITCH
		if(system_state != SYSTEM_BOOTING){
			printk("[IEF_ON] Camera \n");
				mipi_lgd_lcd_ief_on();
		}
		#endif
		/*                                                      */

	s_ctrl->func_tbl->sensor_stop_stream(s_ctrl);
	msleep(20);
	if (data->sensor_platform_info->ext_power_ctrl != NULL)
		data->sensor_platform_info->ext_power_ctrl(0);
	msm_cam_clk_enable(&s_ctrl->sensor_i2c_client->client->dev,
		cam_clk_info, &s_ctrl->cam_clk, ARRAY_SIZE(cam_clk_info), 0);
	msm_camera_config_gpio_table(data, 0);
	msm_camera_enable_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_config_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_request_gpio_table(data, 0);
	kfree(s_ctrl->reg_ptr);
	printk("%s: X, %d\n", __func__, __LINE__); /*                                                                */
	return 0;
}
int32_t msm_sensor_power_down(struct msm_sensor_ctrl_t *s_ctrl)
{
	struct msm_camera_sensor_info *data = s_ctrl->sensordata;
	CDBG("%s\n", __func__);
	pr_err("%s: E: %s\n", __func__, data->sensor_name); /* LGE_CHANGE, For debugging, 2012-07-03, [email protected] */

/* LGE_CHANGE_S, Turn IEF off in camera mode, 2012-10-23 */
#ifdef LGIT_IEF_SWITCH_L1V
	if(system_state != SYSTEM_BOOTING){
		printk("[IEF_ON] Camera \n");
		mipi_lgd_lcd_ief_on();
	}
#endif
/* LGE_CHANGE_E, Turn IEF off in camera mode, 2012-10-23*/

/* LGE_CHANGE_S, Turn IEF off in camera mode except KeepScreenOn, 2012-09-13, [email protected] */
#ifdef LGIT_IEF_SWITCH_VU2
	sub_cam_id_for_keep_screen_on = -1;
	if(system_state != SYSTEM_BOOTING){
		printk("[IEF_ON] Camera \n");
		mipi_lgit_lcd_ief_on();
	}
#endif
/* LGE_CHANGE_E, Turn IEF off in camera mode except KeepScreenOn, 2012-09-13, [email protected] */
	
	if (data->sensor_platform_info->i2c_conf &&
		data->sensor_platform_info->i2c_conf->use_i2c_mux)
		msm_sensor_disable_i2c_mux(
			data->sensor_platform_info->i2c_conf);
#ifdef CONFIG_S5K4E1
	msleep(20);
#endif

	if (data->sensor_platform_info->ext_power_ctrl != NULL)
		data->sensor_platform_info->ext_power_ctrl(0);
	msm_cam_clk_enable(&s_ctrl->sensor_i2c_client->client->dev,
		cam_clk_info, &s_ctrl->cam_clk, ARRAY_SIZE(cam_clk_info), 0);
	msm_camera_config_gpio_table(data, 0);
	msm_camera_enable_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_config_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_request_gpio_table(data, 0);
	kfree(s_ctrl->reg_ptr);
	pr_err("%s: X\n", __func__); /* LGE_CHANGE, For debugging, 2012-07-03, [email protected] */
	return 0;
}
Ejemplo n.º 3
0
int32_t msm_sensor_power_down(struct msm_sensor_ctrl_t *s_ctrl)
{
	struct msm_camera_sensor_info *data = s_ctrl->sensordata;
	CDBG("%s\n", __func__);
	pr_err("%s: E: %s\n", __func__, data->sensor_name); /*                                                              */

/*                                                       */
#ifdef LGIT_IEF_SWITCH_L1V
	if(system_state != SYSTEM_BOOTING){
		printk("[IEF_ON] Camera \n");
		mipi_lgd_lcd_ief_on();
	}
#endif
/*                                                      */

/*                                                                                                */
#ifdef LGIT_IEF_SWITCH_VU2
	sub_cam_id_for_keep_screen_on = -1;
	if(system_state != SYSTEM_BOOTING){
		printk("[IEF_ON] Camera \n");
		mipi_lgit_lcd_ief_on();
	}
#endif
/*                                                                                                */
	
	if (data->sensor_platform_info->i2c_conf &&
		data->sensor_platform_info->i2c_conf->use_i2c_mux)
		msm_sensor_disable_i2c_mux(
			data->sensor_platform_info->i2c_conf);

	if (data->sensor_platform_info->ext_power_ctrl != NULL)
		data->sensor_platform_info->ext_power_ctrl(0);
	msm_cam_clk_enable(&s_ctrl->sensor_i2c_client->client->dev,
		cam_clk_info, &s_ctrl->cam_clk, ARRAY_SIZE(cam_clk_info), 0);
	msm_camera_config_gpio_table(data, 0);
	msm_camera_enable_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_config_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_request_gpio_table(data, 0);
	kfree(s_ctrl->reg_ptr);
	pr_err("%s: X\n", __func__); /*                                                              */
	return 0;
}
static int32_t s5k4e1_sensor_power_down(struct msm_sensor_ctrl_t *s_ctrl)
{
	struct msm_camera_sensor_info *data = s_ctrl->sensordata;
	printk("%s: E, %d\n", __func__, __LINE__); /* LGE_CHANGE, Show log always, 2012-05-24, [email protected] */


	/* LGE_CHANGE_S, Turn IEF off in camera mode, 2012-10-23 */
		#ifdef LGIT_IEF_SWITCH
		if(system_state != SYSTEM_BOOTING){
			printk("[IEF_ON] Camera \n");
				mipi_lgd_lcd_ief_on();
		}
		#endif
		/* LGE_CHANGE_E, Turn IEF off in camera mode, 2012-10-23*/

	if (data->sensor_platform_info->i2c_conf &&
		data->sensor_platform_info->i2c_conf->use_i2c_mux)
		msm_sensor_disable_i2c_mux(
			data->sensor_platform_info->i2c_conf);

	msleep(20);
	if (data->sensor_platform_info->ext_power_ctrl != NULL)
		data->sensor_platform_info->ext_power_ctrl(0);
	msm_cam_clk_enable(&s_ctrl->sensor_i2c_client->client->dev,
		cam_clk_info, &s_ctrl->cam_clk, ARRAY_SIZE(cam_clk_info), 0);
	msm_camera_config_gpio_table(data, 0);
	msm_camera_enable_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_config_vreg(&s_ctrl->sensor_i2c_client->client->dev,
		s_ctrl->sensordata->sensor_platform_info->cam_vreg,
		s_ctrl->sensordata->sensor_platform_info->num_vreg,
		s_ctrl->reg_ptr, 0);
	msm_camera_request_gpio_table(data, 0);
	kfree(s_ctrl->reg_ptr);
	printk("%s: X, %d\n", __func__, __LINE__); /* LGE_CHANGE, Show log always, 2012-05-24, [email protected] */
	return 0;
}