diff options
author | Yoshii Takashi <takashi.yoshii.zj@renesas.com> | 2011-08-23 08:27:18 +0000 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2011-08-29 15:47:33 +0900 |
commit | 4480a688b2beaa82ecac269b6e21bf1a26251bf9 (patch) | |
tree | 57fdf49cc582ce32a643e0a52fb6469ce1879ec3 | |
parent | 34f7145a63211eb7ecfcafa6c2a8db5646baf953 (diff) | |
download | linux-4480a688b2beaa82ecac269b6e21bf1a26251bf9.tar.bz2 |
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: Takashi YOSHII <takashi.yoshii.zj@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r-- | drivers/tty/serial/sh-sci.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/tty/serial/sh-sci.c b/drivers/tty/serial/sh-sci.c index 18e6342af073..161e70010709 100644 --- a/drivers/tty/serial/sh-sci.c +++ b/drivers/tty/serial/sh-sci.c @@ -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, 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 |