diff options
author | Rafael J. Wysocki <rjw@sisk.pl> | 2006-09-26 02:32:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-26 11:49:03 -0400 |
commit | e1da95ae38afdcda83328300c4aed755d9fc01a6 (patch) | |
tree | e4d0c54a44df19235b656eae92ab3da2404024ba /drivers/serial | |
parent | c8eb8b4025175f967af0ba8e933f23aa9954dc35 (diff) |
[PATCH] suspend: make it possible to disable serial console suspend
Hack uart_suspend_port() and uart_resume_port() so that serial console
ports are not suspended if CONFIG_DISABLE_CONSOLE_SUSPEND is set.
This makes it possible to debug the suspend and resume routines of all
device drivers as well as the lowest-level swsusp code with the help of the
serial console.
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/serial')
-rw-r--r-- | drivers/serial/serial_core.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c index 372e47f7d596..5f7ba1adb309 100644 --- a/drivers/serial/serial_core.c +++ b/drivers/serial/serial_core.c | |||
@@ -1929,6 +1929,13 @@ int uart_suspend_port(struct uart_driver *drv, struct uart_port *port) | |||
1929 | 1929 | ||
1930 | mutex_lock(&state->mutex); | 1930 | mutex_lock(&state->mutex); |
1931 | 1931 | ||
1932 | #ifdef CONFIG_DISABLE_CONSOLE_SUSPEND | ||
1933 | if (uart_console(port)) { | ||
1934 | mutex_unlock(&state->mutex); | ||
1935 | return 0; | ||
1936 | } | ||
1937 | #endif | ||
1938 | |||
1932 | if (state->info && state->info->flags & UIF_INITIALIZED) { | 1939 | if (state->info && state->info->flags & UIF_INITIALIZED) { |
1933 | const struct uart_ops *ops = port->ops; | 1940 | const struct uart_ops *ops = port->ops; |
1934 | 1941 | ||
@@ -1967,6 +1974,13 @@ int uart_resume_port(struct uart_driver *drv, struct uart_port *port) | |||
1967 | 1974 | ||
1968 | mutex_lock(&state->mutex); | 1975 | mutex_lock(&state->mutex); |
1969 | 1976 | ||
1977 | #ifdef CONFIG_DISABLE_CONSOLE_SUSPEND | ||
1978 | if (uart_console(port)) { | ||
1979 | mutex_unlock(&state->mutex); | ||
1980 | return 0; | ||
1981 | } | ||
1982 | #endif | ||
1983 | |||
1970 | uart_change_pm(state, 0); | 1984 | uart_change_pm(state, 0); |
1971 | 1985 | ||
1972 | /* | 1986 | /* |