GNU Linux-libre 5.4.274-gnu1
[releases.git] / arch / arm / mach-mmp / mmp-dt.c
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  *  linux/arch/arm/mach-mmp/mmp-dt.c
4  *
5  *  Copyright (C) 2012 Marvell Technology Group Ltd.
6  *  Author: Haojian Zhuang <haojian.zhuang@marvell.com>
7  */
8
9 #include <linux/irqchip.h>
10 #include <linux/of_platform.h>
11 #include <linux/clk-provider.h>
12 #include <asm/mach/arch.h>
13 #include <asm/mach/time.h>
14 #include <asm/hardware/cache-tauros2.h>
15
16 #include "common.h"
17
18 extern void __init mmp_dt_init_timer(void);
19
20 static const char *const pxa168_dt_board_compat[] __initconst = {
21         "mrvl,pxa168-aspenite",
22         NULL,
23 };
24
25 static const char *const pxa910_dt_board_compat[] __initconst = {
26         "mrvl,pxa910-dkb",
27         NULL,
28 };
29
30 static void __init mmp_init_time(void)
31 {
32 #ifdef CONFIG_CACHE_TAUROS2
33         tauros2_init(0);
34 #endif
35         mmp_dt_init_timer();
36         of_clk_init(NULL);
37 }
38
39 DT_MACHINE_START(PXA168_DT, "Marvell PXA168 (Device Tree Support)")
40         .map_io         = mmp_map_io,
41         .init_time      = mmp_init_time,
42         .dt_compat      = pxa168_dt_board_compat,
43 MACHINE_END
44
45 DT_MACHINE_START(PXA910_DT, "Marvell PXA910 (Device Tree Support)")
46         .map_io         = mmp_map_io,
47         .init_time      = mmp_init_time,
48         .dt_compat      = pxa910_dt_board_compat,
49 MACHINE_END