ARM: dts: am57xx: Add PRUSS MDIO controller nodes
authorSuman Anna <s-anna@ti.com>
Thu, 29 Jul 2021 22:46:21 +0000 (17:46 -0500)
committerTony Lindgren <tony@atomide.com>
Tue, 3 Aug 2021 12:25:14 +0000 (15:25 +0300)
The PRUSSs on AM57xx SoCs contain an MDIO controller that can
be used to control external PHYs associated with the Industrial
Ethernet peripherals within each PRUSS. The MDIO module used
within the PRU-ICSS is an instance of the MDIO Controller used
in TI Davinci SoCs. The same bus frequency of 1 MHz is chosen as
the regular MDIO node.

The nodes are added in the common am57-pruss.dtsi file and enabled
by default, but are disabled in all the existing AM57xx board dts
files. These nodes need pinctrl lines, and so should be enabled
only on boards where they are actually wired and pinned out for
PRUSS Ethernet. Any new board dts file should disable these if
they are not sure.

Signed-off-by: Suman Anna <s-anna@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/boot/dts/am57-pruss.dtsi
arch/arm/boot/dts/am571x-idk.dts
arch/arm/boot/dts/am572x-idk.dts
arch/arm/boot/dts/am574x-idk.dts
arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
arch/arm/boot/dts/am57xx-cl-som-am57x.dts

index 494d568..46c5383 100644 (file)
                                reg-names = "iram", "control", "debug";
                                firmware-name = "am57xx-pru1_1-fw";
                        };
+
+                       pruss1_mdio: mdio@32400 {
+                               compatible = "ti,davinci_mdio";
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               clocks = <&dpll_gmac_h13x2_ck>;
+                               clock-names = "fck";
+                               bus_freq = <1000000>;
+                               reg = <0x32400 0x90>;
+                       };
                };
        };
 
                                reg-names = "iram", "control", "debug";
                                firmware-name = "am57xx-pru2_1-fw";
                        };
+
+                       pruss2_mdio: mdio@32400 {
+                               compatible = "ti,davinci_mdio";
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               clocks = <&dpll_gmac_h13x2_ck>;
+                               clock-names = "fck";
+                               bus_freq = <1000000>;
+                               reg = <0x32400 0x90>;
+                       };
                };
        };
 };
index e81078c..4842502 100644 (file)
        pinctrl-1 = <&mmc2_pins_hs>;
        pinctrl-2 = <&mmc2_pins_ddr_rev20 &mmc2_iodelay_ddr_conf>;
 };
+
+&pruss1_mdio {
+       status = "disabled";
+};
+
+&pruss2_mdio {
+       status = "disabled";
+};
index 6504265..94a738c 100644 (file)
        pinctrl-1 = <&mmc2_pins_hs>;
        pinctrl-2 = <&mmc2_pins_ddr_rev20>;
 };
+
+&pruss1_mdio {
+       status = "disabled";
+};
+
+&pruss2_mdio {
+       status = "disabled";
+};
index dcc32f4..6dff366 100644 (file)
 &emif1 {
        status = "okay";
 };
+
+&pruss1_mdio {
+       status = "disabled";
+};
+
+&pruss2_mdio {
+       status = "disabled";
+};
index 6b82ecf..994e69a 100644 (file)
        status = "okay";
        memory-region = <&dsp2_memory_region>;
 };
+
+&pruss1_mdio {
+       status = "disabled";
+};
+
+&pruss2_mdio {
+       status = "disabled";
+};
index aed8156..2e94f32 100644 (file)
        status = "okay";
        ti,no-reset-on-init;
 };
+
+&pruss1_mdio {
+       status = "disabled";
+};
+
+&pruss2_mdio {
+       status = "disabled";
+};