Merge "msm: mdss: call wait4comp before wb kickoff"

This commit is contained in:
Linux Build Service Account
2014-10-29 22:35:38 -07:00
committed by Gerrit - the friendly Code Review server
+7
View File
@@ -547,6 +547,7 @@ static int mdss_mdp_wb_dequeue(struct msm_fb_data_type *mfd,
{
struct mdss_mdp_wb *wb = mfd_to_wb(mfd);
struct mdss_mdp_wb_data *node = NULL;
struct mdss_mdp_ctl *ctl = mfd_to_ctl(mfd);
int ret;
if (!wb) {
@@ -554,6 +555,11 @@ static int mdss_mdp_wb_dequeue(struct msm_fb_data_type *mfd,
return -ENODEV;
}
if (!ctl) {
pr_err("unable to dequeue, ctl is not initialized\n");
return -ENODEV;
}
ret = wait_event_interruptible(wb->wait_q, is_buffer_ready(wb));
if (ret) {
pr_err("failed to get dequeued buffer\n");
@@ -563,6 +569,7 @@ static int mdss_mdp_wb_dequeue(struct msm_fb_data_type *mfd,
mutex_lock(&wb->lock);
if (wb->state == WB_STOPING) {
pr_debug("wfd stopped\n");
mdss_mdp_display_wait4comp(ctl);
wb->state = WB_STOP;
ret = -ENOBUFS;
} else if (!list_empty(&wb->busy_queue)) {