summaryrefslogtreecommitdiffstats
path: root/drivers/video/sm501fb.c
diff options
context:
space:
mode:
authorBen Dooks <ben-linux@fluff.org>2007-10-16 10:28:38 +0200
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-16 18:43:14 +0200
commitf22e521f2992031fdedb661f2a647cafd2e45fa1 (patch)
tree6af6f07174460932adab8368c92a7cbd4911b7bf /drivers/video/sm501fb.c
parentsm501fb: update suspend and resume code (diff)
downloadlinux-f22e521f2992031fdedb661f2a647cafd2e45fa1.tar.xz
linux-f22e521f2992031fdedb661f2a647cafd2e45fa1.zip
sm501fb: Call fb suspend function during suspend and resume
Call the fb_set_suspend() over suspend and resume. Signed-off-by: Antonino Daplas <adaplas@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/video/sm501fb.c')
-rw-r--r--drivers/video/sm501fb.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/video/sm501fb.c b/drivers/video/sm501fb.c
index fc0cdc830360..d97edd7a6e41 100644
--- a/drivers/video/sm501fb.c
+++ b/drivers/video/sm501fb.c
@@ -28,6 +28,7 @@
#include <linux/wait.h>
#include <linux/platform_device.h>
#include <linux/clk.h>
+#include <linux/console.h>
#include <asm/io.h>
#include <asm/uaccess.h>
@@ -1697,6 +1698,10 @@ static int sm501fb_suspend_fb(struct sm501fb_info *info,
/* blank the relevant interface to ensure unit power minimised */
(par->ops.fb_blank)(FB_BLANK_POWERDOWN, fbi);
+ acquire_console_sem();
+ fb_set_suspend(fbi, 1);
+ release_console_sem();
+
return 0;
err_nocursor:
@@ -1732,6 +1737,10 @@ static void sm501fb_resume_fb(struct sm501fb_info *info,
memcpy_toio(par->cursor.k_addr, par->store_cursor,
par->cursor.size);
+ acquire_console_sem();
+ fb_set_suspend(fbi, 0);
+ release_console_sem();
+
vfree(par->store_fb);
vfree(par->store_cursor);
}