| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- // SPDX-License-Identifier: GPL-2.0-only
- /*
- * Copyright (C) 2015 Freescale Semiconductor, Inc.
- */
- #include <linux/irqchip.h>
- #include <linux/of_platform.h>
- #include <asm/mach/arch.h>
- #include "common.h"
- #include "cpuidle.h"
- #include "hardware.h"
- static void __init imx6ul_init_machine(void)
- {
- imx_print_silicon_rev(cpu_is_imx6ull() ? "i.MX6ULL" : "i.MX6UL",
- imx_get_soc_revision());
- of_platform_default_populate(NULL, NULL, NULL);
- imx_anatop_init();
- imx6ul_pm_init();
- }
- static void __init imx6ul_init_irq(void)
- {
- imx_init_revision_from_anatop();
- imx_src_init();
- irqchip_init();
- imx6_pm_ccm_init("fsl,imx6ul-ccm");
- }
- static void __init imx6ul_init_late(void)
- {
- imx6sx_cpuidle_init();
- if (IS_ENABLED(CONFIG_ARM_IMX6Q_CPUFREQ))
- platform_device_register_simple("imx6q-cpufreq", -1, NULL, 0);
- }
- static const char * const imx6ul_dt_compat[] __initconst = {
- "fsl,imx6ul",
- "fsl,imx6ull",
- "fsl,imx6ulz",
- NULL,
- };
- DT_MACHINE_START(IMX6UL, "Freescale i.MX6 Ultralite (Device Tree)")
- .init_irq = imx6ul_init_irq,
- .init_machine = imx6ul_init_machine,
- .init_late = imx6ul_init_late,
- .dt_compat = imx6ul_dt_compat,
- MACHINE_END
|