]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
serial: fsl_lpuart: Use uart_xmit_advance()
authorIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Wed, 19 Oct 2022 09:11:23 +0000 (12:11 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 3 Nov 2022 02:35:41 +0000 (03:35 +0100)
Take advantage of the new uart_xmit_advance() helper.

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Link: https://lore.kernel.org/r/20221019091151.6692-17-ilpo.jarvinen@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/fsl_lpuart.c

index d811eda1844e797bb412eba54e110398b42f1acb..849ef313b824ee85f684b890c0be3413998d1c4c 100644 (file)
@@ -535,9 +535,7 @@ static void lpuart_dma_tx_complete(void *arg)
        dma_unmap_sg(chan->device->dev, sgl, sport->dma_tx_nents,
                     DMA_TO_DEVICE);
 
-       xmit->tail = (xmit->tail + sport->dma_tx_bytes) & (UART_XMIT_SIZE - 1);
-
-       sport->port.icount.tx += sport->dma_tx_bytes;
+       uart_xmit_advance(&sport->port, sport->dma_tx_bytes);
        sport->dma_tx_in_progress = false;
        spin_unlock_irqrestore(&sport->port.lock, flags);
 
@@ -772,8 +770,7 @@ static inline void lpuart32_transmit_buffer(struct lpuart_port *sport)
        txcnt &= UARTWATER_COUNT_MASK;
        while (!uart_circ_empty(xmit) && (txcnt < sport->txfifo_size)) {
                lpuart32_write(&sport->port, xmit->buf[xmit->tail], UARTDATA);
-               xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
-               sport->port.icount.tx++;
+               uart_xmit_advance(&sport->port, 1);
                txcnt = lpuart32_read(&sport->port, UARTWATER);
                txcnt = txcnt >> UARTWATER_TXCNT_OFF;
                txcnt &= UARTWATER_COUNT_MASK;