diff options
author | Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> | 2014-03-01 09:39:38 +0100 |
---|---|---|
committer | Jason Cooper <jason@lakedaemon.net> | 2014-03-04 04:13:48 +0000 |
commit | 00e8ec2f0b05bfc8acaf13cf91c2ca1e624f3535 (patch) | |
tree | a4d25fdc037d6996c3fa268994b4c0bdbb530969 /arch/arm/mach-mvebu | |
parent | 0d75ab68fd1a516f7a394fac6ba0f0ef34bbd18e (diff) | |
download | lwn-00e8ec2f0b05bfc8acaf13cf91c2ca1e624f3535.tar.gz lwn-00e8ec2f0b05bfc8acaf13cf91c2ca1e624f3535.zip |
ARM: mvebu: move DT Dove to MVEBU
With all the DT support preparation done, we are able to move Dove
to MVEBU easily. Legacy non-DT mach-dove is left untouched to rot
for a while before removal.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
Diffstat (limited to 'arch/arm/mach-mvebu')
-rw-r--r-- | arch/arm/mach-mvebu/Kconfig | 12 | ||||
-rw-r--r-- | arch/arm/mach-mvebu/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-mvebu/dove.c | 39 |
3 files changed, 52 insertions, 0 deletions
diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig index 4cfc4d8abcac..4fecf5d41d8d 100644 --- a/arch/arm/mach-mvebu/Kconfig +++ b/arch/arm/mach-mvebu/Kconfig @@ -75,6 +75,18 @@ config MACH_ARMADA_XP Say 'Y' here if you want your kernel to support boards based on the Marvell Armada XP SoC with device tree. +config MACH_DOVE + bool "Marvell Dove boards" if ARCH_MULTI_V7 + select CACHE_L2X0 + select CPU_PJ4 + select DOVE_CLK + select ORION_IRQCHIP + select ORION_TIMER + select PINCTRL_DOVE + help + Say 'Y' here if you want your kernel to support the + Marvell Dove using flattened device tree. + config MACH_KIRKWOOD bool "Marvell Kirkwood boards" if ARCH_MULTI_V5 select ARCH_HAS_CPUFREQ diff --git a/arch/arm/mach-mvebu/Makefile b/arch/arm/mach-mvebu/Makefile index bbeb41ee3e75..a63e43b6b451 100644 --- a/arch/arm/mach-mvebu/Makefile +++ b/arch/arm/mach-mvebu/Makefile @@ -5,6 +5,7 @@ AFLAGS_coherency_ll.o := -Wa,-march=armv7-a obj-y += system-controller.o mvebu-soc-id.o obj-$(CONFIG_MACH_MVEBU_V7) += board-v7.o +obj-$(CONFIG_MACH_DOVE) += dove.o obj-$(CONFIG_ARCH_MVEBU) += coherency.o coherency_ll.o pmsu.o obj-$(CONFIG_SMP) += platsmp.o headsmp.o obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o diff --git a/arch/arm/mach-mvebu/dove.c b/arch/arm/mach-mvebu/dove.c new file mode 100644 index 000000000000..5e5a43624237 --- /dev/null +++ b/arch/arm/mach-mvebu/dove.c @@ -0,0 +1,39 @@ +/* + * arch/arm/mach-mvebu/dove.c + * + * Marvell Dove 88AP510 System On Chip FDT Board + * + * 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. + */ + +#include <linux/init.h> +#include <linux/mbus.h> +#include <linux/of.h> +#include <linux/of_platform.h> +#include <asm/hardware/cache-tauros2.h> +#include <asm/mach/arch.h> +#include "common.h" + +static void __init dove_init(void) +{ + pr_info("Dove 88AP510 SoC\n"); + +#ifdef CONFIG_CACHE_TAUROS2 + tauros2_init(0); +#endif + BUG_ON(mvebu_mbus_dt_init()); + of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); +} + +static const char * const dove_dt_compat[] = { + "marvell,dove", + NULL +}; + +DT_MACHINE_START(DOVE_DT, "Marvell Dove") + .init_machine = dove_init, + .restart = mvebu_restart, + .dt_compat = dove_dt_compat, +MACHINE_END |