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

Commit 0d0632f5 authored by Thomas Petazzoni's avatar Thomas Petazzoni Committed by Jason Cooper
Browse files

arm: kirkwood: convert db-88f6281/db-88f6282 to the Device Tree



This commit converts the Marvell DB-88F6281/DB-88F6282 board to the
Device Tree. In fact, the code was supporting two different boards:
one with the 6281 SoC variant, and one with the 6282 SoC variant. The
difference between the two being that the 6281 has one PCIe interface,
and the 6282 has two PCIe interfaces.

In order to handle that with the Device Tree, we create a
'kirkwood-db.dtsi' file that contains the definitions common to both
boards, and 'kirkwood-db-88f6281.dts' and 'kirkwood-db-88f6282.dts'
for the definitions specific to each board. This is similar to what is
done for the QNAP TS219 Kirkwood platform.

We have kept one single Kconfig option, just like it was before.

Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent 259e2346
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -64,6 +64,8 @@ dtb-$(CONFIG_ARCH_INTEGRATOR) += integratorap.dtb \
	integratorcp.dtb
dtb-$(CONFIG_ARCH_LPC32XX) += ea3250.dtb phy3250.dtb
dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
	kirkwood-db-88f6281.dtb \
	kirkwood-db-88f6282.dtb \
	kirkwood-dns320.dtb \
	kirkwood-dns325.dtb \
	kirkwood-dockstar.dtb \
+30 −0
Original line number Diff line number Diff line
/*
 * Marvell DB-88F6281-BP Development Board Setup
 *
 * Saeed Bishara <saeed@marvell.com>
 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 *
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 */

/dts-v1/;

/include/ "kirkwood-db.dtsi"
/include/ "kirkwood-6281.dtsi"

/ {
	model = "Marvell DB-88F6281-BP Development Board";
	compatible = "marvell,db-88f6281-bp", "marvell,kirkwood-88f6281", "marvell,kirkwood";

	ocp@f1000000 {
		pcie-controller {
			status = "okay";

			pcie@1,0 {
				status = "okay";
			};
		};
	};
};
+34 −0
Original line number Diff line number Diff line
/*
 * Marvell DB-88F6282-BP Development Board Setup
 *
 * Saeed Bishara <saeed@marvell.com>
 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 *
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 */

/dts-v1/;

/include/ "kirkwood-db.dtsi"
/include/ "kirkwood-6282.dtsi"

/ {
	model = "Marvell DB-88F6282-BP Development Board";
	compatible = "marvell,db-88f6282-bp", "marvell,kirkwood-88f6282", "marvell,kirkwood";

	ocp@f1000000 {
		pcie-controller {
			status = "okay";

			pcie@1,0 {
				status = "okay";
			};

			pcie@2,0 {
				status = "okay";
			};
		};
	};
};
+89 −0
Original line number Diff line number Diff line
/*
 * Marvell DB-{88F6281,88F6282}-BP Development Board Setup
 *
 * Saeed Bishara <saeed@marvell.com>
 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 *
 * This file is licensed under the terms of the GNU General Public
 * License version 2.  This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 *
 * This file contains the definitions that are common between the 6281
 * and 6282 variants of the Marvell Kirkwood Development Board.
 */

/include/ "kirkwood.dtsi"

/ {
	memory {
		device_type = "memory";
		reg = <0x00000000 0x20000000>; /* 512 MB */
	};

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

	ocp@f1000000 {
		pinctrl@10000 {
			pmx_sdio_gpios: pmx-sdio-gpios {
				marvell,pins = "mpp37", "mpp38";
				marvell,function = "gpio";
			};
		};

		serial@12000 {
			pinctrl-0 = <&pmx_uart0>;
			pinctrl-names = "default";
			clock-frequency = <200000000>;
			status = "ok";
		};

		nand@3000000 {
			pinctrl-0 = <&pmx_nand>;
			pinctrl-names = "default";
			chip-delay = <25>;
			status = "okay";

			partition@0 {
				label = "uboot";
				reg = <0x0 0x100000>;
			};

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

			partition@500000 {
				label = "root";
				reg = <0x500000 0x1fb00000>;
			};
		};

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

		ehci@50000 {
			status = "okay";
		};

		mvsdio@90000 {
			pinctrl-0 = <&pmx_sdio_gpios>;
			pinctrl-names = "default";
			wp-gpios = <&gpio1 5 0>;
			cd-gpios = <&gpio1 6 0>;
			status = "okay";
		};

		pcie-controller {
			status = "okay";

			pcie@1,0 {
				status = "okay";
			};
		};
	};
};
+7 −6
Original line number Diff line number Diff line
@@ -8,12 +8,6 @@ config MACH_D2NET_V2
	  Say 'Y' here if you want your kernel to support the
	  LaCie d2 Network v2 NAS.

config MACH_DB88F6281_BP
	bool "Marvell DB-88F6281-BP Development Board"
	help
	  Say 'Y' here if you want your kernel to support the
	  Marvell DB-88F6281-BP Development Board.

config MACH_DOCKSTAR
	bool "Seagate FreeAgent DockStar"
	help
@@ -153,6 +147,13 @@ config MACH_CLOUDBOX_DT
	  Say 'Y' here if you want your kernel to support the LaCie
	  CloudBox NAS, using Flattened Device Tree.

config MACH_DB88F628X_BP_DT
	bool "Marvell DB-88F628x-BP Development Board (Flattened Device Tree)"
	help
	  Say 'Y' here if you want your kernel to support the Marvell
	  DB-88F6281-BP and DB-88F6282-BP Development Board (Flattened
	  Device Tree).

config MACH_DLINK_KIRKWOOD_DT
	bool "D-Link Kirkwood-based NAS (Flattened Device Tree)"
	select ARCH_KIRKWOOD_DT
Loading