Merge remote-tracking branch 'moduleh/module.h-split'
[linux-2.6/next.git] / kernel / power / console.c
blob218e5af9015637af8808caad1aaf05c476428371
1 /*
2 * drivers/power/process.c - Functions for saving/restoring console.
4 * Originally from swsusp.
5 */
7 #include <linux/vt_kern.h>
8 #include <linux/kbd_kern.h>
9 #include <linux/vt.h>
10 #include <linux/module.h>
11 #include "power.h"
13 #if defined(CONFIG_VT) && defined(CONFIG_VT_CONSOLE)
14 #define SUSPEND_CONSOLE (MAX_NR_CONSOLES-1)
16 static int orig_fgconsole, orig_kmsg;
18 int pm_prepare_console(void)
20 orig_fgconsole = vt_move_to_console(SUSPEND_CONSOLE, 1);
21 if (orig_fgconsole < 0)
22 return 1;
24 orig_kmsg = vt_kmsg_redirect(SUSPEND_CONSOLE);
25 return 0;
28 void pm_restore_console(void)
30 if (orig_fgconsole >= 0) {
31 vt_move_to_console(orig_fgconsole, 0);
32 vt_kmsg_redirect(orig_kmsg);
35 #endif