1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 3 * Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru> 4 */ 5 6 #include <linux/of_platform.h> 7 #include <asm/mach/arch.h> 8 #include <asm/mach/map.h> 9 10 #include "common.h" 11 #include "hardware.h" 12 13 #define MX1_AVIC_ADDR 0x00223000 14 15 static void __init imx1_init_early(void) 16 { 17 mxc_set_cpu_type(MXC_CPU_MX1); 18 } 19 20 static void __init imx1_init_irq(void) 21 { 22 void __iomem *avic_addr; 23 24 avic_addr = ioremap(MX1_AVIC_ADDR, SZ_4K); 25 WARN_ON(!avic_addr); 26 27 mxc_init_irq(avic_addr); 28 } 29 30 static const char * const imx1_dt_board_compat[] __initconst = { 31 "fsl,imx1", 32 NULL 33 }; 34 35 DT_MACHINE_START(IMX1_DT, "Freescale i.MX1 (Device Tree Support)") 36 .init_early = imx1_init_early, 37 .init_irq = imx1_init_irq, 38 .dt_compat = imx1_dt_board_compat, 39 .restart = mxc_restart, 40 MACHINE_END 41