Commit 4480a688 authored by Yoshii Takashi's avatar Yoshii Takashi Committed by Paul Mundt

serial: sh-sci: report CTS as active for get_mctrl

sh-sci.c sets hardware up and then let the HW do all flow controls.
There is no software code, nor needs to get/set real CTS signal.

But, when turning CRTSCTS on through termios, uart_set_termios() in
serial_core.c checks CTS, and stops TX if it is inactive at the moment.

Because sci_get_mctrl() returns a fixed value DTR|RTS|DSR but CTS,
the sequence
  open -> set CRTSCTS -> write
hit the case and stop working, no more outputs.

This patch makes sci_get_mctrl() report CTS in addition.
Signed-off-by: default avatarTakashi YOSHII <takashi.yoshii.zj@renesas.com>
Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 34f7145a
...@@ -1083,7 +1083,7 @@ static unsigned int sci_get_mctrl(struct uart_port *port) ...@@ -1083,7 +1083,7 @@ static unsigned int sci_get_mctrl(struct uart_port *port)
/* This routine is used for getting signals of: DTR, DCD, DSR, RI, /* This routine is used for getting signals of: DTR, DCD, DSR, RI,
and CTS/RTS */ and CTS/RTS */
return TIOCM_DTR | TIOCM_RTS | TIOCM_DSR; return TIOCM_DTR | TIOCM_RTS | TIOCM_CTS | TIOCM_DSR;
} }
#ifdef CONFIG_SERIAL_SH_SCI_DMA #ifdef CONFIG_SERIAL_SH_SCI_DMA
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment