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

Commit 0510c8a0 authored by Valentin Longchamp's avatar Valentin Longchamp Committed by Jason Cooper
Browse files

ARM: initial DTS support for km_kirkwood



This is a first attempt to support the km_kirkwood reference design with
a device tree. This km_kirkwood design is present in many Keymile
products. It is based on the Marvell Bobcat SOC which integrates a
Kirkwood CPU next to a big L2 Ethernet Switch. The Kirkwood in the SOC
is very similar to the "normal" one, but there are a few differences.

This initial support is minimal: the kernel can boot with network
(ge0), serial port and NAND functional.

Signed-off-by: default avatarValentin Longchamp <valentin.longchamp@keymile.com>
Cc: Holger Brunck <holger.brunck@keymile.com>
Acked-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent 90323467
Loading
Loading
Loading
Loading
+29 −0
Original line number Diff line number Diff line
/dts-v1/;

/include/ "kirkwood.dtsi"

/ {
	model = "Keymile Kirkwood Reference Design";
	compatible = "keymile,km_kirkwood", "marvell,kirkwood-98DX4122", "marvell,kirkwood";

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

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

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

		nand@3000000 {
			status = "ok";
			chip-delay = <25>;
		};
	};
};
+7 −0
Original line number Diff line number Diff line
@@ -123,6 +123,13 @@ config MACH_IOMEGA_IX2_200_DT
	  Say 'Y' here if you want your kernel to support the
	  Iomega StorCenter ix2-200 (Flattened Device Tree).

config MACH_KM_KIRKWOOD_DT
	bool "Keymile Kirkwood Reference Design (Flattened Device Tree)"
	select ARCH_KIRKWOOD_DT
	help
	  Say 'Y' here if you want your kernel to support the
	  Keymile Kirkwood Reference Desgin, using 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
@@ -30,3 +30,4 @@ obj-$(CONFIG_MACH_DOCKSTAR_DT) += board-dockstar.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
obj-$(CONFIG_MACH_KM_KIRKWOOD_DT)	+= board-km_kirkwood.o
+1 −0
Original line number Diff line number Diff line
@@ -14,3 +14,4 @@ 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
dtb-$(CONFIG_MACH_DOCKSTAR_DT) += kirkwood-dockstar.dtb
dtb-$(CONFIG_MACH_KM_KIRKWOOD_DT) += kirkwood-km_kirkwood.dtb
+4 −0
Original line number Diff line number Diff line
@@ -93,6 +93,9 @@ static void __init kirkwood_dt_init(void)
	if (of_machine_is_compatible("iom,ix2-200"))
		iomega_ix2_200_init();

	if (of_machine_is_compatible("keymile,km_kirkwood"))
		km_kirkwood_init();

	of_platform_populate(NULL, kirkwood_dt_match_table,
			     kirkwood_auxdata_lookup, NULL);
}
@@ -108,6 +111,7 @@ static const char *kirkwood_dt_board_compat[] = {
	"seagate,goflexnet",
	"buffalo,lsxl",
	"iom,ix2-200",
	"keymile,km_kirkwood",
	NULL
};

Loading