Loading drivers/media/platform/msm/camera/cam_sensor_module/cam_sensor/cam_sensor_core.c +24 −12 Original line number Diff line number Diff line Loading @@ -38,49 +38,58 @@ static void cam_sensor_update_req_mgr( add_req.req_id); } static void cam_sensor_release_resource( static void cam_sensor_release_stream_rsc( struct cam_sensor_ctrl_t *s_ctrl) { struct i2c_settings_array *i2c_set = NULL; int i, rc; int rc; i2c_set = &(s_ctrl->i2c_data.init_settings); i2c_set = &(s_ctrl->i2c_data.streamoff_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Init settings"); "failed while deleting Streamoff settings"); } i2c_set = &(s_ctrl->i2c_data.config_settings); i2c_set = &(s_ctrl->i2c_data.streamon_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Res settings"); "failed while deleting Streamon settings"); } i2c_set = &(s_ctrl->i2c_data.streamoff_settings); } static void cam_sensor_release_resource( struct cam_sensor_ctrl_t *s_ctrl) { struct i2c_settings_array *i2c_set = NULL; int i, rc; i2c_set = &(s_ctrl->i2c_data.init_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Streamoff settings"); "failed while deleting Init settings"); } i2c_set = &(s_ctrl->i2c_data.streamon_settings); i2c_set = &(s_ctrl->i2c_data.config_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Streamoff settings"); "failed while deleting Res settings"); } if (s_ctrl->i2c_data.per_frame != NULL) { for (i = 0; i < MAX_PER_FRAME_ARRAY; i++) { i2c_set = &(s_ctrl->i2c_data.per_frame[i]); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); Loading Loading @@ -489,7 +498,7 @@ void cam_sensor_shutdown(struct cam_sensor_ctrl_t *s_ctrl) return; cam_sensor_release_resource(s_ctrl); cam_sensor_release_stream_rsc(s_ctrl); if (s_ctrl->sensor_state >= CAM_SENSOR_ACQUIRE) cam_sensor_power_down(s_ctrl); Loading Loading @@ -722,6 +731,7 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl, } cam_sensor_release_resource(s_ctrl); cam_sensor_release_stream_rsc(s_ctrl); if (s_ctrl->bridge_intf.device_hdl == -1) { CAM_ERR(CAM_SENSOR, "Invalid Handles: link hdl: %d device hdl: %d", Loading Loading @@ -794,6 +804,8 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl, "cannot apply streamoff settings"); } } cam_sensor_release_resource(s_ctrl); s_ctrl->sensor_state = CAM_SENSOR_ACQUIRE; } break; Loading Loading
drivers/media/platform/msm/camera/cam_sensor_module/cam_sensor/cam_sensor_core.c +24 −12 Original line number Diff line number Diff line Loading @@ -38,49 +38,58 @@ static void cam_sensor_update_req_mgr( add_req.req_id); } static void cam_sensor_release_resource( static void cam_sensor_release_stream_rsc( struct cam_sensor_ctrl_t *s_ctrl) { struct i2c_settings_array *i2c_set = NULL; int i, rc; int rc; i2c_set = &(s_ctrl->i2c_data.init_settings); i2c_set = &(s_ctrl->i2c_data.streamoff_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Init settings"); "failed while deleting Streamoff settings"); } i2c_set = &(s_ctrl->i2c_data.config_settings); i2c_set = &(s_ctrl->i2c_data.streamon_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Res settings"); "failed while deleting Streamon settings"); } i2c_set = &(s_ctrl->i2c_data.streamoff_settings); } static void cam_sensor_release_resource( struct cam_sensor_ctrl_t *s_ctrl) { struct i2c_settings_array *i2c_set = NULL; int i, rc; i2c_set = &(s_ctrl->i2c_data.init_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Streamoff settings"); "failed while deleting Init settings"); } i2c_set = &(s_ctrl->i2c_data.streamon_settings); i2c_set = &(s_ctrl->i2c_data.config_settings); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); if (rc < 0) CAM_ERR(CAM_SENSOR, "failed while deleting Streamoff settings"); "failed while deleting Res settings"); } if (s_ctrl->i2c_data.per_frame != NULL) { for (i = 0; i < MAX_PER_FRAME_ARRAY; i++) { i2c_set = &(s_ctrl->i2c_data.per_frame[i]); if (i2c_set->is_settings_valid == 1) { i2c_set->is_settings_valid = -1; rc = delete_request(i2c_set); Loading Loading @@ -489,7 +498,7 @@ void cam_sensor_shutdown(struct cam_sensor_ctrl_t *s_ctrl) return; cam_sensor_release_resource(s_ctrl); cam_sensor_release_stream_rsc(s_ctrl); if (s_ctrl->sensor_state >= CAM_SENSOR_ACQUIRE) cam_sensor_power_down(s_ctrl); Loading Loading @@ -722,6 +731,7 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl, } cam_sensor_release_resource(s_ctrl); cam_sensor_release_stream_rsc(s_ctrl); if (s_ctrl->bridge_intf.device_hdl == -1) { CAM_ERR(CAM_SENSOR, "Invalid Handles: link hdl: %d device hdl: %d", Loading Loading @@ -794,6 +804,8 @@ int32_t cam_sensor_driver_cmd(struct cam_sensor_ctrl_t *s_ctrl, "cannot apply streamoff settings"); } } cam_sensor_release_resource(s_ctrl); s_ctrl->sensor_state = CAM_SENSOR_ACQUIRE; } break; Loading