Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b858951f authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: camera: Avoid SMMU fault with two camera instances"

parents 544ab406 e114382f
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -288,9 +288,10 @@ static int msm_csid_reset(struct csid_device *csid_dev)
	} else {
		irq_bitshift =
		csid_dev->ctrl_reg->csid_reg.csid_rst_done_irq_bitshift;
		msm_camera_io_w(csid_dev->ctrl_reg->csid_reg.csid_rst_stb_all,
			csid_dev->base +
			csid_dev->ctrl_reg->csid_reg.csid_rst_cmd_addr);
		msm_camera_vio_w(csid_dev->ctrl_reg->csid_reg.csid_rst_stb_all,
			csid_dev->base,
			csid_dev->ctrl_reg->csid_reg.csid_rst_cmd_addr,
			csid_dev->pdev->id);
		rc = wait_for_completion_timeout(&csid_dev->reset_complete,
			CSID_TIMEOUT);
	}
@@ -298,8 +299,9 @@ static int msm_csid_reset(struct csid_device *csid_dev)
		pr_err("wait_for_completion in %s fail rc = %d\n",
			__func__, rc);
	} else if (rc == 0) {
		irq = msm_camera_io_r(csid_dev->base +
			csid_dev->ctrl_reg->csid_reg.csid_irq_status_addr);
		irq = msm_camera_vio_r(csid_dev->base,
			csid_dev->ctrl_reg->csid_reg.csid_irq_status_addr,
			csid_dev->pdev->id);
		pr_err_ratelimited("%s CSID%d_IRQ_STATUS_ADDR = 0x%x\n",
			__func__, csid_dev->pdev->id, irq);
		if (irq & (0x1 << irq_bitshift)) {