X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=drivers%2Fserial%2F8250.c;h=7aca22c9976d0f37a9d8f3e0b0cf6a41d6a3d787;hb=b142eb6594003d3f82fd552a9b2ad73d774465d2;hp=179c1f065e60a5662498c006f28c48b83828baa1;hpb=89a2fa5f2139be35e214bcf86a8291d6a1da75f2;p=powerpc.git diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c index 179c1f065e..7aca22c997 100644 --- a/drivers/serial/8250.c +++ b/drivers/serial/8250.c @@ -2198,7 +2198,7 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count) touch_nmi_watchdog(); /* - * First save the UER then disable the interrupts + * First save the IER then disable the interrupts */ ier = serial_in(up, UART_IER); @@ -2229,6 +2229,7 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count) * and restore the IER */ wait_for_xmitr(up, BOTH_EMPTY); + up->ier |= UART_IER_THRI; serial_out(up, UART_IER, ier | UART_IER_THRI); } @@ -2325,6 +2326,12 @@ static struct uart_driver serial8250_reg = { .cons = SERIAL8250_CONSOLE, }; +/* + * early_serial_setup - early registration for 8250 ports + * + * Setup an 8250 port structure prior to console initialisation. Use + * after console initialisation will cause undefined behaviour. + */ int __init early_serial_setup(struct uart_port *port) { if (port->line >= ARRAY_SIZE(serial8250_ports))