pch_uart: fix uart clock setting issue
authorTomoya MORINAGA <tomoya-linux@dsn.okisemi.com>
Wed, 23 Feb 2011 01:03:16 +0000 (10:03 +0900)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 23 Feb 2011 01:22:03 +0000 (17:22 -0800)
Currently, uart clock is not set correctly.
This patch fixes the issue.

Signed-off-by: Tomoya MORINAGA <tomoya-linux@dsn.okisemi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

drivers/tty/serial/pch_uart.c

index 6885535..1898861 100644 (file)
@@ -1089,7 +1089,12 @@ static int pch_uart_startup(struct uart_port *port)
 
        priv = container_of(port, struct eg20t_port, port);
        priv->tx_empty = 1;
-       port->uartclk = priv->base_baud;
+
+       if (port->uartclk)
+               priv->base_baud = port->uartclk;
+       else
+               port->uartclk = priv->base_baud;
+
        pch_uart_hal_disable_interrupt(priv, PCH_UART_HAL_ALL_INT);
        ret = pch_uart_hal_set_line(priv, default_baud,
                              PCH_UART_HAL_PARITY_NONE, PCH_UART_HAL_8BIT,