diff options
author | Sherry Sun <sherry.sun@nxp.com> | 2023-01-30 07:44:46 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-01-31 10:53:39 +0100 |
commit | 9ad9df8447547febe9dd09b040f4528a09e495f0 (patch) | |
tree | f4c73fe2e61006166280d817a628b160638f3ce8 /drivers/tty/serial/fsl_lpuart.c | |
parent | tty: serial: fsl_lpuart: set receive watermark for imx8qxp platform (diff) | |
download | linux-9ad9df8447547febe9dd09b040f4528a09e495f0.tar.xz linux-9ad9df8447547febe9dd09b040f4528a09e495f0.zip |
tty: serial: fsl_lpuart: Fix the wrong RXWATER setting for rx dma case
The RXWATER value must be greater than 0 according to the LPUART
reference manual. And when the number of datawords in the receive
FIFO is greater than RXWATER, an interrupt or a DMA request is
generated, so no need to set the different value for lpuart interrupt
case and dma case. Here delete the wrong RXWATER setting for dma case
directly.
Fixes: 42b68768e51b ("serial: fsl_lpuart: DMA support for 32-bit variant")
Signed-off-by: Sherry Sun <sherry.sun@nxp.com>
Link: https://lore.kernel.org/r/20230130064449.9564-4-sherry.sun@nxp.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial/fsl_lpuart.c')
-rw-r--r-- | drivers/tty/serial/fsl_lpuart.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c index 868c2783d2c7..ba6ade784ac5 100644 --- a/drivers/tty/serial/fsl_lpuart.c +++ b/drivers/tty/serial/fsl_lpuart.c @@ -1729,12 +1729,6 @@ static void lpuart32_configure(struct lpuart_port *sport) { unsigned long temp; - if (sport->lpuart_dma_rx_use) { - /* RXWATER must be 0 */ - temp = lpuart32_read(&sport->port, UARTWATER); - temp &= ~(UARTWATER_WATER_MASK << UARTWATER_RXWATER_OFF); - lpuart32_write(&sport->port, temp, UARTWATER); - } temp = lpuart32_read(&sport->port, UARTCTRL); if (!sport->lpuart_dma_rx_use) temp |= UARTCTRL_RIE | UARTCTRL_ILIE; |