Эх сурвалжийг харах

Merge "msm: camera: isp: Resolve compilation errors" into camera-kernel.lnx.5.0

Haritha Chintalapati 4 жил өмнө
parent
commit
07324022b6

+ 4 - 2
drivers/cam_isp/isp_hw_mgr/cam_tfe_hw_mgr.c

@@ -4224,6 +4224,7 @@ static int cam_tfe_mgr_prepare_hw_update(void *hw_mgr_priv,
 	struct cam_isp_prepare_hw_update_data   *prepare_hw_data;
 	struct cam_isp_frame_header_info         frame_header_info;
 	struct cam_isp_change_base_args          change_base_info = {0};
+	struct cam_isp_check_sfe_fe_io_cfg       sfe_fe_chk_cfg = {0};
 
 	if (!hw_mgr_priv || !prepare_hw_update_args) {
 		CAM_ERR(CAM_ISP, "Invalid args");
@@ -4313,9 +4314,10 @@ static int cam_tfe_mgr_prepare_hw_update(void *hw_mgr_priv,
 			hw_mgr->mgr_common.img_iommu_hdl_secure,
 			prepare, ctx->base[i].idx,
 			&kmd_buf, ctx->res_list_tfe_out,
-			NULL,
+			NULL, CAM_ISP_TFE_OUT_RES_BASE,
 			CAM_TFE_HW_OUT_RES_MAX, fill_fence,
-			&frame_header_info);
+			CAM_ISP_HW_TYPE_TFE,
+			&frame_header_info, &sfe_fe_chk_cfg);
 
 		if (rc) {
 			CAM_ERR(CAM_ISP,

+ 9 - 4
drivers/cam_isp/isp_hw_mgr/hw_utils/cam_isp_packet_parser.c

@@ -686,6 +686,7 @@ int cam_isp_add_io_buffers(
 	struct cam_buf_io_cfg              *io_cfg;
 	struct cam_isp_resource_node       *res;
 	struct cam_isp_hw_mgr_res          *hw_mgr_res;
+	struct cam_isp_hw_mgr_res          *hw_mgr_res_temp;
 	struct cam_isp_hw_get_cmd_update    update_buf;
 	struct cam_isp_hw_get_wm_update     wm_update;
 	struct cam_isp_hw_get_wm_update     bus_rd_update;
@@ -778,14 +779,18 @@ int cam_isp_add_io_buffers(
 			res_id_in = io_cfg[i].resource_type;
 			found = false;
 			if (!res_list_in_rd) {
-				CAM_DBG(CAM_ISP,
-					"No BUS Read supported");
-				continue;
+				CAM_ERR(CAM_ISP,
+				"No BUS Read supported io_cfg %d %d req:%d type:%d fence:%d",
+					prepare->packet->num_io_configs, i,
+					prepare->packet->header.request_id,
+					io_cfg[i].resource_type, io_cfg[i].fence);
+				return -EINVAL;
 			}
 			if (hw_type != CAM_ISP_HW_TYPE_SFE)
 				res_id_in = CAM_ISP_HW_VFE_IN_RD;
 
-			list_for_each_entry(hw_mgr_res, res_list_in_rd, list) {
+			list_for_each_entry_safe(hw_mgr_res, hw_mgr_res_temp,
+				res_list_in_rd, list) {
 				if (hw_mgr_res->res_id == res_id_in) {
 					found = true;
 					break;

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

@@ -322,17 +322,17 @@ static void cam_tfe_log_error_irq_status(
 	soc_private = top_priv->common_data.soc_info->soc_private;
 
 	CAM_INFO(CAM_ISP, "current monotonic time stamp seconds %lld:%lld",
-		ts.tv_sec, ts.tv_nsec);
+		ts.tv_sec, ts.tv_nsec/1000);
 	CAM_INFO(CAM_ISP,
 		"ERROR time %lld:%lld SOF %lld:%lld EPOCH %lld:%lld EOF %lld:%lld",
 		top_priv->error_ts.tv_sec,
-		top_priv->error_ts.tv_usec,
+		top_priv->error_ts.tv_nsec/1000,
 		top_priv->sof_ts.tv_sec,
-		top_priv->sof_ts.tv_usec,
+		top_priv->sof_ts.tv_nsec/1000,
 		top_priv->epoch_ts.tv_sec,
-		top_priv->epoch_ts.tv_usec,
+		top_priv->epoch_ts.tv_nsec/1000,
 		top_priv->eof_ts.tv_sec,
-		top_priv->eof_ts.tv_usec);
+		top_priv->eof_ts.tv_nsec/1000);
 
 	val_0 = cam_io_r(mem_base  +
 		top_priv->common_data.common_reg->debug_0);
@@ -477,8 +477,8 @@ static int cam_tfe_error_irq_bottom_half(
 		evt_info.err_type = CAM_TFE_IRQ_STATUS_OVERFLOW;
 		top_priv->error_ts.tv_sec =
 			evt_payload->ts.mono_time.tv_sec;
-		top_priv->error_ts.tv_usec =
-			evt_payload->ts.mono_time.tv_usec;
+		top_priv->error_ts.tv_nsec =
+			evt_payload->ts.mono_time.tv_nsec;
 
 		cam_tfe_log_error_irq_status(core_info, top_priv, evt_payload);
 		if (event_cb)
@@ -516,8 +516,8 @@ static int cam_tfe_rdi_irq_bottom_half(
 		CAM_DBG(CAM_ISP, "Received EOF");
 		top_priv->eof_ts.tv_sec =
 			evt_payload->ts.mono_time.tv_sec;
-		top_priv->eof_ts.tv_usec =
-			evt_payload->ts.mono_time.tv_usec;
+		top_priv->eof_ts.tv_nsec =
+			evt_payload->ts.mono_time.tv_nsec;
 
 		if (rdi_priv->event_cb)
 			rdi_priv->event_cb(rdi_priv->priv,
@@ -529,8 +529,8 @@ static int cam_tfe_rdi_irq_bottom_half(
 		CAM_DBG(CAM_ISP, "Received SOF");
 		top_priv->sof_ts.tv_sec =
 			evt_payload->ts.mono_time.tv_sec;
-		top_priv->sof_ts.tv_usec =
-			evt_payload->ts.mono_time.tv_usec;
+		top_priv->sof_ts.tv_nsec =
+			evt_payload->ts.mono_time.tv_nsec;
 
 		if (rdi_priv->event_cb)
 			rdi_priv->event_cb(rdi_priv->priv,
@@ -559,8 +559,8 @@ static int cam_tfe_rdi_irq_bottom_half(
 		CAM_DBG(CAM_ISP, "Received EPOCH0");
 		top_priv->epoch_ts.tv_sec =
 			evt_payload->ts.mono_time.tv_sec;
-		top_priv->epoch_ts.tv_usec =
-			evt_payload->ts.mono_time.tv_usec;
+		top_priv->epoch_ts.tv_nsec =
+			evt_payload->ts.mono_time.tv_nsec;
 
 		if (rdi_priv->event_cb)
 			rdi_priv->event_cb(rdi_priv->priv,
@@ -594,8 +594,8 @@ static int cam_tfe_camif_irq_bottom_half(
 
 		top_priv->eof_ts.tv_sec =
 			evt_payload->ts.mono_time.tv_sec;
-		top_priv->eof_ts.tv_usec =
-			evt_payload->ts.mono_time.tv_usec;
+		top_priv->eof_ts.tv_nsec =
+			evt_payload->ts.mono_time.tv_nsec;
 
 		if (camif_priv->event_cb)
 			camif_priv->event_cb(camif_priv->priv,
@@ -621,8 +621,8 @@ static int cam_tfe_camif_irq_bottom_half(
 
 		top_priv->sof_ts.tv_sec =
 			evt_payload->ts.mono_time.tv_sec;
-		top_priv->sof_ts.tv_usec =
-			evt_payload->ts.mono_time.tv_usec;
+		top_priv->sof_ts.tv_nsec =
+			evt_payload->ts.mono_time.tv_nsec;
 
 		if (camif_priv->event_cb)
 			camif_priv->event_cb(camif_priv->priv,
@@ -652,8 +652,8 @@ static int cam_tfe_camif_irq_bottom_half(
 
 		top_priv->epoch_ts.tv_sec =
 			evt_payload->ts.mono_time.tv_sec;
-		top_priv->epoch_ts.tv_usec =
-			evt_payload->ts.mono_time.tv_usec;
+		top_priv->epoch_ts.tv_nsec =
+			evt_payload->ts.mono_time.tv_nsec;
 
 		if (camif_priv->event_cb)
 			camif_priv->event_cb(camif_priv->priv,
@@ -2186,13 +2186,13 @@ int cam_tfe_top_start(struct cam_tfe_hw_core_info *core_info,
 			core_info->tfe_hw_info->error_irq_mask,
 			CAM_TFE_TOP_IRQ_REG_NUM, true);
 		top_priv->error_ts.tv_sec = 0;
-		top_priv->error_ts.tv_usec = 0;
+		top_priv->error_ts.tv_nsec = 0;
 		top_priv->sof_ts.tv_sec = 0;
-		top_priv->sof_ts.tv_usec = 0;
+		top_priv->sof_ts.tv_nsec = 0;
 		top_priv->epoch_ts.tv_sec = 0;
-		top_priv->epoch_ts.tv_usec = 0;
+		top_priv->epoch_ts.tv_nsec = 0;
 		top_priv->eof_ts.tv_sec = 0;
-		top_priv->eof_ts.tv_usec = 0;
+		top_priv->eof_ts.tv_nsec = 0;
 	}
 
 end: