From: Ben Dooks Call the fb_set_suspend() over suspend and resume. Signed-off-by: Antonino Daplas Signed-off-by: Andrew Morton --- drivers/video/sm501fb.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff -puN drivers/video/sm501fb.c~sm501fb-call-fb-suspend-function-during-suspend-and-resume drivers/video/sm501fb.c --- a/drivers/video/sm501fb.c~sm501fb-call-fb-suspend-function-during-suspend-and-resume +++ a/drivers/video/sm501fb.c @@ -28,6 +28,7 @@ #include #include #include +#include #include #include @@ -1697,6 +1698,10 @@ static int sm501fb_suspend_fb(struct sm5 /* 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 sm5 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); } _