summaryrefslogtreecommitdiff
path: root/arch/arm/mach-zynq/common.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2011-07-07 11:35:20 (GMT)
committerArnd Bergmann <arnd@arndb.de>2011-07-07 14:13:58 (GMT)
commit3d64b4496f5fd90618106555344205a522178c0c (patch)
tree068d35fbfa11ac0553561b2ec5fec70d0d987ab6 /arch/arm/mach-zynq/common.c
parentb85a3ef4ac65169b65fd2fe9bec7912bbf475ba4 (diff)
downloadlinux-3d64b4496f5fd90618106555344205a522178c0c.tar.xz
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 b3ac5c2..73e9368 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