[PATCH v2 1/4] arm64: dts: amlogic: meson-s4: add UART_A node

Nick Xie posted 4 patches 1 month ago
[PATCH v2 1/4] arm64: dts: amlogic: meson-s4: add UART_A node
Posted by Nick Xie 1 month ago
Add the UART_A node and its related pinctrl definitions to the
Meson S4 SoC dtsi.

The pinctrl groups are split into basic tx/rx and flow control (cts/rts)
to allow board-level flexibility.

This interface is typically used for Bluetooth communication on
boards like the Khadas VIM1S.

Signed-off-by: Nick Xie <nick@khadas.com>
---
 arch/arm64/boot/dts/amlogic/meson-s4.dtsi | 26 +++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-s4.dtsi b/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
index dfc0a30a6e61b..4a3e9ad82d280 100644
--- a/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-s4.dtsi
@@ -163,6 +163,22 @@ mux {
 					};
 				};
 
+				uart_a_pins: uart-a-pins {
+					mux {
+						groups = "uart_a_tx",
+						       "uart_a_rx";
+						function = "uart_a";
+					};
+				};
+
+				uart_a_cts_rts_pins: uart-a-cts-rts-pins {
+					mux {
+						groups = "uart_a_cts",
+						       "uart_a_rts";
+						function = "uart_a";
+					};
+				};
+
 				i2c0_pins1: i2c0-pins1 {
 					mux {
 						groups = "i2c0_sda",
@@ -814,6 +830,16 @@ mdio0: mdio {
 			};
 		};
 
+		uart_a: serial@fe078000 {
+			compatible = "amlogic,meson-s4-uart",
+				     "amlogic,meson-ao-uart";
+			reg = <0x0 0xfe078000 0x0 0x18>;
+			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
+			clocks = <&xtal>, <&clkc_periphs CLKID_UART_A>, <&xtal>;
+			clock-names = "xtal", "pclk", "baud";
+			status = "disabled";
+		};
+
 		sdio: mmc@fe088000 {
 			compatible = "amlogic,meson-axg-mmc";
 			reg = <0x0 0xfe088000 0x0 0x800>;
-- 
2.34.1
Re: [PATCH v2 1/4] arm64: dts: amlogic: meson-s4: add UART_A node
Posted by Martin Blumenstingl 1 month ago
On Sat, Feb 28, 2026 at 7:38 AM Nick Xie <nick@khadas.com> wrote:
>
> Add the UART_A node and its related pinctrl definitions to the
> Meson S4 SoC dtsi.
>
> The pinctrl groups are split into basic tx/rx and flow control (cts/rts)
> to allow board-level flexibility.
>
> This interface is typically used for Bluetooth communication on
> boards like the Khadas VIM1S.
>
> Signed-off-by: Nick Xie <nick@khadas.com>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>