@@ -736,6 +736,20 @@ config SOC_VF610
help
This enable support for Freescale Vybrid VF610 processor.
+config SOC_LS1021A
+ bool "Freescale LS1021A support"
+ select CPU_V7
+ select ARM_GIC
+ select CLKSRC_OF
+ select HAVE_ARM_ARCH_TIMER
+ select HAVE_SMP
+ select MIGHT_HAVE_PCI
+ select PCI_DOMAINS if PCI
+ select ZONE_DMA if ARM_LPAE
+
+ help
+ This enable support for Freescale LS1021A processor.
+
endif
source "arch/arm/mach-imx/devices/Kconfig"
@@ -112,4 +112,6 @@ obj-$(CONFIG_SOC_IMX53) += mach-imx53.o
obj-$(CONFIG_SOC_VF610) += clk-vf610.o mach-vf610.o
+obj-$(CONFIG_SOC_LS1021A) += mach-ls1021a.o
+
obj-y += devices/
new file mode 100644
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2013-2014 Freescale Semiconductor, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+#include <linux/of_platform.h>
+#include <asm/mach/arch.h>
+
+#include "common.h"
+
+static void __init ls1021a_init_machine(void)
+{
+ mxc_arch_reset_init_dt();
+ of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
+}
+
+static const char *ls1021a_dt_compat[] __initdata = {
+ "fsl,ls1021a",
+ NULL,
+};
+
+DT_MACHINE_START(LS1021A, "Freescale LS1021A")
+#ifdef CONFIG_ZONE_DMA
+ .dma_zone_size = SZ_128M,
+#endif
+ .init_machine = ls1021a_init_machine,
+ .dt_compat = ls1021a_dt_compat,
+ .restart = mxc_restart,
+MACHINE_END