Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4f48b7fc authored by Alan M Butler's avatar Alan M Butler Committed by Jason Cooper
Browse files

ARM: Kirkwood: Iomega ix2-200 DT support

Add support for the Iomega ix2-200.
Led's and buttons working as of kernel 3.6-rc2

the 3 lines in the network interface do seem to be required as
removing either causes the network card to not be able to reach
the network (at least on my device).

Product page:
http://go.iomega.com/en/products/network-storage-desktop/storcenter-network-storage-solution/network-hard-drive-ix2-200-cloud/?partner=4735#tech_specsItem_tab



Signed-off-by: default avatarAlan M Butler <alanbutty12@gmail.com>
Acked-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent 55d512e2
Loading
Loading
Loading
Loading
+105 −0
Original line number Diff line number Diff line
/dts-v1/;

/include/ "kirkwood.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 {
		i2c@11000 {
			status = "okay";

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

		serial@12000 {
			clock-frequency = <200000000>;
			status = "ok";
		};

		nand@3000000 {
			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>;
			};
		};
		sata@80000 {
			status = "okay";
			nr-ports = <2>;
		};

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

		power_led {
			label = "status:white:power_led";
			gpios = <&gpio0 16 0>;
			linux,default-trigger = "default-on";
		};
		health_led1 {
			label = "status:red:health_led";
			gpios = <&gpio1 5 0>;
		};
		health_led2 {
			label = "status:white:health_led";
			gpios = <&gpio1 4 0>;
		};
		backup_led {
			label = "status:blue:backup_led";
			gpios = <&gpio0 15 0>;
		};
	};
	gpio-keys {
		compatible = "gpio-keys";
		#address-cells = <1>;
		#size-cells = <0>;
		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>;
		};
	};
};
+7 −0
Original line number Diff line number Diff line
@@ -109,6 +109,13 @@ config MACH_LSXL_DT
	  Buffalo Linkstation LS-XHL & LS-CHLv2 devices, using
	  Flattened Device Tree.

config MACH_IOMEGA_IX2_200_DT
	bool "Iomega StorCenter ix2-200 (Flattened Device Tree)"
	select ARCH_KIRKWOOD_DT
	help
	  Say 'Y' here if you want your kernel to support the
	  Iomega StorCenter ix2-200 (Flattened Device Tree).

config MACH_TS219
	bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS"
	help
+1 −0
Original line number Diff line number Diff line
@@ -28,3 +28,4 @@ obj-$(CONFIG_MACH_IB62X0_DT) += board-ib62x0.o
obj-$(CONFIG_MACH_TS219_DT)		+= board-ts219.o tsx1x-common.o
obj-$(CONFIG_MACH_GOFLEXNET_DT)		+= board-goflexnet.o
obj-$(CONFIG_MACH_LSXL_DT)		+= board-lsxl.o
obj-$(CONFIG_MACH_IOMEGA_IX2_200_DT)	+= board-iomega_ix2_200.o
+1 −0
Original line number Diff line number Diff line
@@ -12,3 +12,4 @@ dtb-$(CONFIG_MACH_TS219_DT) += kirkwood-ts219-6282.dtb
dtb-$(CONFIG_MACH_GOFLEXNET_DT) += kirkwood-goflexnet.dtb
dtb-$(CONFIG_MACH_LSXL_DT) += kirkwood-lschlv2.dtb
dtb-$(CONFIG_MACH_LSXL_DT) += kirkwood-lsxhl.dtb
dtb-$(CONFIG_MACH_IOMEGA_IX2_200_DT) += kirkwood-iomega_ix2_200.dtb
+4 −0
Original line number Diff line number Diff line
@@ -87,6 +87,9 @@ static void __init kirkwood_dt_init(void)
	if (of_machine_is_compatible("buffalo,lsxl"))
		lsxl_init();

	if (of_machine_is_compatible("iom,ix2-200"))
		iomega_ix2_200_init();

	of_platform_populate(NULL, kirkwood_dt_match_table,
			     kirkwood_auxdata_lookup, NULL);
}
@@ -100,6 +103,7 @@ static const char *kirkwood_dt_board_compat[] = {
	"qnap,ts219",
	"seagate,goflexnet",
	"buffalo,lsxl",
	"iom,ix2-200",
	NULL
};

Loading