18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * arch/arm/mach-mvebu/dove.c
38c2ecf20Sopenharmony_ci *
48c2ecf20Sopenharmony_ci * Marvell Dove 88AP510 System On Chip FDT Board
58c2ecf20Sopenharmony_ci *
68c2ecf20Sopenharmony_ci * This file is licensed under the terms of the GNU General Public
78c2ecf20Sopenharmony_ci * License version 2.  This program is licensed "as is" without any
88c2ecf20Sopenharmony_ci * warranty of any kind, whether express or implied.
98c2ecf20Sopenharmony_ci */
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci#include <linux/init.h>
128c2ecf20Sopenharmony_ci#include <linux/mbus.h>
138c2ecf20Sopenharmony_ci#include <linux/of.h>
148c2ecf20Sopenharmony_ci#include <linux/soc/dove/pmu.h>
158c2ecf20Sopenharmony_ci#include <asm/hardware/cache-tauros2.h>
168c2ecf20Sopenharmony_ci#include <asm/mach/arch.h>
178c2ecf20Sopenharmony_ci#include "common.h"
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_cistatic void __init dove_init(void)
208c2ecf20Sopenharmony_ci{
218c2ecf20Sopenharmony_ci	pr_info("Dove 88AP510 SoC\n");
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci#ifdef CONFIG_CACHE_TAUROS2
248c2ecf20Sopenharmony_ci	tauros2_init(0);
258c2ecf20Sopenharmony_ci#endif
268c2ecf20Sopenharmony_ci	BUG_ON(mvebu_mbus_dt_init(false));
278c2ecf20Sopenharmony_ci	dove_init_pmu();
288c2ecf20Sopenharmony_ci}
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_cistatic const char * const dove_dt_compat[] __initconst = {
318c2ecf20Sopenharmony_ci	"marvell,dove",
328c2ecf20Sopenharmony_ci	NULL
338c2ecf20Sopenharmony_ci};
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ciDT_MACHINE_START(DOVE_DT, "Marvell Dove")
368c2ecf20Sopenharmony_ci	.init_machine	= dove_init,
378c2ecf20Sopenharmony_ci	.restart	= mvebu_restart,
388c2ecf20Sopenharmony_ci	.dt_compat	= dove_dt_compat,
398c2ecf20Sopenharmony_ciMACHINE_END
40