From d3650f098c312203c85f3be368e35d2f0736a3c3 Mon Sep 17 00:00:00 2001 From: Jigar Agrawal Date: Thu, 29 Oct 2020 17:04:43 -0700 Subject: [PATCH] msm: camera: isp: Fix the callback arguments in IFE Fix the callback arguments in IFE to avoid the CFI check failure. A few callbacks invokes do not typecast for the last argument of the event callback. Since callbacks are indirect function call, CFI check for this will fail. CRs-Fixed: 2807933 Change-Id: I4e72cf07de701bbfd8f7d7829207256918beeb4c Signed-off-by: Jigar Agrawal --- drivers/cam_isp/isp_hw_mgr/cam_ife_hw_mgr.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) 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 40f1d24701e6..0804b52c404a 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 @@ -7718,7 +7718,7 @@ static int cam_ife_hw_mgr_handle_hw_rup( if (atomic_read(&ife_hw_mgr_ctx->overflow_pending)) break; ife_hwr_irq_rup_cb(ife_hw_mgr_ctx->common.cb_priv, - CAM_ISP_HW_EVENT_REG_UPDATE, &rup_event_data); + CAM_ISP_HW_EVENT_REG_UPDATE, (void *)&rup_event_data); break; case CAM_ISP_HW_VFE_IN_RDI0: @@ -7730,7 +7730,7 @@ static int cam_ife_hw_mgr_handle_hw_rup( if (atomic_read(&ife_hw_mgr_ctx->overflow_pending)) break; ife_hwr_irq_rup_cb(ife_hw_mgr_ctx->common.cb_priv, - CAM_ISP_HW_EVENT_REG_UPDATE, &rup_event_data); + CAM_ISP_HW_EVENT_REG_UPDATE, (void *)&rup_event_data); break; case CAM_ISP_HW_VFE_IN_PDLIB: @@ -7768,7 +7768,7 @@ static int cam_ife_hw_mgr_handle_hw_epoch( epoch_done_event_data.frame_id_meta = event_info->reg_val; ife_hw_irq_epoch_cb(ife_hw_mgr_ctx->common.cb_priv, - CAM_ISP_HW_EVENT_EPOCH, &epoch_done_event_data); + CAM_ISP_HW_EVENT_EPOCH, (void *)&epoch_done_event_data); break; @@ -7836,7 +7836,7 @@ static int cam_ife_hw_mgr_handle_hw_sof( break; ife_hw_irq_sof_cb(ife_hw_mgr_ctx->common.cb_priv, - CAM_ISP_HW_EVENT_SOF, &sof_done_event_data); + CAM_ISP_HW_EVENT_SOF, (void *)&sof_done_event_data); break; @@ -7852,7 +7852,7 @@ static int cam_ife_hw_mgr_handle_hw_sof( if (atomic_read(&ife_hw_mgr_ctx->overflow_pending)) break; ife_hw_irq_sof_cb(ife_hw_mgr_ctx->common.cb_priv, - CAM_ISP_HW_EVENT_SOF, &sof_done_event_data); + CAM_ISP_HW_EVENT_SOF, (void *)&sof_done_event_data); break; case CAM_ISP_HW_VFE_IN_PDLIB: @@ -7889,7 +7889,7 @@ static int cam_ife_hw_mgr_handle_hw_eof( break; ife_hw_irq_eof_cb(ife_hw_mgr_ctx->common.cb_priv, - CAM_ISP_HW_EVENT_EOF, &eof_done_event_data); + CAM_ISP_HW_EVENT_EOF, (void *)&eof_done_event_data); break; @@ -7936,7 +7936,7 @@ static int cam_ife_hw_mgr_handle_hw_buf_done( if (buf_done_event_data.num_handles > 0 && ife_hwr_irq_wm_done_cb) { CAM_DBG(CAM_ISP, "Notify ISP context"); ife_hwr_irq_wm_done_cb(ife_hw_mgr_ctx->common.cb_priv, - CAM_ISP_HW_EVENT_DONE, &buf_done_event_data); + CAM_ISP_HW_EVENT_DONE, (void *)&buf_done_event_data); } CAM_DBG(CAM_ISP,