/dts-v1/;

#include "kirkwood.dtsi"
#include "kirkwood-6282.dtsi"

/ {
	model = "Cisco Systems ON100";
	compatible = "cisco,on100", "marvell,kirkwood-88f6282", "marvell,kirkwood";

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

	aliases {
		led-boot = &led_health_green;
		led-failsafe = &led_health_red;
		led-running = &led_health_green;
		led-upgrade = &led_health_red;
		serial0 = &uart0;
	};

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

	gpio-keys {
		compatible = "gpio-keys";

		pinctrl-0 = <&pmx_btn_reset>;
		pinctrl-names = "default";

		reset {
			label = "Reset Button";
			linux,code = <KEY_RESTART>;
			gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
		};
	};

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

		pinctrl-0 = <&pmx_led_health_red &pmx_led_health_green>;
		pinctrl-names = "default";

		led_health_green: health-green {
			label = "on100:green:health";
			gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
			default-state = "on";
		};

		led_health_red: health-red {
			label = "on100:red:health";
			gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
		};

		health2-green {
			label = "on100:green:health2";
			gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
		};

		health2-red {
			label = "on100:red:health2";
			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
		};
	};
};

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

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

&nand {
	status = "okay";

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

	partition@a0000 {
		label = "u-boot environment";
		reg = <0x000a0000 0x00020000>;
		read-only;
	};

	partition@c0000 {
		label = "kernel";
		reg = <0x000c0000 0x00540000>;
	};

	partition@600000 {
		label = "ubi";
		reg = <0x00600000 0x1fa00000>;
	};
};

&pinctrl {
	pmx_led_health_red: pmx-led-health-red {
		marvell,pins = "mpp45";
		marvell,function = "gpio";
	};

	pmx_led_health_green: pmx-led-health-green {
		marvell,pins = "mpp44";
		marvell,function = "gpio";
	};

	pmx_led_health2_red: pmx-led-health2-red {
		marvell,pins = "mpp47";
		marvell,function = "gpio";
	};

	pmx_led_health2_green: pmx-led-health2-green {
		marvell,pins = "mpp46";
		marvell,function = "gpio";
	};

	pmx_btn_reset: pmx-btn-reset {
		marvell,pins = "mpp31";
		marvell,function = "gpio";
	};
};

&sdio {
	status = "okay";
};

&uart0 {
	status = "okay";
};
