]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
serial: core, do not set DTR/RTS twice on startup
authorJiri Slaby <jslaby@suse.cz>
Tue, 29 Mar 2011 22:10:56 +0000 (00:10 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 23 Jun 2011 22:05:34 +0000 (15:05 -0700)
commit 303a7a1199c20f7c9452f024a6e17bf348b6b398 upstream.

In .dtr_rts we do:
  uart_set_mctrl(uport, TIOCM_DTR | TIOCM_RTS)
and call uart_update_termios. It does:
  uart_set_mctrl(port, TIOCM_DTR | TIOCM_RTS)
once again. As the only callsite of uart_update_termios is .dtr_rts,
remove the uart_set_mctrl from uart_update_termios to not set it twice.

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/tty/serial/serial_core.c

index 5478a2f5ec7681974f6f28ca5d86583c867ab0f2..b70cb7d3f6d124c815f8ed3876775b9f3364aa10 100644 (file)
@@ -1483,20 +1483,6 @@ static void uart_hangup(struct tty_struct *tty)
 static void uart_update_termios(struct tty_struct *tty,
                                                struct uart_state *state)
 {
-       struct uart_port *port = state->uart_port;
-
-       /*
-        * If the device failed to grab its irq resources,
-        * or some other error occurred, don't try to talk
-        * to the port hardware.
-        */
-       if (!(tty->flags & (1 << TTY_IO_ERROR))) {
-               /*
-                * And finally enable the RTS and DTR signals.
-                */
-               if (tty->termios->c_cflag & CBAUD)
-                       uart_set_mctrl(port, TIOCM_DTR | TIOCM_RTS);
-       }
 }
 
 static int uart_carrier_raised(struct tty_port *port)