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

Commit 1677ceb2 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: camera: fix irq error handling"

parents 01b7e13a 8c272e3f
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -520,6 +520,8 @@ void msm_isp_sof_notify(struct vfe_device *vfe_dev,
	sof_event.frame_id = vfe_dev->axi_data.src_info[frame_src].frame_id;
	sof_event.timestamp = ts->event_time;
	sof_event.mono_timestamp = ts->buf_time;

	vfe_dev->error_info.error_count = 0;
	msm_isp_send_event(vfe_dev, ISP_EVENT_SOF + frame_src, &sof_event);
}

+3 −3
Original line number Diff line number Diff line
@@ -1546,8 +1546,8 @@ irqreturn_t msm_isp_process_irq(int irq_num, void *data)
		msm_isp_update_error_info(vfe_dev, error_mask0, error_mask1);

	if ((irq_status0 == 0) && (irq_status1 == 0) &&
		(!((error_mask0 != 0) || (error_mask1 != 0)) &&
		 vfe_dev->error_info.error_count == 1)) {
		(!(((error_mask0 != 0) || (error_mask1 != 0)) &&
		 vfe_dev->error_info.error_count == 1))) {
		ISP_DBG("%s: error_mask0/1 & error_count are set!\n", __func__);
		return IRQ_HANDLED;
	}
@@ -1609,6 +1609,7 @@ void msm_isp_do_tasklet(unsigned long data)
				__func__);
			continue;
		}
		msm_isp_process_error_info(vfe_dev);
		irq_ops->process_camif_irq(vfe_dev,
			irq_status0, irq_status1, &ts);
		irq_ops->process_axi_irq(vfe_dev,
@@ -1617,7 +1618,6 @@ void msm_isp_do_tasklet(unsigned long data)
			irq_status0, irq_status1, &ts);
		irq_ops->process_reg_update(vfe_dev,
			irq_status0, irq_status1, &ts);
		msm_isp_process_error_info(vfe_dev);
	}
}