diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c index d939bd705c71..a20347237170 100644 --- a/drivers/tty/tty_io.c +++ b/drivers/tty/tty_io.c @@ -2576,8 +2576,11 @@ static int tty_tiocmset(struct tty_struct *tty, unsigned int cmd, clear = ~val; break; } - set &= TIOCM_DTR|TIOCM_RTS|TIOCM_OUT1|TIOCM_OUT2|TIOCM_LOOP; - clear &= TIOCM_DTR|TIOCM_RTS|TIOCM_OUT1|TIOCM_OUT2|TIOCM_LOOP; + + set &= TIOCM_DTR|TIOCM_RTS|TIOCM_OUT1|TIOCM_OUT2|TIOCM_LOOP|TIOCM_CD| + TIOCM_RI|TIOCM_DSR|TIOCM_CTS; + clear &= TIOCM_DTR|TIOCM_RTS|TIOCM_OUT1|TIOCM_OUT2|TIOCM_LOOP|TIOCM_CD| + TIOCM_RI|TIOCM_DSR|TIOCM_CTS; return tty->ops->tiocmset(tty, set, clear); }