diff options
author | Andres Salomon <dilinger@debian.org> | 2007-10-18 06:04:50 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-18 17:37:19 -0400 |
commit | 8f4ce8c32f2dc2bc2411cafe39976fc5c0adfabf (patch) | |
tree | 04f9009812e13f97b3eaae6385a0bb49cc2312b1 /include | |
parent | 438e2ce68dfd4af4cfcec2f873564fb921db4bb5 (diff) |
serial: turn serial console suspend a boot rather than compile time option
Currently, there's a CONFIG_DISABLE_CONSOLE_SUSPEND that allows one to stop
the serial console from being suspended when the rest of the machine goes
to sleep. This is incredibly useful for debugging power management-related
things; however, having it as a compile-time option has proved to be
incredibly inconvenient for us (OLPC). There are plenty of times that we
want serial console to not suspend, but for the most part we'd like serial
console to be suspended.
This drops CONFIG_DISABLE_CONSOLE_SUSPEND, and replaces it with a kernel
boot parameter (no_console_suspend). By default, the serial console will
be suspended along with the rest of the system; by passing
'no_console_suspend' to the kernel during boot, serial console will remain
alive during suspend.
For now, this is pretty serial console specific; further fixes could be
applied to make this work for things like netconsole.
Signed-off-by: Andres Salomon <dilinger@debian.org>
Acked-by: "Rafael J. Wysocki" <rjw@sisk.pl>
Acked-by: Pavel Machek <pavel@ucw.cz>
Cc: Nigel Cunningham <nigel@suspend2.net>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/console.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/include/linux/console.h b/include/linux/console.h index 0a4542ddb73d..a5f88a6a259d 100644 --- a/include/linux/console.h +++ b/include/linux/console.h | |||
@@ -122,14 +122,11 @@ extern void console_stop(struct console *); | |||
122 | extern void console_start(struct console *); | 122 | extern void console_start(struct console *); |
123 | extern int is_console_locked(void); | 123 | extern int is_console_locked(void); |
124 | 124 | ||
125 | #ifndef CONFIG_DISABLE_CONSOLE_SUSPEND | 125 | extern int console_suspend_enabled; |
126 | |||
126 | /* Suspend and resume console messages over PM events */ | 127 | /* Suspend and resume console messages over PM events */ |
127 | extern void suspend_console(void); | 128 | extern void suspend_console(void); |
128 | extern void resume_console(void); | 129 | extern void resume_console(void); |
129 | #else | ||
130 | static inline void suspend_console(void) {} | ||
131 | static inline void resume_console(void) {} | ||
132 | #endif /* CONFIG_DISABLE_CONSOLE_SUSPEND */ | ||
133 | 130 | ||
134 | int mda_console_init(void); | 131 | int mda_console_init(void); |
135 | void prom_con_init(void); | 132 | void prom_con_init(void); |