UARTMODIR register is configured in lpuart32_set_termios() according to the termios flags, but nowhere clear it, should clear it when shutdown the uart port. Fixes: 380c966c093e ("tty: serial: fsl_lpuart: add 32-bit register interface support") Signed-off-by: Sherry Sun <sherry.sun@xxxxxxx> --- Changes in V2: 1. Split one patch into four smaller patches to improve the commit messages and add Fixes tag as suggested by Ilpo. --- drivers/tty/serial/fsl_lpuart.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c index dbf8cccea105..a6f7b056d57b 100644 --- a/drivers/tty/serial/fsl_lpuart.c +++ b/drivers/tty/serial/fsl_lpuart.c @@ -1775,6 +1775,7 @@ static void lpuart32_shutdown(struct uart_port *port) UARTCTRL_TIE | UARTCTRL_TCIE | UARTCTRL_RIE | UARTCTRL_LOOPS); lpuart32_write(port, temp, UARTCTRL); + lpuart32_write(port, 0, UARTMODIR); spin_unlock_irqrestore(&port->lock, flags); -- 2.17.1