[openwrt/openwrt] ath79: restore support for boot console with arbitrary baud rates
LEDE Commits
lede-commits at lists.infradead.org
Sun Aug 2 12:16:23 EDT 2020
adrian pushed a commit to openwrt/openwrt.git, branch openwrt-19.07:
https://git.openwrt.org/1b3aca91423255d011707452a1fc2071313c665c
commit 1b3aca91423255d011707452a1fc2071313c665c
Author: Adrian Schmutzler <freifunk at adrianschmutzler.de>
AuthorDate: Sun Aug 2 18:08:21 2020 +0200
ath79: restore support for boot console with arbitrary baud rates
The Arduino Yun uses a baud rate of 250000 by default. The serial is
going over the Atmel ATmega and is used to connect to this chip.
Without this patch Linux wants to switch the console to 9600 Baud.
With this patch Linux will use the configured baud rate and not a
default one specified in uart_register_driver().
This has been added for ath79 4.19 and 5.4 in master as part of
fc59b2f79b50 ("ath79: add support for Arduino Yun"), this backports
it separately to 4.14.
Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
...-add-support-for-boot-console-with-arbitr.patch | 54 ++++++++++++++++++++++
1 file changed, 54 insertions(+)
diff --git a/target/linux/ath79/patches-4.14/921-serial-core-add-support-for-boot-console-with-arbitr.patch b/target/linux/ath79/patches-4.14/921-serial-core-add-support-for-boot-console-with-arbitr.patch
new file mode 100644
index 0000000000..23b6d73959
--- /dev/null
+++ b/target/linux/ath79/patches-4.14/921-serial-core-add-support-for-boot-console-with-arbitr.patch
@@ -0,0 +1,54 @@
+From 4d3c17975c7814884a721fe693b3adf5c426d759 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens <hauke at hauke-m.de>
+Date: Tue, 10 Nov 2015 22:18:39 +0100
+Subject: [RFC] serial: core: add support for boot console with arbitrary
+ baud rates
+
+The Arduino Yun uses a baud rate of 250000 by default. The serial is
+going over the Atmel ATmega and is used to connect to this chip.
+Without this patch Linux wants to switch the console to 9600 Baud.
+
+With this patch Linux will use the configured baud rate and not a
+default one specified in uart_register_driver().
+
+Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
+[rebased to 4.14, slightly reworded commit message]
+Signed-off-by: Sungbo Eo <mans0n at gorani.run>
+---
+ drivers/tty/serial/serial_core.c | 6 +++++-
+ include/linux/console.h | 1 +
+ 2 files changed, 6 insertions(+), 1 deletions(-)
+
+--- a/drivers/tty/serial/serial_core.c
++++ b/drivers/tty/serial/serial_core.c
+@@ -232,6 +232,8 @@ static int uart_port_startup(struct tty_
+ if (retval == 0) {
+ if (uart_console(uport) && uport->cons->cflag) {
+ tty->termios.c_cflag = uport->cons->cflag;
++ tty->termios.c_ospeed = uport->cons->baud;
++ tty->termios.c_ispeed = uport->cons->baud;
+ uport->cons->cflag = 0;
+ }
+ /*
+@@ -2072,8 +2074,10 @@ uart_set_options(struct uart_port *port,
+ * Allow the setting of the UART parameters with a NULL console
+ * too:
+ */
+- if (co)
++ if (co) {
+ co->cflag = termios.c_cflag;
++ co->baud = baud;
++ }
+
+ return 0;
+ }
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -145,6 +145,7 @@ struct console {
+ short flags;
+ short index;
+ int cflag;
++ int baud;
+ void *data;
+ struct console *next;
+ };
More information about the lede-commits
mailing list