[SERIAL] OMAP1510 serial fix for 115200 baud
The patch below is necessary for 115200 baud on an OMAP1510 internal UART. It's been in the linux-omap tree for some time and with it applied to a vanilla Linus git tree the serial console on the Amstrad Delta (which is OMAP1510 based and whose initial bootloader runs at 115200) works fine (it doesn't without it). Signed-off-by: Jonathan McDowell <noodles@earth.li> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
80e3c2b659
commit
255341c6fd
|
@ -1896,6 +1896,17 @@ serial8250_set_termios(struct uart_port *port, struct termios *termios,
|
|||
serial_outp(up, UART_EFR, efr);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_ARCH_OMAP15XX
|
||||
/* Workaround to enable 115200 baud on OMAP1510 internal ports */
|
||||
if (cpu_is_omap1510() && is_omap_port((unsigned int)up->port.membase)) {
|
||||
if (baud == 115200) {
|
||||
quot = 1;
|
||||
serial_out(up, UART_OMAP_OSC_12M_SEL, 1);
|
||||
} else
|
||||
serial_out(up, UART_OMAP_OSC_12M_SEL, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (up->capabilities & UART_NATSEMI) {
|
||||
/* Switch to bank 2 not bank 1, to avoid resetting EXCR2 */
|
||||
serial_outp(up, UART_LCR, 0xe0);
|
||||
|
|
Loading…
Reference in New Issue