diff --git a/drivers/video/msm/mdp4_overlay_writeback.c b/drivers/video/msm/mdp4_overlay_writeback.c index d2d8a764988..9ce94e2de6f 100644 --- a/drivers/video/msm/mdp4_overlay_writeback.c +++ b/drivers/video/msm/mdp4_overlay_writeback.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2014, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2015, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -93,6 +93,7 @@ static void mdp4_wfd_queue_wakeup(struct msm_fb_data_type *mfd, struct msmfb_writeback_data_list *node); static int mdp4_wfd_dequeue_update(struct msm_fb_data_type *mfd, struct msmfb_writeback_data_list **wfdnode); +static int is_wb_operation_allowed(struct msm_fb_data_type *mfd); int mdp4_overlay_writeback_on(struct platform_device *pdev) { @@ -368,6 +369,12 @@ int mdp4_wfd_pipe_commit(struct msm_fb_data_type *mfd, struct msmfb_writeback_data_list *node = NULL; int rc = 0; + rc = is_wb_operation_allowed(mfd); + if (rc) { + pr_debug("%s: Unable to commit, error = %d", __func__, rc); + return rc; + } + vctrl = &vsync_ctrl_db[cndx]; mutex_lock(&vctrl->update_lock);