mirror of
https://github.com/torvalds/linux.git
synced 2026-05-22 06:01:53 +02:00
serial: mcf: use helpers in mcf_tx_chars()
Use uart_circ_empty() instead of open-coding it via xmit->head & tail. Use preexisting mcf_stop_tx() to avoid stop-tx code duplication. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Link: https://lore.kernel.org/r/20220124071430.14907-12-jslaby@suse.cz Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
d88812a8d6
commit
e41752c0e7
|
|
@ -338,7 +338,7 @@ static void mcf_tx_chars(struct mcf_uart *pp)
|
|||
}
|
||||
|
||||
while (readb(port->membase + MCFUART_USR) & MCFUART_USR_TXREADY) {
|
||||
if (xmit->head == xmit->tail)
|
||||
if (uart_circ_empty(xmit))
|
||||
break;
|
||||
writeb(xmit->buf[xmit->tail], port->membase + MCFUART_UTB);
|
||||
xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE -1);
|
||||
|
|
@ -348,9 +348,8 @@ static void mcf_tx_chars(struct mcf_uart *pp)
|
|||
if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
|
||||
uart_write_wakeup(port);
|
||||
|
||||
if (xmit->head == xmit->tail) {
|
||||
pp->imr &= ~MCFUART_UIR_TXREADY;
|
||||
writeb(pp->imr, port->membase + MCFUART_UIMR);
|
||||
if (uart_circ_empty(xmit)) {
|
||||
mcf_stop_tx(port);
|
||||
/* Disable TX to negate RTS automatically */
|
||||
if (port->rs485.flags & SER_RS485_ENABLED)
|
||||
writeb(MCFUART_UCR_TXDISABLE,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user