msm: camera: isp: Reset request queue at stop

In few scenarios where the buffers are not
queued from HAL, request queue overflow is seen.
Added changes to reset the queue at destroy and
when the buffer is not available to process.

Change-Id: I7239175dda9cbc26fb65f568cbc5f7183ceaa24d
Signed-off-by: Meera Gande <mgande@codeaurora.org>
This commit is contained in:
Meera Gande 2018-10-10 15:56:54 +05:30 committed by Gerrit - the friendly Code Review server
parent 23d37eecf8
commit c75e2eae7d

View file

@ -172,6 +172,8 @@ static void msm_isp_axi_destroy_stream(
stream_info->bufq_handle[k] = 0;
stream_info->vfe_mask = 0;
stream_info->state = AVAILABLE;
memset(&stream_info->request_queue_cmd,
0, sizeof(stream_info->request_queue_cmd));
}
}
@ -3617,6 +3619,9 @@ static int msm_isp_request_frame(struct vfe_device *vfe_dev,
stream_info->undelivered_request_cnt--;
pr_err_ratelimited("%s:%d fail to cfg HAL buffer\n",
__func__, __LINE__);
queue_req->cmd_used = 0;
list_del(&queue_req->list);
stream_info->request_q_cnt--;
return rc;
}
@ -3655,6 +3660,9 @@ static int msm_isp_request_frame(struct vfe_device *vfe_dev,
flags);
pr_err_ratelimited("%s:%d fail to cfg HAL buffer\n",
__func__, __LINE__);
queue_req->cmd_used = 0;
list_del(&queue_req->list);
stream_info->request_q_cnt--;
return rc;
}
} else {