Commit 0c0bfc6b authored by Jiri Slaby's avatar Jiri Slaby Committed by Greg Kroah-Hartman

tty: serial: move and cleanup vt8500_tx_empty()

Make vt8500_tx_empty() more readable by introducing a new local variable
and move the function before handle_tx(). That way we can reuse it in
there too.

Cc: <linux-arm-kernel@lists.infradead.org>
Reviewed-by: default avatarIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: default avatarJiri Slaby <jslaby@suse.cz>
Link: https://lore.kernel.org/r/20220920052049.20507-2-jslaby@suse.czSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent eef7381d
...@@ -187,6 +187,13 @@ static void handle_rx(struct uart_port *port) ...@@ -187,6 +187,13 @@ static void handle_rx(struct uart_port *port)
tty_flip_buffer_push(tport); tty_flip_buffer_push(tport);
} }
static unsigned int vt8500_tx_empty(struct uart_port *port)
{
unsigned int idx = vt8500_read(port, VT8500_URFIDX) & 0x1f;
return idx < 16 ? TIOCSER_TEMT : 0;
}
static void handle_tx(struct uart_port *port) static void handle_tx(struct uart_port *port)
{ {
struct circ_buf *xmit = &port->state->xmit; struct circ_buf *xmit = &port->state->xmit;
...@@ -201,7 +208,7 @@ static void handle_tx(struct uart_port *port) ...@@ -201,7 +208,7 @@ static void handle_tx(struct uart_port *port)
return; return;
} }
while ((vt8500_read(port, VT8500_URFIDX) & 0x1f) < 16) { while (vt8500_tx_empty(port)) {
if (uart_circ_empty(xmit)) if (uart_circ_empty(xmit))
break; break;
...@@ -260,12 +267,6 @@ static irqreturn_t vt8500_irq(int irq, void *dev_id) ...@@ -260,12 +267,6 @@ static irqreturn_t vt8500_irq(int irq, void *dev_id)
return IRQ_HANDLED; return IRQ_HANDLED;
} }
static unsigned int vt8500_tx_empty(struct uart_port *port)
{
return (vt8500_read(port, VT8500_URFIDX) & 0x1f) < 16 ?
TIOCSER_TEMT : 0;
}
static unsigned int vt8500_get_mctrl(struct uart_port *port) static unsigned int vt8500_get_mctrl(struct uart_port *port)
{ {
unsigned int usr; unsigned int usr;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment