tty: serial: imx: disable the break condition when shutdown the uart port
authorSherry Sun <sherry.sun@nxp.com>
Wed, 14 Dec 2022 03:11:37 +0000 (11:11 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Jan 2023 14:05:37 +0000 (15:05 +0100)
The comment in imx_uart_shutdown() says to disable the break condition,
but it doesn't actually do that, here fix this by disabling UCR1_SNDBRK
when closing the uart port like other uart drivers do.

Signed-off-by: Sherry Sun <sherry.sun@nxp.com>
Link: https://lore.kernel.org/r/20221214031137.28815-4-sherry.sun@nxp.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/imx.c

index 757825e..74c9e68 100644 (file)
@@ -1564,7 +1564,8 @@ static void imx_uart_shutdown(struct uart_port *port)
        spin_lock_irqsave(&sport->port.lock, flags);
 
        ucr1 = imx_uart_readl(sport, UCR1);
-       ucr1 &= ~(UCR1_TRDYEN | UCR1_RRDYEN | UCR1_RTSDEN | UCR1_RXDMAEN | UCR1_ATDMAEN);
+       ucr1 &= ~(UCR1_TRDYEN | UCR1_RRDYEN | UCR1_RTSDEN | UCR1_RXDMAEN |
+                 UCR1_ATDMAEN | UCR1_SNDBRK);
        /* See SER_RS485_ENABLED/UTS_LOOP comment in imx_uart_probe() */
        if (port->rs485.flags & SER_RS485_ENABLED &&
            port->rs485.flags & SER_RS485_RTS_ON_SEND &&