aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/video/msm/mdss/mdss_fb.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/video/msm/mdss/mdss_fb.c b/drivers/video/msm/mdss/mdss_fb.c
index 1e38d2d044d..1b163df3b91 100644
--- a/drivers/video/msm/mdss/mdss_fb.c
+++ b/drivers/video/msm/mdss/mdss_fb.c
@@ -482,6 +482,7 @@ static int mdss_fb_lpm_enable(struct msm_fb_data_type *mfd, int mode)
mutex_lock(&mfd->bl_lock);
bl_lvl = mfd->bl_level;
mdss_fb_set_backlight(mfd, 0);
+ mutex_unlock(&mfd->bl_lock);
lock_fb_info(mfd->fbi);
ret = mdss_fb_blank_sub(FB_BLANK_POWERDOWN, mfd->fbi,
@@ -489,7 +490,6 @@ static int mdss_fb_lpm_enable(struct msm_fb_data_type *mfd, int mode)
if (ret) {
pr_err("can't turn off display!\n");
unlock_fb_info(mfd->fbi);
- mutex_unlock(&mfd->bl_lock);
return ret;
}
@@ -505,11 +505,11 @@ static int mdss_fb_lpm_enable(struct msm_fb_data_type *mfd, int mode)
if (ret) {
pr_err("can't turn on display!\n");
unlock_fb_info(mfd->fbi);
- mutex_unlock(&mfd->bl_lock);
return ret;
}
unlock_fb_info(mfd->fbi);
+ mutex_lock(&mfd->bl_lock);
mfd->bl_updated = true;
mdss_fb_set_backlight(mfd, bl_lvl);
mutex_unlock(&mfd->bl_lock);