Loading drivers/media/platform/msm/ais/cam_sensor_module/cam_sensor/cam_sensor_core.c +12 −1 Original line number Diff line number Diff line /* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. /* Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -746,6 +746,7 @@ void cam_sensor_shutdown(struct cam_sensor_ctrl_t *s_ctrl) struct cam_sensor_power_ctrl_t *power_info = &s_ctrl->sensordata->power_info; int rc = 0; int idx = 0; if ((s_ctrl->sensor_state == CAM_SENSOR_INIT) && (s_ctrl->is_probe_succeed == 0)) Loading Loading @@ -774,6 +775,16 @@ void cam_sensor_shutdown(struct cam_sensor_ctrl_t *s_ctrl) s_ctrl->is_probe_succeed = 0; s_ctrl->last_flush_req = 0; s_ctrl->sensor_state = CAM_SENSOR_INIT; for (idx = 0; idx < AIS_MAX_INTR_GPIO; idx++) { if (s_ctrl->s_intr[idx].work_inited == 1) { gpio_free(s_ctrl->s_intr[idx].gpio_array[0].gpio); free_irq(gpio_to_irq( s_ctrl->s_intr[idx].gpio_array[0].gpio), &s_ctrl->s_intr[idx]); s_ctrl->s_intr[idx].work_inited = 0; } } } int cam_sensor_match_id(struct cam_sensor_ctrl_t *s_ctrl) Loading Loading
drivers/media/platform/msm/ais/cam_sensor_module/cam_sensor/cam_sensor_core.c +12 −1 Original line number Diff line number Diff line /* Copyright (c) 2017-2019, The Linux Foundation. All rights reserved. /* Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and Loading Loading @@ -746,6 +746,7 @@ void cam_sensor_shutdown(struct cam_sensor_ctrl_t *s_ctrl) struct cam_sensor_power_ctrl_t *power_info = &s_ctrl->sensordata->power_info; int rc = 0; int idx = 0; if ((s_ctrl->sensor_state == CAM_SENSOR_INIT) && (s_ctrl->is_probe_succeed == 0)) Loading Loading @@ -774,6 +775,16 @@ void cam_sensor_shutdown(struct cam_sensor_ctrl_t *s_ctrl) s_ctrl->is_probe_succeed = 0; s_ctrl->last_flush_req = 0; s_ctrl->sensor_state = CAM_SENSOR_INIT; for (idx = 0; idx < AIS_MAX_INTR_GPIO; idx++) { if (s_ctrl->s_intr[idx].work_inited == 1) { gpio_free(s_ctrl->s_intr[idx].gpio_array[0].gpio); free_irq(gpio_to_irq( s_ctrl->s_intr[idx].gpio_array[0].gpio), &s_ctrl->s_intr[idx]); s_ctrl->s_intr[idx].work_inited = 0; } } } int cam_sensor_match_id(struct cam_sensor_ctrl_t *s_ctrl) Loading