xref: /linux/arch/arm/mach-mmp/mmp-dt.c (revision 91afb7c373e881d5038a78e1206a0f6469440ec3)
1 /*
2  *  linux/arch/arm/mach-mmp/mmp-dt.c
3  *
4  *  Copyright (C) 2012 Marvell Technology Group Ltd.
5  *  Author: Haojian Zhuang <haojian.zhuang@marvell.com>
6  *
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License version 2 as
9  *  publishhed by the Free Software Foundation.
10  */
11 
12 #include <linux/irqchip.h>
13 #include <linux/of_platform.h>
14 #include <linux/clk-provider.h>
15 #include <asm/mach/arch.h>
16 #include <asm/mach/time.h>
17 #include <asm/hardware/cache-tauros2.h>
18 
19 #include "common.h"
20 
21 extern void __init mmp_dt_init_timer(void);
22 
23 static const char *const pxa168_dt_board_compat[] __initconst = {
24 	"mrvl,pxa168-aspenite",
25 	NULL,
26 };
27 
28 static const char *const pxa910_dt_board_compat[] __initconst = {
29 	"mrvl,pxa910-dkb",
30 	NULL,
31 };
32 
33 static void __init mmp_init_time(void)
34 {
35 #ifdef CONFIG_CACHE_TAUROS2
36 	tauros2_init(0);
37 #endif
38 	mmp_dt_init_timer();
39 	of_clk_init(NULL);
40 }
41 
42 DT_MACHINE_START(PXA168_DT, "Marvell PXA168 (Device Tree Support)")
43 	.map_io		= mmp_map_io,
44 	.init_time	= mmp_init_time,
45 	.dt_compat	= pxa168_dt_board_compat,
46 MACHINE_END
47 
48 DT_MACHINE_START(PXA910_DT, "Marvell PXA910 (Device Tree Support)")
49 	.map_io		= mmp_map_io,
50 	.init_time	= mmp_init_time,
51 	.dt_compat	= pxa910_dt_board_compat,
52 MACHINE_END
53