aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2019-11-04 23:45:12 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2019-11-04 23:45:12 -0800
commitd821a5702cd4afe8e55ac16a2ac8013d6af52b79 (patch)
tree1db8aa028fa290a4fb114281ea8971bea14fcab4
parent9c48da068b2a2a390f88adf58e412ebf5bb46858 (diff)
parenta1ee1c60ea7120dd866269739d50c0d25eb462cf (diff)
Merge "msm: camera: isp: Disable the PPI hw during PPI overflow case"LA.UM.8.9.r1-05500-SM6xx.0
-rw-r--r--drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_csid_ppi_core.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_csid_ppi_core.c b/drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_csid_ppi_core.c
index 282ef54e3b25..3c52162a7bd5 100644
--- a/drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_csid_ppi_core.c
+++ b/drivers/media/platform/msm/camera/cam_isp/isp_hw_mgr/isp_hw/ife_csid_hw/cam_csid_ppi_core.c
@@ -343,7 +343,6 @@ err:
irqreturn_t cam_csid_ppi_irq(int irq_num, void *data)
{
uint32_t irq_status = 0;
- uint32_t i, ppi_cfg_val = 0;
bool fatal_err_detected = false;
struct cam_csid_ppi_hw *ppi_hw;
@@ -390,11 +389,13 @@ handle_fatal_error:
if (fatal_err_detected) {
CAM_ERR(CAM_ISP, "PPI: %d irq_status:0x%x",
ppi_hw->hw_intf->hw_idx, irq_status);
- /* disable lanes */
- for (i = 0; i < CAM_CSID_PPI_LANES_MAX; i++)
- ppi_cfg_val &= ~PPI_CFG_CPHY_DLX_EN(i);
- cam_io_w_mb(ppi_cfg_val, soc_info->reg_map[0].mem_base +
+ /* disable the interrupt */
+ cam_io_w_mb(0, soc_info->reg_map[0].mem_base +
+ ppi_reg->ppi_irq_mask_addr);
+
+ /* disable lanes */
+ cam_io_w_mb(0, soc_info->reg_map[0].mem_base +
ppi_reg->ppi_module_cfg_addr);
}
ret: