summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRong Zhang <rongrong@oss.cipunited.com>2026-03-15 21:44:00 +0300
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>2026-04-06 15:14:24 +0300
commit79b888ee4c6387bc07c5452bfd031cb985871a5f (patch)
tree1ab89917a235b789d60d4786f0a845b471b266c8
parent2300d68e577909c7d3013910ff818e8572288491 (diff)
downloadlinux-79b888ee4c6387bc07c5452bfd031cb985871a5f.tar.xz
MIPS: dts: loongson64g-package: Switch to Loongson UART driver
Loongson64g is Loongson 3A4000, whose UART controller is compatible with Loongson 2K1500, which is NS16550A-compatible with an additional fractional frequency divisor register. Update the compatible strings to reflect this, so that 3A4000 can benefit from the fractional frequency divisor provided by loongson-uart. This is required on some devices, otherwise their UART can't work at some high baud rates, e.g., 115200. Tested on Loongson-LS3A4000-7A1000-NUC-SE with a 25MHz UART clock. Without fractional frequency divisor, the actual baud rate was 111607 (25MHz / 16 / 14, measured value: 111545) and some USB-to-UART converters couldn't work with it at all. With fractional frequency divisor, the measured baud rate becomes 115207, which is quite accurate. Signed-off-by: Rong Zhang <rongrong@oss.cipunited.com> Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
-rw-r--r--arch/mips/boot/dts/loongson/loongson64g-package.dtsi4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/mips/boot/dts/loongson/loongson64g-package.dtsi b/arch/mips/boot/dts/loongson/loongson64g-package.dtsi
index d4314f62ccc2..029daeedd0ab 100644
--- a/arch/mips/boot/dts/loongson/loongson64g-package.dtsi
+++ b/arch/mips/boot/dts/loongson/loongson64g-package.dtsi
@@ -40,7 +40,7 @@
};
cpu_uart0: serial@1fe00100 {
- compatible = "ns16550a";
+ compatible = "loongson,ls3a4000-uart", "loongson,ls2k1500-uart", "ns16550a";
reg = <0 0x1fe00100 0x10>;
clock-frequency = <100000000>;
interrupt-parent = <&liointc>;
@@ -50,7 +50,7 @@
cpu_uart1: serial@1fe00110 {
status = "disabled";
- compatible = "ns16550a";
+ compatible = "loongson,ls3a4000-uart", "loongson,ls2k1500-uart", "ns16550a";
reg = <0 0x1fe00110 0x10>;
clock-frequency = <100000000>;
interrupts = <15 IRQ_TYPE_LEVEL_HIGH>;