summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergey Organov <sorganov@gmail.com>2019-08-28 14:37:52 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-09-04 06:43:55 -0400
commit88c38044c12b09ad8b4b82b61133e66e879325ba (patch)
treebfb15097c2a02d1e36d3d776c7c2d8e078c797d9
parent2eda5345e4ef61b35101b4fef58417a41d8d53fd (diff)
serial: imx: do not stop Rx/Tx on termios change
imx_set_termios(): stopping receiver and transmitter does harm when something that doesn't touch transmission format/rate changes, such as RTS/CTS handshake. OTOH, it does no good on baud rate or format change, as synchronization on upper-level protocols is still required to do it right. Therefore, just stop doing it. Signed-off-by: Sergey Organov <sorganov@gmail.com> Link: https://lore.kernel.org/r/1567017475-11919-3-git-send-email-sorganov@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/tty/serial/imx.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
index 47b6156f5b2c..fa723a9a9c8c 100644
--- a/drivers/tty/serial/imx.c
+++ b/drivers/tty/serial/imx.c
@@ -1652,9 +1652,6 @@ imx_uart_set_termios(struct uart_port *port, struct ktermios *termios,
1652 UCR1); 1652 UCR1);
1653 imx_uart_writel(sport, old_ucr2 & ~UCR2_ATEN, UCR2); 1653 imx_uart_writel(sport, old_ucr2 & ~UCR2_ATEN, UCR2);
1654 1654
1655 /* then, disable everything */
1656 imx_uart_writel(sport, old_ucr2 & ~(UCR2_TXEN | UCR2_RXEN | UCR2_ATEN), UCR2);
1657
1658 /* custom-baudrate handling */ 1655 /* custom-baudrate handling */
1659 div = sport->port.uartclk / (baud * 16); 1656 div = sport->port.uartclk / (baud * 16);
1660 if (baud == 38400 && quot != div) 1657 if (baud == 38400 && quot != div)