[PATCH v6 09/14] serial: liteuart: clean up rx loop variables

From: Gabriel Somlo
Date: Wed Nov 23 2022 - 08:26:00 EST


The `status` variable will always be `1` when passed into the call
to `uart_insert_char()`, so it can be eliminated altogether.

Use `u8` as the type for `ch`, as it matches the return type of
the `litex_read8()` call which produces its value.

Signed-off-by: Gabriel Somlo <gsomlo@xxxxxxxxx>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>
---

Changes from v5:
- removing `status` variable altogether
- using `u8` for `ch`, matching the type of the call producing it
rather than that of the calls that consume its value

drivers/tty/serial/liteuart.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/tty/serial/liteuart.c b/drivers/tty/serial/liteuart.c
index 81aa7c1da73c..62bfd2ed9051 100644
--- a/drivers/tty/serial/liteuart.c
+++ b/drivers/tty/serial/liteuart.c
@@ -73,10 +73,9 @@ static void liteuart_timer(struct timer_list *t)
struct liteuart_port *uart = from_timer(uart, t, timer);
struct uart_port *port = &uart->port;
unsigned char __iomem *membase = port->membase;
- int ch;
- unsigned long status;
+ u8 ch;

- while ((status = !litex_read8(membase + OFF_RXEMPTY)) == 1) {
+ while (!litex_read8(membase + OFF_RXEMPTY)) {
ch = litex_read8(membase + OFF_RXTX);
port->icount.rx++;

@@ -85,7 +84,7 @@ static void liteuart_timer(struct timer_list *t)

/* no overflow bits in status */
if (!(uart_handle_sysrq_char(port, ch)))
- uart_insert_char(port, status, 0, ch, TTY_NORMAL);
+ uart_insert_char(port, 1, 0, ch, TTY_NORMAL);
}

tty_flip_buffer_push(&port->state->port);
--
2.38.1