/* * Copyright 2012 Sascha Hauer, Pengutronix * * The code contained herein is licensed under the GNU General Public * License. You may obtain a copy of the GNU General Public License * Version 2 or later at the following locations: * * http://www.opensource.org/licenses/gpl-license.html * http://www.gnu.org/copyleft/gpl.html */ #include <linux/irq.h> #include <linux/of_address.h> #include <linux/of_irq.h> #include <linux/of_platform.h> #include <asm/mach/arch.h> #include <asm/mach/time.h> #include "common.h" #include "hardware.h" static void __init imx25_init_early(void) { mxc_set_cpu_type(MXC_CPU_MX25); } static void __init mx25_init_irq(void) { struct device_node *np; void __iomem *avic_base; np = of_find_compatible_node(NULL, NULL, "fsl,avic"); avic_base = of_iomap(np, 0); BUG_ON(!avic_base); mxc_init_irq(avic_base); } static const char * const imx25_dt_board_compat[] __initconst = { "fsl,imx25", NULL }; DT_MACHINE_START(IMX25_DT, "Freescale i.MX25 (Device Tree Support)") .init_early = imx25_init_early, .init_late = imx25_pm_init, .init_irq = mx25_init_irq, .dt_compat = imx25_dt_board_compat, MACHINE_END |