Loading...
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2018 Microsemi Corporation
 */

/dts-v1/;
#include "mscc,luton.dtsi"
#include <dt-bindings/mscc/luton_data.h>

/ {
	model = "Luton26 PCB090 Reference Board";
	compatible = "mscc,luton-pcb090", "mscc,luton";

	aliases {
		serial0 = &uart0;
		spi0 = &spi0;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	gpio-leds {
		compatible = "gpio-leds";

		status_green {
			label = "pcb090:green:status";
			gpios = <&sgpio 64 GPIO_ACTIVE_HIGH>; /* p0.2 */
			default-state = "on";
		};

		status_red {
			label = "pcb090:red:status";
			gpios = <&sgpio 65 GPIO_ACTIVE_HIGH>; /* p1.2 */
			default-state = "off";
		};
	};
};

&sgpio {
	status = "okay";
	gpio-ranges = <&sgpio 0 0 96>;
};

&uart0 {
	status = "okay";
};

&spi0 {
	status = "okay";
	spi-flash@0 {
		compatible = "jedec,spi-nor";
		spi-max-frequency = <18000000>; /* input clock */
		reg = <0>; /* CS0 */
		spi-cs-high;
	};
};

&mdio0 {
	status = "okay";

	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>;
	};
};

&mdio1 {
	status = "okay";

	phy12: ethernet-phy@12 {
		reg = <0>;
	};
	phy13: ethernet-phy@13 {
		reg = <1>;
	};
	phy14: ethernet-phy@14 {
		reg = <2>;
	};
	phy15: ethernet-phy@15 {
		reg = <3>;
	};
	phy16: ethernet-phy@16 {
		reg = <4>;
	};
	phy17: ethernet-phy@17 {
		reg = <5>;
	};
	phy18: ethernet-phy@18 {
		reg = <6>;
	};
	phy19: ethernet-phy@19 {
		reg = <7>;
	};
	phy20: ethernet-phy@20 {
		reg = <8>;
	};
	phy21: ethernet-phy@21 {
		reg = <9>;
	};
	phy22: ethernet-phy@22 {
		reg = <10>;
	};
	phy23: ethernet-phy@23 {
		reg = <11>;
	};
};

&switch {
	ethernet-ports {
		port0: port@0 {
			reg = <0>;
			phy-handle = <&phy0>;
		};
		port1: port@1 {
			reg = <1>;
			phy-handle = <&phy1>;
		};
		port2: port@2 {
			reg = <2>;
			phy-handle = <&phy2>;
		};
		port3: port@3 {
			reg = <3>;
			phy-handle = <&phy3>;
		};
		port4: port@4 {
			reg = <4>;
			phy-handle = <&phy4>;
		};
		port5: port@5 {
			reg = <5>;
			phy-handle = <&phy5>;
		};
		port6: port@6 {
			reg = <6>;
			phy-handle = <&phy6>;
		};
		port7: port@7 {
			reg = <7>;
			phy-handle = <&phy7>;
		};
		port8: port@8 {
			reg = <8>;
			phy-handle = <&phy8>;
		};
		port9: port@9 {
			reg = <9>;
			phy-handle = <&phy9>;
		};
		port10: port@10 {
			reg = <10>;
			phy-handle = <&phy10>;
		};
		port11: port@11 {
			reg = <11>;
			phy-handle = <&phy11>;
		};
		port12: port@12 {
			reg = <12>;
			phy-handle = <&phy12>;
			phys = <&serdes_hsio 12 SERDES6G(1) PHY_MODE_QSGMII>;
		};
		port13: port@13 {
			reg = <13>;
			phy-handle = <&phy13>;
			phys = <&serdes_hsio 13 0xff PHY_MODE_QSGMII>;
		};
		port14: port@14 {
			reg = <14>;
			phy-handle = <&phy14>;
			phys = <&serdes_hsio 14 0xff PHY_MODE_QSGMII>;
		};
		port15: port@15 {
			reg = <15>;
			phy-handle = <&phy15>;
			phys = <&serdes_hsio 15 0xff PHY_MODE_QSGMII>;
		};
		port16: port@16 {
			reg = <16>;
			phy-handle = <&phy16>;
			phys = <&serdes_hsio 16 SERDES6G(2) PHY_MODE_QSGMII>;
		};
		port17: port@17 {
			reg = <17>;
			phy-handle = <&phy17>;
			phys = <&serdes_hsio 17 0xff PHY_MODE_QSGMII>;
		};
		port18: port@18 {
			reg = <18>;
			phy-handle = <&phy18>;
			phys = <&serdes_hsio 18 0xff PHY_MODE_QSGMII>;
		};
		port19: port@19 {
			reg = <19>;
			phy-handle = <&phy19>;
			phys = <&serdes_hsio 19 0xff PHY_MODE_QSGMII>;
		};
		port20: port@20 {
			reg = <20>;
			phy-handle = <&phy20>;
			phys = <&serdes_hsio 20 SERDES6G(3) PHY_MODE_QSGMII>;
		};
		port21: port@21 {
			reg = <21>;
			phy-handle = <&phy21>;
			phys = <&serdes_hsio 21 0xff PHY_MODE_QSGMII>;
		};
		port22: port@22 {
			reg = <22>;
			phy-handle = <&phy22>;
			phys = <&serdes_hsio 22 0xff PHY_MODE_QSGMII>;
		};
		port23: port@23 {
			reg = <23>;
			phy-handle = <&phy23>;
			phys = <&serdes_hsio 23 0xff PHY_MODE_QSGMII>;
		};
	};
};