diff options
-rw-r--r-- | drivers/video/fbmem.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c index b06647517c0e6a..7f59eb03bd23d1 100644 --- a/drivers/video/fbmem.c +++ b/drivers/video/fbmem.c @@ -1008,12 +1008,12 @@ fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var) int fb_blank(struct fb_info *info, int blank) { - int ret = -EINVAL; + int ret = 0; if (blank > FB_BLANK_POWERDOWN) blank = FB_BLANK_POWERDOWN; - if (info->fbops->fb_blank) + if (info->fbops->fb_blank && blank == FB_BLANK_UNBLANK) ret = info->fbops->fb_blank(blank, info); if (!ret) { @@ -1024,6 +1024,10 @@ fb_blank(struct fb_info *info, int blank) fb_notifier_call_chain(FB_EVENT_BLANK, &event); } + if (info->fbops->fb_blank && blank != FB_BLANK_UNBLANK) + ret = info->fbops->fb_blank(blank, info); + + return ret; } |