blob: d076c5771adc2f0e17f895370e59ac0d747a08c7 [file] [log] [blame]
Arnd Bergmann48be9ac2013-02-28 18:19:16 +01001/*
Sebastian Hesselbarth00e8ec22014-03-01 09:39:38 +01002 * arch/arm/mach-mvebu/dove.c
Arnd Bergmann48be9ac2013-02-28 18:19:16 +01003 *
4 * Marvell Dove 88AP510 System On Chip FDT Board
5 *
6 * This file is licensed under the terms of the GNU General Public
7 * License version 2. This program is licensed "as is" without any
8 * warranty of any kind, whether express or implied.
9 */
10
11#include <linux/init.h>
Sebastian Hesselbarth00e8ec22014-03-01 09:39:38 +010012#include <linux/mbus.h>
Arnd Bergmann48be9ac2013-02-28 18:19:16 +010013#include <linux/of.h>
Russell King44e259a2015-07-15 19:59:36 +010014#include <linux/soc/dove/pmu.h>
Arnd Bergmann48be9ac2013-02-28 18:19:16 +010015#include <asm/hardware/cache-tauros2.h>
16#include <asm/mach/arch.h>
Arnd Bergmann48be9ac2013-02-28 18:19:16 +010017#include "common.h"
18
Sebastian Hesselbarth00e8ec22014-03-01 09:39:38 +010019static void __init dove_init(void)
Arnd Bergmann48be9ac2013-02-28 18:19:16 +010020{
21 pr_info("Dove 88AP510 SoC\n");
22
23#ifdef CONFIG_CACHE_TAUROS2
24 tauros2_init(0);
25#endif
Thomas Petazzoni5686a1e2014-04-14 15:47:01 +020026 BUG_ON(mvebu_mbus_dt_init(false));
Russell King44e259a2015-07-15 19:59:36 +010027 dove_init_pmu();
Arnd Bergmann48be9ac2013-02-28 18:19:16 +010028}
29
Thomas Petazzonibc2d7a52015-03-03 15:40:56 +010030static const char * const dove_dt_compat[] __initconst = {
Arnd Bergmann48be9ac2013-02-28 18:19:16 +010031 "marvell,dove",
32 NULL
33};
34
Sebastian Hesselbarth00e8ec22014-03-01 09:39:38 +010035DT_MACHINE_START(DOVE_DT, "Marvell Dove")
36 .init_machine = dove_init,
37 .restart = mvebu_restart,
38 .dt_compat = dove_dt_compat,
Arnd Bergmann48be9ac2013-02-28 18:19:16 +010039MACHINE_END