/dts-v1/;

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

/ {
	model = "Iomega StorCenter ix2-200";
	compatible = "iom,ix2-200", "marvell,kirkwood-88f6281", "marvell,kirkwood";

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

	chosen {
		bootargs = "console=ttyS0,115200n8 earlyprintk";
	};

	ocp@f1000000 {
		pinctrl: pinctrl@10000 {
			pinctrl-0 = < &pmx_led_sata_brt_ctrl_1
				      &pmx_led_sata_brt_ctrl_2
				      &pmx_led_backup_brt_ctrl_1
				      &pmx_led_backup_brt_ctrl_2
				      &pmx_led_power_brt_ctrl_1
				      &pmx_led_power_brt_ctrl_2
				      &pmx_led_health_brt_ctrl_1
				      &pmx_led_health_brt_ctrl_2
				      &pmx_led_rebuild_brt_ctrl_1
				      &pmx_led_rebuild_brt_ctrl_2 >;
			pinctrl-names = "default";

			pmx_button_reset: pmx-button-reset {
				marvell,pins = "mpp12";
				marvell,function = "gpio";
			};
			pmx_button_power: pmx-button-power {
				marvell,pins = "mpp14";
				marvell,function = "gpio";
			};
			pmx_led_backup: pmx-led-backup {
				marvell,pins = "mpp15";
				marvell,function = "gpio";
			};
			pmx_led_power: pmx-led-power {
				marvell,pins = "mpp16";
				marvell,function = "gpio";
			};
			pmx_button_otb: pmx-button-otb {
				marvell,pins = "mpp35";
				marvell,function = "gpio";
			};
			pmx_led_rebuild: pmx-led-rebuild {
				marvell,pins = "mpp36";
				marvell,function = "gpio";
			};
			pmx_led_health: pmx-led_health {
				marvell,pins = "mpp37";
				marvell,function = "gpio";
			};
			pmx_led_sata_brt_ctrl_1: pmx-led-sata-brt-ctrl-1 {
				marvell,pins = "mpp38";
				marvell,function = "gpio";
			};
			pmx_led_sata_brt_ctrl_2: pmx-led-sata-brt-ctrl-2 {
				marvell,pins = "mpp39";
				marvell,function = "gpio";
			};
			pmx_led_backup_brt_ctrl_1: pmx-led-backup-brt-ctrl-1 {
				marvell,pins = "mpp40";
				marvell,function = "gpio";
			};
			pmx_led_backup_brt_ctrl_2: pmx-led-backup-brt-ctrl-2 {
				marvell,pins = "mpp41";
				marvell,function = "gpio";
			};
			pmx_led_power_brt_ctrl_1: pmx-led-power-brt-ctrl-1 {
				marvell,pins = "mpp42";
				marvell,function = "gpio";
			};
			pmx_led_power_brt_ctrl_2: pmx-led-power-brt-ctrl-2 {
				marvell,pins = "mpp43";
				marvell,function = "gpio";
			};
			pmx_led_health_brt_ctrl_1: pmx-led-health-brt-ctrl-1 {
				marvell,pins = "mpp44";
				marvell,function = "gpio";
			};
			pmx_led_health_brt_ctrl_2: pmx-led-health-brt-ctrl-2 {
				marvell,pins = "mpp45";
				marvell,function = "gpio";
			};
			pmx_led_rebuild_brt_ctrl_1: pmx-led-rebuild-brt-ctrl-1 {
				marvell,pins = "mpp46";
				marvell,function = "gpio";
			};
			pmx_led_rebuild_brt_ctrl_2: pmx-led-rebuild-brt-ctrl-2 {
				marvell,pins = "mpp47";
				marvell,function = "gpio";
			};

		};
		i2c@11000 {
			status = "okay";

			lm63: lm63@4c {
				compatible = "national,lm63";
				reg = <0x4c>;
			};
		};

		serial@12000 {
			status = "ok";
		};

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

	};
	gpio-leds {
		compatible = "gpio-leds";
		pinctrl-0 = < &pmx_led_backup &pmx_led_power
			      &pmx_led_rebuild &pmx_led_health >;
		pinctrl-names = "default";

		power_led {
			label = "status:white:power_led";
			gpios = <&gpio0 16 0>;
			linux,default-trigger = "default-on";
		};
		rebuild_led {
			label = "status:white:rebuild_led";
			gpios = <&gpio1 4 0>;
		};
		health_led {
			label = "status:red:health_led";
			gpios = <&gpio1 5 0>;
		};
		backup_led {
			label = "status:blue:backup_led";
			gpios = <&gpio0 15 0>;
		};
	};
	gpio-keys {
		compatible = "gpio-keys";
		#address-cells = <1>;
		#size-cells = <0>;
		pinctrl-0 = <&pmx_button_reset &pmx_button_power
			     &pmx_button_otb>;
		pinctrl-names = "default";


		Power {
			label = "Power Button";
			linux,code = <116>;
			gpios = <&gpio0 14 1>;
		};
		Reset {
			label = "Reset Button";
			linux,code = <0x198>;
			gpios = <&gpio0 12 1>;
		};
		OTB {
			label = "OTB Button";
			linux,code = <133>;
			gpios = <&gpio1 3 1>;
		};
	};
};

&nand {
	status = "okay";

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

	partition@a0000 {
		label = "env";
		reg = <0xa0000 0x20000>;
		read-only;
	};

	partition@100000 {
		label = "uImage";
		reg = <0x100000 0x300000>;
	};

	partition@400000 {
		label = "uInitrd";
		reg = <0x540000 0x1000000>;
	};
};

&mdio {
	status = "okay";

	ethphy1: ethernet-phy@11 {
		device_type = "ethernet-phy";
		reg = <11>;
	};
};

&eth0 {
	status = "okay";
	ethernet0-port@0 {
		speed = <1000>;
		duplex = <1>;
	};
};

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