GNU Linux-libre 4.14.266-gnu1
[releases.git] / arch / arm / mach-imx / imx31-dt.c
1 /*
2  * Copyright 2012 Sascha Hauer, Pengutronix
3  *
4  * The code contained herein is licensed under the GNU General Public
5  * License. You may obtain a copy of the GNU General Public License
6  * Version 2 or later at the following locations:
7  *
8  * http://www.opensource.org/licenses/gpl-license.html
9  * http://www.gnu.org/copyleft/gpl.html
10  */
11
12 #include <linux/irq.h>
13 #include <linux/of_irq.h>
14 #include <linux/of_platform.h>
15 #include <asm/mach/arch.h>
16 #include <asm/mach/time.h>
17
18 #include "common.h"
19 #include "mx31.h"
20
21 static const char * const imx31_dt_board_compat[] __initconst = {
22         "fsl,imx31",
23         NULL
24 };
25
26 /* FIXME: replace with DT binding */
27 static const struct resource imx31_rnga_res[] __initconst = {
28         DEFINE_RES_MEM(MX31_RNGA_BASE_ADDR, SZ_16K),
29 };
30
31 static void __init imx31_dt_mach_init(void)
32 {
33         platform_device_register_simple("mxc_rnga", -1, imx31_rnga_res,
34                                         ARRAY_SIZE(imx31_rnga_res));
35 }
36
37 DT_MACHINE_START(IMX31_DT, "Freescale i.MX31 (Device Tree Support)")
38         .map_io         = mx31_map_io,
39         .init_early     = imx31_init_early,
40         .init_irq       = mx31_init_irq,
41         .init_machine   = imx31_dt_mach_init,
42         .dt_compat      = imx31_dt_board_compat,
43 MACHINE_END