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