[23/78] serial: also set the uartclk value in resume after goes to highspeed

From: Greg KH
Date: Mon Mar 21 2011 - 19:31:06 EST

2.6.38-stable review patch. If anyone has any objections, please let us know.


From: Yin Kangkai <kangkai.yin@xxxxxxxxxxxxxxx>

commit 95926d2db6256e08d06b753752a0d903a0580acc upstream.

For any reason if the NS16550A was not work in high speed mode (e.g. we hold
NS16550A from going to high speed mode in autoconfig_16550a()), now we are
resume from suspend, we should also set the uartclk to the correct
value. Otherwise it is still the old 1843200 and that will bring issues.

CC: Greg Kroah-Hartman <greg@xxxxxxxxx>
CC: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
CC: linux-kernel@xxxxxxxxxxxxxxx
Signed-off-by: Yin Kangkai <kangkai.yin@xxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>

drivers/tty/serial/8250.c | 1 +
1 file changed, 1 insertion(+)

--- a/drivers/tty/serial/8250.c
+++ b/drivers/tty/serial/8250.c
@@ -3036,6 +3036,7 @@ void serial8250_resume_port(int line)
serial_outp(up, 0x04, tmp);

serial_outp(up, UART_LCR, 0);
+ up->port.uartclk = 921600*16;
uart_resume_port(&serial8250_reg, &up->port);

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/