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 63f5497e63b8..66c5ce11ea3d 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 @@ -674,6 +674,7 @@ void msm_isp_process_reg_upd_epoch_irq(struct vfe_device *vfe_dev, void msm_isp_reset_framedrop(struct vfe_device *vfe_dev, struct msm_vfe_axi_stream *stream_info) { + uint32_t framedrop_period = 0; stream_info->runtime_num_burst_capture = stream_info->num_burst_capture; /** @@ -682,9 +683,15 @@ void msm_isp_reset_framedrop(struct vfe_device *vfe_dev, * by the request frame api */ if (!stream_info->controllable_output) { - stream_info->current_framedrop_period = + framedrop_period = msm_isp_get_framedrop_period( stream_info->frame_skip_pattern); + if (stream_info->frame_skip_pattern == SKIP_ALL) + stream_info->current_framedrop_period = + MSM_VFE_STREAM_STOP_PERIOD; + else + stream_info->current_framedrop_period = + framedrop_period; } msm_isp_cfg_framedrop_reg(stream_info);