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

Commit 611df692 authored by Depeng Shao's avatar Depeng Shao Committed by Gerrit - the friendly Code Review server
Browse files

msm: camera: sensor: Adjust pinctrl control flow



Some devices don't have the pinctrl configuration,
but they may have the shared resource, so we always
need to control the shared pinctrl during power on
and power off.

Change-Id: I72c65c441a6bac63b0b17ac847f874f354cfca0f
Signed-off-by: default avatarDepeng Shao <depengs@codeaurora.org>
parent 65532007
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -1744,14 +1744,15 @@ int cam_sensor_core_power_up(struct cam_sensor_power_ctrl_t *ctrl,
			ctrl->pinctrl_info.gpio_state_suspend);
		if (ret)
			CAM_ERR(CAM_SENSOR, "cannot set pin to suspend state");
		cam_res_mgr_shared_pinctrl_select_state(false);
		devm_pinctrl_put(ctrl->pinctrl_info.pinctrl);
		cam_res_mgr_shared_pinctrl_put();
	}

	if (soc_info->use_shared_clk)
		cam_res_mgr_shared_clk_config(false);

	cam_res_mgr_shared_pinctrl_select_state(false);
	cam_res_mgr_shared_pinctrl_put();

	ctrl->cam_pinctrl_status = 0;

	cam_sensor_util_request_gpio_table(soc_info, 0);
@@ -1926,14 +1927,15 @@ int cam_sensor_util_power_down(struct cam_sensor_power_ctrl_t *ctrl,
		if (ret)
			CAM_ERR(CAM_SENSOR, "cannot set pin to suspend state");

		cam_res_mgr_shared_pinctrl_select_state(false);
		devm_pinctrl_put(ctrl->pinctrl_info.pinctrl);
		cam_res_mgr_shared_pinctrl_put();
	}

	if (soc_info->use_shared_clk)
		cam_res_mgr_shared_clk_config(false);

	cam_res_mgr_shared_pinctrl_select_state(false);
	cam_res_mgr_shared_pinctrl_put();

	ctrl->cam_pinctrl_status = 0;

	cam_sensor_util_request_gpio_table(soc_info, 0);