summaryrefslogtreecommitdiffstats
path: root/drivers/tty
diff options
context:
space:
mode:
authorSudhir Sreedharan <ssreedharan@mvista.com>2014-09-22 08:30:22 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-29 03:49:48 +0200
commita86713b1536c818972675e6dd8c6e738f0379f1d (patch)
treee1cbfdd7711b08f77542b2133fdc45400428c775 /drivers/tty
parentserial: asc: Conditionally use readl_relaxed (COMPILE_TEST) (diff)
downloadlinux-a86713b1536c818972675e6dd8c6e738f0379f1d.tar.xz
linux-a86713b1536c818972675e6dd8c6e738f0379f1d.zip
serial/core: Initialize the console pm state
For console devices having UART_CAP_SLEEP capability, the uart_pm_state has to be initialized to UART_PM_STATE_ON. Otherwise the LCR regiser values are reinitialized when uart_change_pm is called from uart_configure_port. Signed-off-by: Sudhir Sreedharan <ssreedharan@mvista.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty')
-rw-r--r--drivers/tty/serial/serial_core.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c
index df3a8c74358e..e7d9d65095da 100644
--- a/drivers/tty/serial/serial_core.c
+++ b/drivers/tty/serial/serial_core.c
@@ -2606,6 +2606,9 @@ int uart_add_one_port(struct uart_driver *drv, struct uart_port *uport)
if (uport->cons && uport->dev)
of_console_check(uport->dev->of_node, uport->cons->name, uport->line);
+ if (uart_console(uport))
+ state->pm_state = UART_PM_STATE_ON;
+
uart_configure_port(drv, state, uport);
num_groups = 2;