tty: serial: meson: allow baud-rates higher than 115200
The vendor driver allows setting baud-rates higher than 115200 baud. There is a check in the vendor driver which prevents using more than 115200 baud during startup, however it does not have such a check in .set_termios. Higher baud-rates are often used by the bluetooth modules embedded into the SDIO wifi chips (Amlogic devices use brcmfmac based wifi chips quite often, 2000000 baud seems to be a common value for the UART baud-rate in Amlogic's "libbt"). I have tested this on a Meson GXL device with uart_A (to which the bluetooth module is connected, where initialization times out with 115200 baud) and uart_AO (which I manually set to 2000000 baud and then connected with my USB UART adapter to that). Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Acked-by: Kevin Hilman <khilman@baylibre.com> Tested-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
9ed90d2044
Коммит
8c9faa556a
|
@ -364,7 +364,7 @@ static void meson_uart_set_termios(struct uart_port *port,
|
||||||
|
|
||||||
writel(val, port->membase + AML_UART_CONTROL);
|
writel(val, port->membase + AML_UART_CONTROL);
|
||||||
|
|
||||||
baud = uart_get_baud_rate(port, termios, old, 9600, 115200);
|
baud = uart_get_baud_rate(port, termios, old, 9600, 4000000);
|
||||||
meson_uart_change_speed(port, baud);
|
meson_uart_change_speed(port, baud);
|
||||||
|
|
||||||
port->read_status_mask = AML_UART_TX_FIFO_WERR;
|
port->read_status_mask = AML_UART_TX_FIFO_WERR;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче