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

	ocp@f1000000 {
		pinctrl: pinctrl@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 {
			clock-frequency = <200000000>;
			status = "ok";
		};

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

		health-r {
			label = "guruplug:red:health";
			gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
		};
		health-g {
			label = "guruplug:green:health";
			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
		};
		wmode-r {
			label = "guruplug:red:wmode";
			gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
		};
		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 {
		device_type = "ethernet-phy";
		compatible = "marvell,88e1121";
		reg = <0>;
	};

	ethphy1: ethernet-phy@1 {
		device_type = "ethernet-phy";
		compatible = "marvell,88e1121";
		reg = <1>;
	};
};

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

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