airoha: an7581: enable uart baudrate control
authorAleksander Jan Bajkowski <olek2@wp.pl>
Sun, 14 Sep 2025 15:38:24 +0000 (17:38 +0200)
committerChristian Marangi <ansuelsmth@gmail.com>
Mon, 10 Nov 2025 16:30:05 +0000 (17:30 +0100)
The baud rate control on Airoha does not function properly. This
patch enables the inactive code responsible for this. The UART2
baud rate is correct. HSUART3 operates at twice the requested
baud rate. The same problem exists in the current code, so this
doesn't introduce any regression. Support for baud rates higher
than 460800 is still required. This will be added in the future.

Tested on Gemtek W1700k. UART2 and HSUART3 are working fine.

Signed-off-by: Aleksander Jan Bajkowski <olek2@wp.pl>
Link: https://github.com/openwrt/openwrt/pull/20049
Signed-off-by: Robert Marko <robimarko@gmail.com>
(cherry picked from commit 440b85f5b1025d26b3a40d6b55b34b17cb6520c8)
[ solve conflict error ]
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
target/linux/airoha/an7581/config-6.6
target/linux/airoha/patches-6.6/105-uart-add-en7523-support.patch

index 358a953393b5f94f2052f72bfd7512948f442482..8074e514f8fb1034b342f8c341594c8497a3acdc 100644 (file)
@@ -517,6 +517,7 @@ CONFIG_SECURITY=y
 CONFIG_SECURITYFS=y
 # CONFIG_SECURITY_DMESG_RESTRICT is not set
 # CONFIG_SECURITY_NETWORK is not set
+CONFIG_SERIAL_8250_AIROHA=y
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_FSL=y
 CONFIG_SERIAL_8250_NR_UARTS=5
index 9ea355370bbd45a2711ca3d720e553b2e4e58a9e..39a4944daf758d6d86b615b29355eade48f42729 100644 (file)
        /*
         * LCR DLAB must be set to enable 64-byte FIFO mode. If the FCR
         * is written without DLAB set, this mode will be disabled.
+--- a/drivers/tty/serial/8250/Kconfig
++++ b/drivers/tty/serial/8250/Kconfig
+@@ -354,6 +354,16 @@ config SERIAL_8250_ACORN
+         system, say Y to this option.  The driver can handle 1, 2, or 3 port
+         cards.  If unsure, say N.
++config SERIAL_8250_AIROHA
++      tristate "Airoha UART support"
++      depends on (ARCH_AIROHA || COMPILE_TEST) && OF && SERIAL_8250
++      help
++        Selecting this option enables an Airoha SoC specific baud rate
++        calculation routine on an otherwise 16550 compatible UART hardware.
++
++        If you have an Airoha based board and want to use the serial port,
++        say Y to this option. If unsure, say N.
++
+ config SERIAL_8250_BCM2835AUX
+       tristate "BCM2835 auxiliar mini UART support"
+       depends on ARCH_BCM2835 || COMPILE_TEST
 --- a/drivers/tty/serial/8250/Makefile
 +++ b/drivers/tty/serial/8250/Makefile
 @@ -46,6 +46,7 @@ obj-$(CONFIG_SERIAL_8250_PERICOM)    += 825