diff --git a/drivers/cam_isp/isp_hw_mgr/cam_ife_hw_mgr.c b/drivers/cam_isp/isp_hw_mgr/cam_ife_hw_mgr.c index ba287c45ad..f58b8de4ad 100644 --- a/drivers/cam_isp/isp_hw_mgr/cam_ife_hw_mgr.c +++ b/drivers/cam_isp/isp_hw_mgr/cam_ife_hw_mgr.c @@ -4337,11 +4337,11 @@ static int cam_ife_mgr_check_and_update_fe( return 0; } -static int cam_ife_hw_mgr_convert_out_port_to_csid_path(uint64_t port_id) +static int cam_ife_hw_mgr_convert_out_port_to_csid_path(uint32_t port_id) { uint32_t path_id = CAM_IFE_PIX_PATH_RES_MAX; - if (port_id == max_ife_out_res) + if (port_id >= (CAM_ISP_IFE_OUT_RES_BASE + max_ife_out_res)) goto end; path_id = cam_ife_hw_mgr_get_ife_csid_rdi_res_type(port_id); @@ -14044,29 +14044,20 @@ static void cam_ife_hw_mgr_trigger_crop_reg_dump( struct cam_hw_intf *hw_intf, struct cam_isp_hw_event_info *event_info) { - int rc = 0, path_id = 0, idx = -1; + int rc = 0, path_id = 0; - while (event_info->out_port_id) { - idx++; - if (!(event_info->out_port_id & 0x1)) { - event_info->out_port_id >>= 1; - continue; - } + path_id = cam_ife_hw_mgr_convert_out_port_to_csid_path( + event_info->res_id); - path_id = cam_ife_hw_mgr_convert_out_port_to_csid_path( - CAM_ISP_IFE_OUT_RES_BASE + idx); - if (hw_intf->hw_ops.process_cmd) { - rc = hw_intf->hw_ops.process_cmd( - hw_intf->hw_priv, - CAM_ISP_HW_CMD_CSID_DUMP_CROP_REG, - &path_id, - sizeof(path_id)); - if (rc) - CAM_ERR(CAM_ISP, "CSID:%d Reg Dump failed for path=%u", - event_info->hw_idx, path_id); - } - - event_info->out_port_id >>= 1; + if (hw_intf->hw_ops.process_cmd) { + rc = hw_intf->hw_ops.process_cmd( + hw_intf->hw_priv, + CAM_ISP_HW_CMD_CSID_DUMP_CROP_REG, + &path_id, + sizeof(path_id)); + if (rc) + CAM_ERR(CAM_ISP, "CSID:%d Reg Dump failed for path=%u", + event_info->hw_idx, path_id); } } diff --git a/drivers/cam_isp/isp_hw_mgr/isp_hw/include/cam_isp_hw.h b/drivers/cam_isp/isp_hw_mgr/isp_hw/include/cam_isp_hw.h index 85169bb1d1..bfd2c57483 100644 --- a/drivers/cam_isp/isp_hw_mgr/isp_hw/include/cam_isp_hw.h +++ b/drivers/cam_isp/isp_hw_mgr/isp_hw/include/cam_isp_hw.h @@ -346,7 +346,6 @@ struct cam_isp_hw_bufdone_event_info { * * @Brief: Structure to pass event details to hw mgr * - * @out_port_id Out port id on which event occurred * @res_type: Type of IFE resource * @is_secondary_evt: Indicates if event was requested by hw mgr * @res_id: Unique resource ID @@ -358,7 +357,6 @@ struct cam_isp_hw_bufdone_event_info { * */ struct cam_isp_hw_event_info { - uint64_t out_port_id; enum cam_isp_resource_type res_type; bool is_secondary_evt; uint32_t res_id; diff --git a/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus/cam_vfe_bus_ver3.c b/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus/cam_vfe_bus_ver3.c index c5279e18e2..6637f5224b 100644 --- a/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus/cam_vfe_bus_ver3.c +++ b/drivers/cam_isp/isp_hw_mgr/isp_hw/vfe_hw/vfe_bus/cam_vfe_bus_ver3.c @@ -2915,7 +2915,6 @@ static int cam_vfe_bus_ver3_handle_err_irq_bottom_half( evt_info.hw_type = CAM_ISP_HW_TYPE_VFE; err_evt_info.err_type = CAM_VFE_IRQ_STATUS_VIOLATION; evt_info.event_data = (void *)&err_evt_info; - evt_info.out_port_id = out_port_mask; if (!common_data->event_cb) return 0;