* switch "do { A; } while (1)" to "while (1) { A; }"
* switch "if (A) B; else break;" to "if (!A) break; B;"
* remove unused assignment from p->serial_in() to status

Objdump -d shows no difference.

Signed-off-by: Jiri Slaby <jsl...@suse.cz>
Cc: Thierry Reding <thierry.red...@gmail.com>
Cc: Jonathan Hunter <jonath...@nvidia.com>
---
 drivers/tty/serial/8250/8250_tegra.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/tty/serial/8250/8250_tegra.c 
b/drivers/tty/serial/8250/8250_tegra.c
index c0ffad1572c6..e13ae18b0713 100644
--- a/drivers/tty/serial/8250/8250_tegra.c
+++ b/drivers/tty/serial/8250/8250_tegra.c
@@ -26,16 +26,17 @@ static void tegra_uart_handle_break(struct uart_port *p)
 {
        unsigned int status, tmout = 10000;
 
-       do {
+       while (1) {
                status = p->serial_in(p, UART_LSR);
-               if (status & (UART_LSR_FIFOE | UART_LSR_BRK_ERROR_BITS))
-                       status = p->serial_in(p, UART_RX);
-               else
+               if (!(status & (UART_LSR_FIFOE | UART_LSR_BRK_ERROR_BITS)))
                        break;
+
+               p->serial_in(p, UART_RX);
+
                if (--tmout == 0)
                        break;
                udelay(1);
-       } while (1);
+       }
 }
 
 static int tegra_uart_probe(struct platform_device *pdev)
-- 
2.30.0

Reply via email to