arm64: dts: ti: k3-am65: Enable UART nodes at the board level
authorAndrew Davis <afd@ti.com>
Fri, 28 Oct 2022 14:24:07 +0000 (09:24 -0500)
committerNishanth Menon <nm@ti.com>
Fri, 4 Nov 2022 02:46:00 +0000 (21:46 -0500)
UART nodes defined in the top-level AM65x SoC dtsi files are incomplete
and may not be functional unless they are extended with pinmux
information.

As the pinmux is only known at the board integration level, these
nodes should only be enabled when provided with this information.

Disable the UART nodes in the dtsi files and only enable the ones that
are actually pinned out on a given board.

Signed-off-by: Andrew Davis <afd@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Jan Kiszka <jan.kiszka@siemens.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
Link: https://lore.kernel.org/r/20221028142417.10642-2-afd@ti.com
arch/arm64/boot/dts/ti/k3-am65-iot2050-common.dtsi
arch/arm64/boot/dts/ti/k3-am65-main.dtsi
arch/arm64/boot/dts/ti/k3-am65-mcu.dtsi
arch/arm64/boot/dts/ti/k3-am65-wakeup.dtsi
arch/arm64/boot/dts/ti/k3-am6528-iot2050-basic-common.dtsi
arch/arm64/boot/dts/ti/k3-am654-base-board.dts
arch/arm64/boot/dts/ti/k3-am6548-iot2050-advanced-common.dtsi

index 32b7972..7b3087c 100644 (file)
 };
 
 &main_uart1 {
+       status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&main_uart1_pins_default>;
 };
 
-&main_uart2 {
-       status = "disabled";
-};
-
 &mcu_uart0 {
+       status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&arduino_uart_pins_default>;
 };
index 4005a73..ae414f5 100644 (file)
@@ -91,6 +91,7 @@
                clock-frequency = <48000000>;
                current-speed = <115200>;
                power-domains = <&k3_pds 146 TI_SCI_PD_EXCLUSIVE>;
+               status = "disabled";
        };
 
        main_uart1: serial@2810000 {
                interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                power-domains = <&k3_pds 147 TI_SCI_PD_EXCLUSIVE>;
+               status = "disabled";
        };
 
        main_uart2: serial@2820000 {
                interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                power-domains = <&k3_pds 148 TI_SCI_PD_EXCLUSIVE>;
+               status = "disabled";
        };
 
        crypto: crypto@4e00000 {
index 1807ec4..d509945 100644 (file)
 
        mcu_uart0: serial@40a00000 {
                compatible = "ti,am654-uart";
-                       reg = <0x00 0x40a00000 0x00 0x100>;
-                       interrupts = <GIC_SPI 565 IRQ_TYPE_LEVEL_HIGH>;
-                       clock-frequency = <96000000>;
-                       current-speed = <115200>;
-                       power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>;
+               reg = <0x00 0x40a00000 0x00 0x100>;
+               interrupts = <GIC_SPI 565 IRQ_TYPE_LEVEL_HIGH>;
+               clock-frequency = <96000000>;
+               current-speed = <115200>;
+               power-domains = <&k3_pds 149 TI_SCI_PD_EXCLUSIVE>;
+               status = "disabled";
        };
 
        mcu_ram: sram@41c00000 {
index fa11d71..bbe3153 100644 (file)
@@ -54,6 +54,7 @@
                clock-frequency = <48000000>;
                current-speed = <115200>;
                power-domains = <&k3_pds 150 TI_SCI_PD_EXCLUSIVE>;
+               status = "disabled";
        };
 
        wkup_i2c0: i2c@42120000 {
index 4a9bf7d..cd43fd1 100644 (file)
@@ -50,6 +50,7 @@
 };
 
 &main_uart0 {
+       status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&main_uart0_pins_default>;
 };
index 5850582..956e9bc 100644 (file)
        status = "reserved";
 };
 
+&mcu_uart0 {
+       status = "okay";
+       /* Default pinmux */
+};
+
 &main_uart0 {
+       status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&main_uart0_pins_default>;
        power-domains = <&k3_pds 146 TI_SCI_PD_SHARED>;
index d25e8b2..0f67e1e 100644 (file)
@@ -50,7 +50,3 @@
        ti,driver-strength-ohm = <50>;
        disable-wp;
 };
-
-&main_uart0 {
-       status = "disabled";
-};