From: Philippe Schenker <philippe.schenker@xxxxxxxxxxx> Sent: Wednesday, October 16, 2019 11:19 PM > Currently flow control is not working due to lpuart32_set_mctrl that is > clearing TXCTSE bit in all cases. This bit gets earlier setup by > lpuart32_set_termios. > > As I read in Documentation set_mctrl is also not meant for hardware flow > control rather than gpio setting and clearing a RTS signal. > Therefore I guess it is safe to remove the whole code in lpuart32_set_mctrl. > > This was tested with console on a i.MX8QXP SoC. > > Signed-off-by: Philippe Schenker <philippe.schenker@xxxxxxxxxxx> Reviewed-by: Fugang Duan <fugang.duan@xxxxxxx> > --- > > drivers/tty/serial/fsl_lpuart.c | 11 ----------- > 1 file changed, 11 deletions(-) > > diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c index > 537896c4d887..f3271857621c 100644 > --- a/drivers/tty/serial/fsl_lpuart.c > +++ b/drivers/tty/serial/fsl_lpuart.c > @@ -1333,18 +1333,7 @@ static void lpuart_set_mctrl(struct uart_port > *port, unsigned int mctrl) > > static void lpuart32_set_mctrl(struct uart_port *port, unsigned int mctrl) { > - unsigned long temp; > - > - temp = lpuart32_read(port, UARTMODIR) & > - ~(UARTMODIR_RXRTSE | > UARTMODIR_TXCTSE); > - > - if (mctrl & TIOCM_RTS) > - temp |= UARTMODIR_RXRTSE; > - > - if (mctrl & TIOCM_CTS) > - temp |= UARTMODIR_TXCTSE; > > - lpuart32_write(port, temp, UARTMODIR); > } > > static void lpuart_break_ctl(struct uart_port *port, int break_state) > -- > 2.23.0