blob: 305a9daba6d68dbb16a007d986de6e77e636a90c [file] [log] [blame]
Thomas Gleixner1d0ea062019-05-29 16:57:46 -07001// SPDX-License-Identifier: GPL-2.0-only
Haojian Zhuanga56f9162012-04-19 17:46:53 +08002/*
3 * linux/arch/arm/mach-mmp/mmp2-dt.c
4 *
5 * Copyright (C) 2012 Marvell Technology Group Ltd.
6 * Author: Haojian Zhuang <haojian.zhuang@marvell.com>
Haojian Zhuanga56f9162012-04-19 17:46:53 +08007 */
8
9#include <linux/io.h>
Haojian Zhuang0f374562013-04-21 16:53:02 +080010#include <linux/irqchip.h>
Haojian Zhuanga56f9162012-04-19 17:46:53 +080011#include <linux/of_platform.h>
Chao Xied41ef542014-10-31 10:13:53 +080012#include <linux/clk-provider.h>
Haojian Zhuanga56f9162012-04-19 17:46:53 +080013#include <asm/mach/arch.h>
14#include <asm/mach/time.h>
Chao Xied41ef542014-10-31 10:13:53 +080015#include <asm/hardware/cache-tauros2.h>
Haojian Zhuanga56f9162012-04-19 17:46:53 +080016
17#include "common.h"
18
Haojian Zhuanga56f9162012-04-19 17:46:53 +080019extern void __init mmp_dt_init_timer(void);
20
Chao Xied41ef542014-10-31 10:13:53 +080021static void __init mmp_init_time(void)
Haojian Zhuanga56f9162012-04-19 17:46:53 +080022{
Chao Xied41ef542014-10-31 10:13:53 +080023#ifdef CONFIG_CACHE_TAUROS2
24 tauros2_init(0);
25#endif
Chao Xied41ef542014-10-31 10:13:53 +080026 of_clk_init(NULL);
Lubomir Rintele78ebdc2018-11-28 18:53:19 +010027 mmp_dt_init_timer();
Haojian Zhuanga56f9162012-04-19 17:46:53 +080028}
29
Nicolas Pitre19c233b2015-07-27 18:27:52 -040030static const char *const mmp2_dt_board_compat[] __initconst = {
Lubomir Rintelf491ac32018-12-02 12:38:48 +010031 "mrvl,mmp2",
Haojian Zhuanga56f9162012-04-19 17:46:53 +080032 NULL,
33};
34
35DT_MACHINE_START(MMP2_DT, "Marvell MMP2 (Device Tree Support)")
36 .map_io = mmp_map_io,
Chao Xied41ef542014-10-31 10:13:53 +080037 .init_time = mmp_init_time,
Haojian Zhuanga56f9162012-04-19 17:46:53 +080038 .dt_compat = mmp2_dt_board_compat,
39MACHINE_END