1 // SPDX-License-Identifier: GPL-2.0+ 2 /* 3 * Copyright (C) 2016 Freescale Semiconductor, Inc. 4 * Copyright 2017-2018 NXP 5 * Author: Dong Aisheng <aisheng.dong@nxp.com> 6 */ 7 8 #include <linux/irqchip.h> 9 #include <linux/of_platform.h> 10 #include <asm/mach/arch.h> 11 12 #include "common.h" 13 #include "cpuidle.h" 14 #include "hardware.h" 15 16 static void __init imx7ulp_init_machine(void) 17 { 18 imx7ulp_pm_init(); 19 20 mxc_set_cpu_type(MXC_CPU_IMX7ULP); 21 of_platform_default_populate(NULL, NULL, imx_soc_device_init()); 22 } 23 24 static const char *const imx7ulp_dt_compat[] __initconst = { 25 "fsl,imx7ulp", 26 NULL, 27 }; 28 29 static void __init imx7ulp_init_late(void) 30 { 31 imx7ulp_cpuidle_init(); 32 } 33 34 DT_MACHINE_START(IMX7ulp, "Freescale i.MX7ULP (Device Tree)") 35 .init_machine = imx7ulp_init_machine, 36 .dt_compat = imx7ulp_dt_compat, 37 .init_late = imx7ulp_init_late, 38 MACHINE_END 39