mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 03:40:35 +09:00
serial: rda-uart: Don't allow CS5-6
[ Upstream commit098333a9c7] Only CS7 and CS8 are supported but CSIZE is not sanitized after fallthrough from CS5 or CS6 to CS7. Set CSIZE correctly so that userspace knows the effective value. Incorrect CSIZE also results in miscalculation of the frame bits in tty_get_char_size() or in its predecessor where the roughly the same code is directly within uart_update_timeout(). Fixes:c10b13325c(tty: serial: Add RDA8810PL UART driver) Cc: Manivannan Sadhasivam <mani@kernel.org> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Link: https://lore.kernel.org/r/20220519081808.3776-4-ilpo.jarvinen@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
0de3d2344e
commit
eb8de4bac3
@@ -262,6 +262,8 @@ static void rda_uart_set_termios(struct uart_port *port,
|
||||
/* Fall through */
|
||||
case CS7:
|
||||
ctrl &= ~RDA_UART_DBITS_8;
|
||||
termios->c_cflag &= ~CSIZE;
|
||||
termios->c_cflag |= CS7;
|
||||
break;
|
||||
default:
|
||||
ctrl |= RDA_UART_DBITS_8;
|
||||
|
||||
Reference in New Issue
Block a user