summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-zynq/common.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2011-07-07 11:35:20 +0000
committerArnd Bergmann <arnd@arndb.de>2011-07-07 14:13:58 +0000
commit3d64b4496f5fd90618106555344205a522178c0c (patch)
tree068d35fbfa11ac0553561b2ec5fec70d0d987ab6 /arch/arm/mach-zynq/common.c
parentb85a3ef4ac65169b65fd2fe9bec7912bbf475ba4 (diff)
ARM: Xilinx: merge board file into main platform code
The zynq platform will never have board files other than the device tree one, so there is no point splitting it from common.c. This makes the code more compact. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: John Linn <john.linn@xilinx.com>
Diffstat (limited to 'arch/arm/mach-zynq/common.c')
-rw-r--r--arch/arm/mach-zynq/common.c22
1 files changed, 19 insertions, 3 deletions
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index b3ac5c2e12d..73e93687b81 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -21,8 +21,11 @@
#include <linux/clk.h>
#include <linux/of_irq.h>
#include <linux/of_platform.h>
+#include <linux/of.h>
+#include <asm/mach/arch.h>
#include <asm/mach/map.h>
+#include <asm/mach-types.h>
#include <asm/page.h>
#include <asm/hardware/gic.h>
#include <asm/hardware/cache-l2x0.h>
@@ -40,7 +43,7 @@ static struct of_device_id zynq_of_bus_ids[] __initdata = {
* xilinx_init_machine() - System specific initialization, intended to be
* called from board specific initialization.
*/
-void __init xilinx_init_machine(void)
+static void __init xilinx_init_machine(void)
{
#ifdef CONFIG_CACHE_L2X0
/*
@@ -55,7 +58,7 @@ void __init xilinx_init_machine(void)
/**
* xilinx_irq_init() - Interrupt controller initialization for the GIC.
*/
-void __init xilinx_irq_init(void)
+static void __init xilinx_irq_init(void)
{
gic_init(0, 29, SCU_GIC_DIST_BASE, SCU_GIC_CPU_BASE);
}
@@ -96,7 +99,20 @@ static struct map_desc io_desc[] __initdata = {
/**
* xilinx_map_io() - Create memory mappings needed for early I/O.
*/
-void __init xilinx_map_io(void)
+static void __init xilinx_map_io(void)
{
iotable_init(io_desc, ARRAY_SIZE(io_desc));
}
+
+static const char *xilinx_dt_match[] = {
+ "xlnx,zynq-ep107",
+ NULL
+};
+
+MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform")
+ .map_io = xilinx_map_io,
+ .init_irq = xilinx_irq_init,
+ .init_machine = xilinx_init_machine,
+ .timer = &xttcpss_sys_timer,
+ .dt_compat = xilinx_dt_match,
+MACHINE_END