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

Commit 9027f592 authored by Junzhe Zou's avatar Junzhe Zou
Browse files

msm: camera: isp: avoid changing camif setting in stop



Previously DUAL_PD_PATH_SEL was set back to pdaf output during stop
sequence. This change avoids changing the register to keep dual pd
path the same before WM stops.

Change-Id: I8647ff6c48b9739b436e6bd5c765df9b5725a977
Signed-off-by: default avatarJunzhe Zou <jnzhezou@codeaurora.org>
parent c949c1cf
Loading
Loading
Loading
Loading
+0 −13
Original line number Diff line number Diff line
@@ -166,10 +166,7 @@ static int cam_vfe_camif_lite_resource_start(
static int cam_vfe_camif_lite_resource_stop(
	struct cam_isp_resource_node             *camif_lite_res)
{
	struct cam_vfe_mux_camif_lite_data       *camif_lite_priv;
	struct cam_vfe_camif_lite_ver2_reg       *camif_lite_reg;
	int                                       rc = 0;
	uint32_t                                  val = 0;

	if (!camif_lite_res) {
		CAM_ERR(CAM_ISP, "Error! Invalid input arguments");
@@ -180,16 +177,6 @@ static int cam_vfe_camif_lite_resource_stop(
		(camif_lite_res->res_state == CAM_ISP_RESOURCE_STATE_AVAILABLE))
		return 0;

	camif_lite_priv = (struct cam_vfe_mux_camif_lite_data *)
		camif_lite_res->res_priv;
	camif_lite_reg = camif_lite_priv->camif_lite_reg;

	val = cam_io_r_mb(camif_lite_priv->mem_base +
		camif_lite_priv->common_reg->core_cfg);
	val &= (~(1 << camif_lite_priv->reg_data->dual_pd_path_sel_shift));
	cam_io_w_mb(val, camif_lite_priv->mem_base +
		camif_lite_priv->common_reg->core_cfg);

	if (camif_lite_res->res_state == CAM_ISP_RESOURCE_STATE_STREAMING)
		camif_lite_res->res_state = CAM_ISP_RESOURCE_STATE_RESERVED;