summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShubhraprakash Das <sadas@codeaurora.org>2016-11-14 19:38:37 -0800
committerShubhraprakash Das <sadas@codeaurora.org>2016-12-01 23:53:11 -0800
commit1e796900d30798d99d0ae4adee617ce0bf4ce3ce (patch)
treeb85b4a62466c9e2c51f72ec2049ae030ed8c7fad
parent2f6c60ca4fac5653141f83195a6381be148343cd (diff)
msm: camera: isp: Check reg update miss only for PIX stream
Reg updates can only miss on PIX stream since reg updates are forced for RDI streams. This also prevents the error check from being called multiple times for PIX streams. CRs-Fixed: 1089937 Change-Id: Ibe0ea7efabc5a8452f05fdc2ab8b3ec7931a66e7 Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
-rw-r--r--drivers/media/platform/msm/camera_v2/isp/msm_isp_axi_util.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/drivers/media/platform/msm/camera_v2/isp/msm_isp_axi_util.c b/drivers/media/platform/msm/camera_v2/isp/msm_isp_axi_util.c
index 71f5962bba8d..1bf628de4df0 100644
--- a/drivers/media/platform/msm/camera_v2/isp/msm_isp_axi_util.c
+++ b/drivers/media/platform/msm/camera_v2/isp/msm_isp_axi_util.c
@@ -700,7 +700,7 @@ void msm_isp_check_for_output_error(struct vfe_device *vfe_dev,
sof_info->regs_not_updated =
vfe_dev->reg_update_requested;
}
- for (i = 0; i < VFE_AXI_SRC_MAX; i++) {
+ for (i = 0; i < RDI_INTF_0; i++) {
stream_info = msm_isp_get_stream_common_data(vfe_dev,
i);
stream_idx = HANDLE_TO_IDX(stream_info->stream_handle[0]);
@@ -980,16 +980,12 @@ void msm_isp_notify(struct vfe_device *vfe_dev, uint32_t event_type,
event_data.u.sof_info.ms_delta_info.
num_delta_info = 1;
}
- spin_unlock_irqrestore(&vfe_dev->common_data->
- common_dev_data_lock, flags);
- } else {
- spin_unlock_irqrestore(&vfe_dev->common_data->
- common_dev_data_lock, flags);
- if (frame_src <= VFE_RAW_2) {
- msm_isp_check_for_output_error(vfe_dev, ts,
- &event_data.u.sof_info);
- }
}
+ spin_unlock_irqrestore(&vfe_dev->common_data->
+ common_dev_data_lock, flags);
+ if (frame_src == VFE_PIX_0)
+ msm_isp_check_for_output_error(vfe_dev, ts,
+ &event_data.u.sof_info);
break;
default: