]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
serial: 8250_early: do not save and restore IER in write callback
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Fri, 30 Oct 2015 02:39:03 +0000 (11:39 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 14 Dec 2015 03:59:48 +0000 (19:59 -0800)
The IER has already been masked in early_serial8250_setup(), there is
no reason to save and restore it every time early_serial8250_write()
is called.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_early.c

index ceb85792a5cf26e8865b317d82426ded50bf37b8..5afc4d440304428d9c0d26ffa7b2dbb12e92a9d8 100644 (file)
@@ -96,20 +96,11 @@ static void __init early_serial8250_write(struct console *console,
 {
        struct earlycon_device *device = console->data;
        struct uart_port *port = &device->port;
-       unsigned int ier;
-
-       /* Save the IER and disable interrupts preserving the UUE bit */
-       ier = serial8250_early_in(port, UART_IER);
-       if (ier)
-               serial8250_early_out(port, UART_IER, ier & UART_IER_UUE);
 
        uart_console_write(port, s, count, serial_putc);
 
-       /* Wait for transmitter to become empty and restore the IER */
+       /* Wait for transmitter to become empty */
        wait_for_xmitr(port);
-
-       if (ier)
-               serial8250_early_out(port, UART_IER, ier);
 }
 
 static void __init init_port(struct earlycon_device *device)