Sfoglia il codice sorgente

msm: camera: isp: Reset LCR flags during flush

LCR enabled flag is not reset during flush and the corresponding
register is also not reset. It could cause random behavior after
flush.
This commit resets LCR flags during flush.

CRs-Fixed: 3241884
Change-Id: I8821656ae7baf97a59cdc57bb79ded9552185f08
Signed-off-by: Gaurav Jindal <[email protected]>
Gaurav Jindal 3 anni fa
parent
commit
da076deade

+ 1 - 0
drivers/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_ife_csid_hw_ver2.c

@@ -4750,6 +4750,7 @@ int cam_ife_csid_ver2_stop(void *hw_priv,
 
 	csid_hw->debug_info.test_bus_enabled = false;
 	csid_hw->flags.pf_err_detected = false;
+	csid_hw->flags.rdi_lcr_en = false;
 	mutex_unlock(&csid_hw->hw_info->hw_mutex);
 
 	return rc;

+ 4 - 0
drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_top/cam_vfe_top_ver4.c

@@ -972,6 +972,10 @@ int cam_vfe_top_ver4_stop(void *device_priv,
 		top_priv->perf_counters[i].dump_counter = false;
 	}
 
+	if (top_priv->common_data.hw_info->num_pdaf_lcr_res)
+		cam_io_w(1, soc_info->reg_map[VFE_CORE_BASE_IDX].mem_base +
+			top_priv->common_data.common_reg->pdaf_input_cfg_1);
+
 	atomic_set(&top_priv->overflow_pending, 0);
 	return rc;
 }