瀏覽代碼

msm: camera: isp: Program PPP path core config from acquire data

Program the PPP path based on core config value which is coming
from user space at acquire Hw.

CRs-Fixed: 3426117
Change-Id: I606dae35acb12a00fc835b00713a2610eb10ff01
Signed-off-by: Ayush Kumar <[email protected]>
Ayush Kumar 2 年之前
父節點
當前提交
4690de76a8
共有 1 個文件被更改,包括 6 次插入6 次删除
  1. 6 6
      drivers/cam_isp/isp_hw_mgr/isp_hw/tfe_hw/cam_tfe_core.c

+ 6 - 6
drivers/cam_isp/isp_hw_mgr/isp_hw/tfe_hw/cam_tfe_core.c

@@ -125,6 +125,7 @@ struct cam_tfe_ppp_data {
 	uint32_t                                     left_last_pixel;
 	uint32_t                                     first_line;
 	uint32_t                                     last_line;
+	uint32_t                                     core_cfg;
 	bool                                         lcr_enable;
 };
 
@@ -2229,6 +2230,7 @@ int cam_tfe_top_reserve(void *device_priv,
 					acquire_args->in_port->line_end;
 				ppp_data->lcr_enable =
 					acquire_args->lcr_enable;
+				ppp_data->core_cfg = acquire_args->in_port->core_cfg;
 			} else {
 				rdi_data = (struct cam_tfe_rdi_data      *)
 					top_priv->in_rsrc[i].res_priv;
@@ -2475,14 +2477,12 @@ static int cam_tfe_ppp_resource_start(
 
 	rsrc_data = (struct cam_tfe_ppp_data  *)ppp_res->res_priv;
 
-	/* Config tfe core */
-	val = (1 << rsrc_data->reg_data->pdaf_path_en_shift);
+	val = cam_io_r_mb(rsrc_data->mem_base + rsrc_data->common_reg->core_cfg_0);
 
-	if (!rsrc_data->lcr_enable)
-		val = (1 << rsrc_data->reg_data->lcr_dis_en_shift);
+	/* Config tfe core */
+	val |= (1 << rsrc_data->reg_data->pdaf_path_en_shift);
 
-	if (rsrc_data->sync_mode != CAM_ISP_HW_SYNC_NONE)
-		val = (1 << rsrc_data->reg_data->lcr_dis_en_shift);
+	val |= (rsrc_data->core_cfg & (1 << rsrc_data->reg_data->lcr_dis_en_shift));
 
 	cam_io_w_mb(val, rsrc_data->mem_base +
 		rsrc_data->common_reg->core_cfg_0);