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

Commit 9aa30f1c authored by Thomas Petazzoni's avatar Thomas Petazzoni Committed by Jason Cooper
Browse files

ARM: mvebu: add initial support for the Armada 380/385 SOCs



This commit adds the basic support for the Armada 380 and Armada 385
SOCs. These SoCs share most of their IP with the Armada 370/XP
SoCs. The main difference is the use of a Cortex A9 CPU instead of the
PJ4B CPU. The Armada 380 is a single core Cortex-A9, while the Armada
385 is a dual-core Cortex-A9.

The support is introduced in board-v7.c, together with Armada 370/XP,
but a separate DT structure is added, because Armada 38x will need a
different set of SMP operations when the SMP support is introduced.

Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
parent ca4a6f87
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
Marvell Armada 38x Platforms Device Tree Bindings
-------------------------------------------------

Boards with a SoC of the Marvell Armada 38x family shall have the
following property:

Required root node property:

 - compatible: must contain either "marvell,armada380" or
   "marvell,armada385" depending on the variant of the SoC being used.
+14 −0
Original line number Diff line number Diff line
@@ -51,6 +51,20 @@ config MACH_ARMADA_375
	  Say 'Y' here if you want your kernel to support boards based
	  on the Marvell Armada 375 SoC with device tree.

config MACH_ARMADA_38X
	bool "Marvell Armada 380/385 boards"
	select ARM_ERRATA_720789
	select ARM_ERRATA_753970
	select ARM_GIC
	select ARMADA_38X_CLK
	select CPU_V7
	select MACH_MVEBU_V7
	select NEON
	select PINCTRL_ARMADA_38X
	help
	  Say 'Y' here if you want your kernel to support boards based
	  on the Marvell Armada 380/385 SoC with device tree.

config MACH_ARMADA_XP
	bool "Marvell Armada XP boards"
	select ARMADA_XP_CLK
+12 −0
Original line number Diff line number Diff line
@@ -125,3 +125,15 @@ DT_MACHINE_START(ARMADA_375_DT, "Marvell Armada 375 (Device Tree)")
	.restart	= mvebu_restart,
	.dt_compat	= armada_375_dt_compat,
MACHINE_END

static const char * const armada_38x_dt_compat[] = {
	"marvell,armada380",
	"marvell,armada385",
	NULL,
};

DT_MACHINE_START(ARMADA_38X_DT, "Marvell Armada 380/385 (Device Tree)")
	.init_time	= mvebu_timer_and_clk_init,
	.restart	= mvebu_restart,
	.dt_compat	= armada_38x_dt_compat,
MACHINE_END