From: "Rafael J. Wysocki" 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 Signed-off-by: Andrew Morton --- drivers/serial/serial_core.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+) diff -puN drivers/serial/serial_core.c~make-it-possible-to-disable-serial-console-suspend drivers/serial/serial_core.c --- a/drivers/serial/serial_core.c~make-it-possible-to-disable-serial-console-suspend +++ a/drivers/serial/serial_core.c @@ -1930,6 +1930,13 @@ int uart_suspend_port(struct uart_driver mutex_lock(&state->mutex); +#ifdef CONFIG_DISABLE_CONSOLE_SUSPEND + if (uart_console(port)) { + mutex_unlock(&state->mutex); + return 0; + } +#endif + if (state->info && state->info->flags & UIF_INITIALIZED) { const struct uart_ops *ops = port->ops; @@ -1968,6 +1975,13 @@ int uart_resume_port(struct uart_driver mutex_lock(&state->mutex); +#ifdef CONFIG_DISABLE_CONSOLE_SUSPEND + if (uart_console(port)) { + mutex_unlock(&state->mutex); + return 0; + } +#endif + uart_change_pm(state, 0); /* _