From: Johan Hovold Date: Sun, 15 Jul 2018 13:39:33 +0000 (+0200) Subject: tty: fix termios input-speed encoding X-Git-Tag: v5.15~8192^2~32 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fada18c48d774b9e837928ecdce6a5d5fdd11ee7;p=platform%2Fkernel%2Flinux-starfive.git tty: fix termios input-speed encoding Make sure to clear the CIBAUD bits before OR-ing the new mask when encoding the termios input baud rate. This could otherwise lead to an incorrect input rate being reported back and incidentally set on subsequent termios updates. Fixes: edc6afc54968 ("[PATCH] tty: switch to ktermios and new framework") Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/tty_baudrate.c b/drivers/tty/tty_baudrate.c index 6ff8cdf..a7a438f 100644 --- a/drivers/tty/tty_baudrate.c +++ b/drivers/tty/tty_baudrate.c @@ -169,6 +169,9 @@ void tty_termios_encode_baud_rate(struct ktermios *termios, ibinput = 1; /* An input speed was specified */ #endif termios->c_cflag &= ~CBAUD; +#ifdef IBSHIFT + termios->c_cflag &= ~(CBAUD << IBSHIFT); +#endif /* * Our goal is to find a close match to the standard baud rate