serial: pl011: Drop duplicate loop counter
authorLukas Wunner <lukas@wunner.de>
Fri, 24 Nov 2017 23:40:49 +0000 (00:40 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 28 Nov 2017 14:32:33 +0000 (15:32 +0100)
pl011_fifo_to_tty() has two counters (max_count and fifotaken) for the
same loop.  One counter should suffice.  This saves one subtraction per
character read from the RX FIFO.

Cc: Mathias Duckeck <m.duckeck@kunbus.de>
Cc: Phil Elwell <phil@raspberrypi.org>
Cc: Stefan Wahren <stefan.wahren@i2se.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Russell King <linux@armlinux.org.uk>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/amba-pl011.c

index 04af8de8617e3b05ef734a9bdc7ef0297faf3b2e..7c8f9804f585d47bb9e542b2dcd063da34c96ad3 100644 (file)
@@ -314,10 +314,9 @@ static void pl011_write(unsigned int val, const struct uart_amba_port *uap,
 static int pl011_fifo_to_tty(struct uart_amba_port *uap)
 {
        u16 status;
-       unsigned int ch, flag, max_count = 256;
-       int fifotaken = 0;
+       unsigned int ch, flag, fifotaken;
 
-       while (max_count--) {
+       for (fifotaken = 0; fifotaken != 256; fifotaken++) {
                status = pl011_read(uap, REG_FR);
                if (status & UART01x_FR_RXFE)
                        break;
@@ -326,7 +325,6 @@ static int pl011_fifo_to_tty(struct uart_amba_port *uap)
                ch = pl011_read(uap, REG_DR) | UART_DUMMY_DR_RX;
                flag = TTY_NORMAL;
                uap->port.icount.rx++;
-               fifotaken++;
 
                if (unlikely(ch & UART_DR_ERROR)) {
                        if (ch & UART011_DR_BE) {