1/* 2 * Functions for saving/restoring console. 3 * 4 * Originally from swsusp. 5 */ 6 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" 12 13#define SUSPEND_CONSOLE (MAX_NR_CONSOLES-1) 14 15static int orig_fgconsole, orig_kmsg; 16 17int pm_prepare_console(void) 18{ 19 orig_fgconsole = vt_move_to_console(SUSPEND_CONSOLE, 1); 20 if (orig_fgconsole < 0) 21 return 1; 22 23 orig_kmsg = vt_kmsg_redirect(SUSPEND_CONSOLE); 24 return 0; 25} 26 27void pm_restore_console(void) 28{ 29 if (orig_fgconsole >= 0) { 30 vt_move_to_console(orig_fgconsole, 0); 31 vt_kmsg_redirect(orig_kmsg); 32 } 33} 34