// SPDX-License-Identifier: GPL-2.0
/dts-v1/;

#include "kirkwood.dtsi"
#include "kirkwood-6281.dtsi"

/ {
	model = "Globalscale Technologies Guruplug Server Plus";
	compatible = "globalscale,guruplug-server-plus", "globalscale,guruplug", "marvell,kirkwood-88f6281", "marvell,kirkwood";

	memory {
		device_type = "memory";
		reg = <0x00000000 0x20000000>;
	};

	chosen {
		bootargs = "console=ttyS0,115200n8 earlyprintk";
		stdout-path = &uart0;
	};

	ocp@f1000000 {
		pinctrl: pin-controller@10000 {
			pmx_led_health_r: pmx-led-health-r {
				marvell,pins = "mpp46";
				marvell,function = "gpio";
			};
			pmx_led_health_g: pmx-led-health-g {
				marvell,pins = "mpp47";
				marvell,function = "gpio";
			};
			pmx_led_wmode_r: pmx-led-wmode-r {
				marvell,pins = "mpp48";
				marvell,function = "gpio";
			};
			pmx_led_wmode_g: pmx-led-wmode-g {
				marvell,pins = "mpp49";
				marvell,function = "gpio";
			};
		};
		serial@12000 {
			status = "okay";
		};

		sata@80000 {
			status = "okay";
			nr-ports = <1>;
		};

		/* AzureWave AW-GH381 WiFi/BT */
		mvsdio@90000 {
			status = "okay";
			non-removable;
		};
	};

	gpio-leds {
		compatible = "gpio-leds";
		pinctrl-0 = < &pmx_led_health_r &pmx_led_health_g
			      &pmx_led_wmode_r &pmx_led_wmode_g >;
		pinctrl-names = "default";

		led-health-r {
			label = "guruplug:red:health";
			gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
		};
		led-health-g {
			label = "guruplug:green:health";
			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
		};
		led-wmode-r {
			label = "guruplug:red:wmode";
			gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
		};
		led-wmode-g {
			label = "guruplug:green:wmode";
			gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
		};
	};
};

&nand {
	status = "okay";

	partition@0 {
		label = "u-boot";
		reg = <0x00000000 0x00100000>;
		read-only;
	};

	partition@100000 {
		label = "uImage";
		reg = <0x00100000 0x00400000>;
	};

	partition@500000 {
		label = "data";
		reg = <0x00500000 0x1fb00000>;
	};
};

&mdio {
	status = "okay";

	ethphy0: ethernet-phy@0 {
		/* Marvell 88E1121R */
		compatible = "ethernet-phy-id0141.0cb0",
		             "ethernet-phy-ieee802.3-c22";
		reg = <0>;
	};

	ethphy1: ethernet-phy@1 {
		/* Marvell 88E1121R */
		compatible = "ethernet-phy-id0141.0cb0",
		             "ethernet-phy-ieee802.3-c22";
		reg = <1>;
	};
};

&eth0 {
	status = "okay";
	ethernet0-port@0 {
		phy-handle = <&ethphy0>;
		phy-connection-type = "rgmii-id";
	};
};

&eth1 {
	status = "okay";
	ethernet1-port@0 {
		phy-handle = <&ethphy1>;
		phy-connection-type = "rgmii-id";
	};
};
