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

Commit 1dadc267 authored by Ramesh V's avatar Ramesh V
Browse files

msm: camera_v2: Add frame drop notify



In dual vfe mode set frame drop notify mask to
vfe0 and vfe1. so that downstream camera module
will not miss frame drop notify.

Change-Id: Ida61e0041bef245dcc2c6c6f3bbbfdf982d4acbc
Signed-off-by: default avatarRamesh V <ramev@codeaurora.org>
parent aee68569
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@

#define HANDLE_TO_IDX(handle) (handle & 0xFF)
#define ISP_SOF_DEBUG_COUNT 0
#define OTHER_VFE(vfe_id) (vfe_id == ISP_VFE0 ? ISP_VFE1 : ISP_VFE0)

#ifdef CONFIG_MSM_AVTIMER
static struct avtimer_fptr_t avtimer_func;
@@ -4392,6 +4393,8 @@ void msm_isp_process_axi_irq_stream(struct vfe_device *vfe_dev,
	struct timeval *time_stamp;
	uint32_t frame_id, buf_index = -1;
	int vfe_idx;
	struct vfe_device *temp_dev;
	int other_vfe_id;

	if (!ts) {
		pr_err("%s: Error! Invalid argument\n", __func__);
@@ -4519,6 +4522,17 @@ void msm_isp_process_axi_irq_stream(struct vfe_device *vfe_dev,
				stream_info->bufq_handle[
				VFE_BUF_QUEUE_DEFAULT] & 0xFF]++;
			vfe_dev->error_info.framedrop_flag = 1;
			if (vfe_dev->is_split) {
				other_vfe_id = OTHER_VFE(vfe_dev->pdev->id);
				temp_dev =
				vfe_dev->common_data->dual_vfe_res->vfe_dev[
					other_vfe_id];
				temp_dev->error_info.stream_framedrop_count[
				stream_info->bufq_handle[
				VFE_BUF_QUEUE_DEFAULT] & 0xFF]++;
				temp_dev->error_info.framedrop_flag = 1;
			}

		}
		spin_unlock_irqrestore(&stream_info->lock, flags);
		return;