]> git.baikalelectronics.ru Git - kernel.git/commit
serial: 8250_fintek: Fix garbled text for console
authorJi-Ze Hong (Peter Hong) <hpeter@gmail.com>
Wed, 15 Dec 2021 07:58:35 +0000 (15:58 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 15 Dec 2021 20:51:07 +0000 (21:51 +0100)
commite8ca0757f044875036f411388bb2635bd9aada50
tree5c4826011f782868ae735353b95e5c6156e68c53
parent57e0825dd69cff73b7fa58af92fb5004eab32ac9
serial: 8250_fintek: Fix garbled text for console

Commit bd1df14897c8 ("serial: 8250_fintek: Enable high speed mode on Fintek F81866")
introduced support to use high baudrate with Fintek SuperIO UARTs. It'll
change clocksources when the UART probed.

But when user add kernel parameter "console=ttyS0,115200 console=tty0" to make
the UART as console output, the console will output garbled text after the
following kernel message.

[    3.681188] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled

The issue is occurs in following step:
probe_setup_port() -> fintek_8250_goto_highspeed()

It change clocksource from 115200 to 921600 with wrong time, it should change
clocksource in set_termios() not in probed. The following 3 patches are
implemented change clocksource in fintek_8250_set_termios().

Commit d64da3c10e20 ("serial: 8250_fintek: UART dynamic clocksource on Fintek F81216H")
Commit 56d8062511ce ("serial: 8250_fintek: UART dynamic clocksource on Fintek F81866")
Commit 419d3ea9ab04 ("serial: 8250_fintek: Add F81966 Support")

Due to the high baud rate had implemented above 3 patches and the patch
Commit bd1df14897c8 ("serial: 8250_fintek: Enable high speed mode on Fintek F81866")
is bugged, So this patch will remove it.

Fixes: bd1df14897c8 ("serial: 8250_fintek: Enable high speed mode on Fintek F81866")
Signed-off-by: Ji-Ze Hong (Peter Hong) <hpeter+linux_kernel@gmail.com>
Link: https://lore.kernel.org/r/20211215075835.2072-1-hpeter+linux_kernel@gmail.com
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_fintek.c