serial: imx: Use uart_xmit_advance()
authorIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Wed, 19 Oct 2022 09:11:24 +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.

Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Link: https://lore.kernel.org/r/20221019091151.6692-18-ilpo.jarvinen@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/imx.c

index 05b432dc7a85c79065efd53d1a2d6fe6bed27b6c..a7548d0a1aeee70ffae77db748aae7319779cd9d 100644 (file)
@@ -563,8 +563,7 @@ static inline void imx_uart_transmit_buffer(struct imx_port *sport)
                /* send xmit->buf[xmit->tail]
                 * out the port here */
                imx_uart_writel(sport, xmit->buf[xmit->tail], URTX0);
-               xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
-               sport->port.icount.tx++;
+               uart_xmit_advance(&sport->port, 1);
        }
 
        if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
@@ -590,9 +589,7 @@ static void imx_uart_dma_tx_callback(void *data)
        ucr1 &= ~UCR1_TXDMAEN;
        imx_uart_writel(sport, ucr1, UCR1);
 
-       /* update the stat */
-       xmit->tail = (xmit->tail + sport->tx_bytes) & (UART_XMIT_SIZE - 1);
-       sport->port.icount.tx += sport->tx_bytes;
+       uart_xmit_advance(&sport->port, sport->tx_bytes);
 
        dev_dbg(sport->port.dev, "we finish the TX DMA.\n");