mips: mscc: luton: Add ethernet nodes for Luton.

Add nodes for pcb090 and pcb091. There is currently no support
in Linux for this SoC.

Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
diff --git a/arch/mips/dts/luton_pcb090.dts b/arch/mips/dts/luton_pcb090.dts
index 951d8da..315172b 100644
--- a/arch/mips/dts/luton_pcb090.dts
+++ b/arch/mips/dts/luton_pcb090.dts
@@ -55,3 +55,54 @@
 	};
 };
 
+&mdio0 {
+	status = "okay";
+};
+
+&port0 {
+	phy-handle = <&phy0>;
+};
+
+&port1 {
+	phy-handle = <&phy1>;
+};
+
+&port2 {
+	phy-handle = <&phy2>;
+};
+
+&port3 {
+	phy-handle = <&phy3>;
+};
+
+&port4 {
+	phy-handle = <&phy4>;
+};
+
+&port5 {
+	phy-handle = <&phy5>;
+};
+
+&port6 {
+	phy-handle = <&phy6>;
+};
+
+&port7 {
+	phy-handle = <&phy7>;
+};
+
+&port8 {
+	phy-handle = <&phy8>;
+};
+
+&port9 {
+	phy-handle = <&phy9>;
+};
+
+&port10 {
+	phy-handle = <&phy10>;
+};
+
+&port11 {
+	phy-handle = <&phy11>;
+};
diff --git a/arch/mips/dts/luton_pcb091.dts b/arch/mips/dts/luton_pcb091.dts
index bf638b2..9b4d628 100644
--- a/arch/mips/dts/luton_pcb091.dts
+++ b/arch/mips/dts/luton_pcb091.dts
@@ -61,3 +61,54 @@
 	};
 };
 
+&mdio0 {
+	status = "okay";
+};
+
+&port0 {
+	phy-handle = <&phy0>;
+};
+
+&port1 {
+	phy-handle = <&phy1>;
+};
+
+&port2 {
+	phy-handle = <&phy2>;
+};
+
+&port3 {
+	phy-handle = <&phy3>;
+};
+
+&port4 {
+	phy-handle = <&phy4>;
+};
+
+&port5 {
+	phy-handle = <&phy5>;
+};
+
+&port6 {
+	phy-handle = <&phy6>;
+};
+
+&port7 {
+	phy-handle = <&phy7>;
+};
+
+&port8 {
+	phy-handle = <&phy8>;
+};
+
+&port9 {
+	phy-handle = <&phy9>;
+};
+
+&port10 {
+	phy-handle = <&phy10>;
+};
+
+&port11 {
+	phy-handle = <&phy11>;
+};
diff --git a/arch/mips/dts/mscc,luton.dtsi b/arch/mips/dts/mscc,luton.dtsi
index d11ec48..de354fe 100644
--- a/arch/mips/dts/mscc,luton.dtsi
+++ b/arch/mips/dts/mscc,luton.dtsi
@@ -92,5 +92,170 @@
 			#address-cells = <1>;
 			#size-cells = <0>;
 		};
+
+		switch: switch@1010000 {
+			compatible = "mscc,vsc7527-switch";
+			reg = <0x1e0000 0x0100>, // VTSS_TO_DEV_0
+			      <0x1f0000 0x0100>, // VTSS_TO_DEV_1
+			      <0x200000 0x0100>, // VTSS_TO_DEV_2
+			      <0x210000 0x0100>, // VTSS_TO_DEV_3
+			      <0x220000 0x0100>, // VTSS_TO_DEV_4
+			      <0x230000 0x0100>, // VTSS_TO_DEV_5
+			      <0x240000 0x0100>, // VTSS_TO_DEV_6
+			      <0x250000 0x0100>, // VTSS_TO_DEV_7
+			      <0x260000 0x0100>, // VTSS_TO_DEV_8
+			      <0x270000 0x0100>, // VTSS_TO_DEV_9
+			      <0x280000 0x0100>, // VTSS_TO_DEV_10
+			      <0x290000 0x0100>, // VTSS_TO_DEV_11
+			      <0x2a0000 0x0100>, // VTSS_TO_DEV_12
+			      <0x2b0000 0x0100>, // VTSS_TO_DEV_13
+			      <0x2c0000 0x0100>, // VTSS_TO_DEV_14
+			      <0x2d0000 0x0100>, // VTSS_TO_DEV_15
+			      <0x2e0000 0x0100>, // VTSS_TO_DEV_16
+			      <0x2f0000 0x0100>, // VTSS_TO_DEV_17
+			      <0x300000 0x0100>, // VTSS_TO_DEV_18
+			      <0x310000 0x0100>, // VTSS_TO_DEV_19
+			      <0x320000 0x0100>, // VTSS_TO_DEV_20
+			      <0x330000 0x0100>, // VTSS_TO_DEV_21
+			      <0x340000 0x0100>, // VTSS_TO_DEV_22
+			      <0x350000 0x0100>, // VTSS_TO_DEV_23
+			      <0x010000 0x1000>, // VTSS_TO_SYS
+			      <0x020000 0x1000>, // VTSS_TO_ANA
+			      <0x030000 0x1000>, // VTSS_TO_REW
+			      <0x070000 0x1000>, // VTSS_TO_DEVCPU_GCB
+			      <0x080000 0x0100>, // VTSS_TO_DEVCPU_QS
+			      <0x0a0000 0x0100>; // VTSS_TO_HSIO
+			reg-names = "port0", "port1", "port2", "port3",
+				    "port4", "port5", "port6", "port7",
+				    "port8", "port9", "port10", "port11",
+				    "port12", "port13", "port14", "port15",
+				    "port16", "port17", "port18", "port19",
+				    "port20", "port21", "port22", "port23",
+				    "sys", "ana", "rew", "gcb", "qs", "hsio";
+			status = "okay";
+
+			ethernet-ports {
+				#address-cells = <1>;
+				#size-cells = <0>;
+
+				port0: port@0 {
+					reg = <0>;
+				};
+				port1: port@1 {
+					reg = <1>;
+				};
+				port2: port@2 {
+					reg = <2>;
+				};
+				port3: port@3 {
+					reg = <3>;
+				};
+				port4: port@4 {
+					reg = <4>;
+				};
+				port5: port@5 {
+					reg = <5>;
+				};
+				port6: port@6 {
+					reg = <6>;
+				};
+				port7: port@7 {
+					reg = <7>;
+				};
+				port8: port@8 {
+					reg = <8>;
+				};
+				port9: port@9 {
+					reg = <9>;
+				};
+				port10: port@10 {
+					reg = <10>;
+				};
+				port11: port@11 {
+					reg = <11>;
+				};
+				port12: port@12 {
+					reg = <12>;
+				};
+				port13: port@13 {
+					reg = <13>;
+				};
+				port14: port@14 {
+					reg = <14>;
+				};
+				port15: port@15 {
+					reg = <15>;
+				};
+				port16: port@16 {
+					reg = <16>;
+				};
+				port17: port@17 {
+					reg = <17>;
+				};
+				port18: port@18 {
+					reg = <18>;
+				};
+				port19: port@19 {
+					reg = <19>;
+				};
+				port20: port@20 {
+					reg = <20>;
+				};
+				port21: port@21 {
+					reg = <21>;
+				};
+				port22: port@22 {
+					reg = <22>;
+				};
+				port23: port@23 {
+					reg = <23>;
+				};
+			};
+		};
+
+		mdio0: mdio@700a0 {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			compatible = "mscc,luton-miim";
+			reg = <0x700a0 0x24>;
+			status = "disabled";
+
+			phy0: ethernet-phy@0 {
+				reg = <0>;
+			};
+			phy1: ethernet-phy@1 {
+				reg = <1>;
+			};
+			phy2: ethernet-phy@2 {
+				reg = <2>;
+			};
+			phy3: ethernet-phy@3 {
+				reg = <3>;
+			};
+			phy4: ethernet-phy@4 {
+				reg = <4>;
+			};
+			phy5: ethernet-phy@5 {
+				reg = <5>;
+			};
+			phy6: ethernet-phy@6 {
+				reg = <6>;
+			};
+			phy7: ethernet-phy@7 {
+				reg = <7>;
+			};
+			phy8: ethernet-phy@8 {
+				reg = <8>;
+			};
+			phy9: ethernet-phy@9 {
+				reg = <9>;
+			};
+			phy10: ethernet-phy@10 {
+				reg = <10>;
+			};
+			phy11: ethernet-phy@11 {
+				reg = <11>;
+			};
+		};
 	};
 };