GNU Linux-libre 5.15.137-gnu
[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/of_clk.h>
12 #include <linux/clocksource.h>
13 #include <asm/mach/arch.h>
14 #include <asm/mach/time.h>
15 #include <asm/hardware/cache-tauros2.h>
16
17 #include "common.h"
18
19 static const char *const pxa168_dt_board_compat[] __initconst = {
20         "mrvl,pxa168-aspenite",
21         NULL,
22 };
23
24 static const char *const pxa910_dt_board_compat[] __initconst = {
25         "mrvl,pxa910-dkb",
26         NULL,
27 };
28
29 static void __init mmp_init_time(void)
30 {
31 #ifdef CONFIG_CACHE_TAUROS2
32         tauros2_init(0);
33 #endif
34         of_clk_init(NULL);
35         timer_probe();
36 }
37
38 DT_MACHINE_START(PXA168_DT, "Marvell PXA168 (Device Tree Support)")
39         .map_io         = mmp_map_io,
40         .init_time      = mmp_init_time,
41         .dt_compat      = pxa168_dt_board_compat,
42 MACHINE_END
43
44 DT_MACHINE_START(PXA910_DT, "Marvell PXA910 (Device Tree Support)")
45         .map_io         = mmp_map_io,
46         .init_time      = mmp_init_time,
47         .dt_compat      = pxa910_dt_board_compat,
48 MACHINE_END