summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mvebu/armada-370-xp.c
diff options
context:
space:
mode:
authorJason Cooper <jason@lakedaemon.net>2012-11-21 21:01:15 +0100
committerJason Cooper <jason@lakedaemon.net>2012-11-21 21:01:15 +0100
commit86b7d3f7797908914735da83eb30df9d81fbd50a (patch)
tree267be5e3d77265ee3feaa4507401eaea0b65f1ff /arch/arm/mach-mvebu/armada-370-xp.c
parentMerge tag 'marvell-net-xor-defconfig-for-3.8' of git://github.com/MISL-EBU-Sy... (diff)
parentarm: mvebu: Add SMP support for Armada XP (diff)
downloadlinux-86b7d3f7797908914735da83eb30df9d81fbd50a.tar.xz
linux-86b7d3f7797908914735da83eb30df9d81fbd50a.zip
Merge tag 'marvell-armadaxp-smp-for-3.8' of git://github.com/MISL-EBU-System-SW/mainline-public into mvebu/everything
SMP support for Armada XP The purpose of this series is to add the SMP support for the Armada XP SoCs. Beside the SMP support itself brought by the last 3 commits, this series also adds the support for the coherency fabric unit and the power management service unit. The coherency fabric is responsible for ensuring hardware coherency between all CPUs and between CPUs and I/O masters. This unit is also available for Armada 370 and will be used in an incoming patch set for hardware I/O cache coherency. The power management service unit is responsible for powering down and waking up CPUs and other SOC units.
Diffstat (limited to 'arch/arm/mach-mvebu/armada-370-xp.c')
-rw-r--r--arch/arm/mach-mvebu/armada-370-xp.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mach-mvebu/armada-370-xp.c b/arch/arm/mach-mvebu/armada-370-xp.c
index cd6eac17fb67..a9cf335c7cb0 100644
--- a/arch/arm/mach-mvebu/armada-370-xp.c
+++ b/arch/arm/mach-mvebu/armada-370-xp.c
@@ -24,6 +24,7 @@
#include <asm/mach/time.h>
#include "armada-370-xp.h"
#include "common.h"
+#include "coherency.h"
static struct map_desc armada_370_xp_io_desc[] __initdata = {
{
@@ -62,6 +63,7 @@ struct sys_timer armada_370_xp_timer = {
static void __init armada_370_xp_dt_init(void)
{
of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
+ coherency_init();
}
static const char * const armada_370_xp_dt_board_dt_compat[] = {
@@ -71,6 +73,7 @@ static const char * const armada_370_xp_dt_board_dt_compat[] = {
};
DT_MACHINE_START(ARMADA_XP_DT, "Marvell Aramada 370/XP (Device Tree)")
+ .smp = smp_ops(armada_xp_smp_ops),
.init_machine = armada_370_xp_dt_init,
.map_io = armada_370_xp_map_io,
.init_early = armada_370_xp_init_early,