Commit 3d64b449 authored by Arnd Bergmann's avatar Arnd Bergmann

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: default avatarArnd Bergmann <arnd@arndb.de>
Acked-by: default avatarJohn Linn <john.linn@xilinx.com>
parent b85a3ef4
/*
* This file contains code for boards with device tree support.
*
* Copyright (C) 2011 Xilinx
*
* based on arch/arm/mach-realview/core.c
*
* Copyright (C) 1999 - 2003 ARM Limited
* Copyright (C) 2000 Deep Blue Solutions Ltd
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
* may be copied, distributed, and modified under those terms.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <linux/of.h>
#include <asm/mach/arch.h>
#include <asm/mach-types.h>
#include "common.h"
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
...@@ -21,8 +21,11 @@ ...@@ -21,8 +21,11 @@
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/of_irq.h> #include <linux/of_irq.h>
#include <linux/of_platform.h> #include <linux/of_platform.h>
#include <linux/of.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h> #include <asm/mach/map.h>
#include <asm/mach-types.h>
#include <asm/page.h> #include <asm/page.h>
#include <asm/hardware/gic.h> #include <asm/hardware/gic.h>
#include <asm/hardware/cache-l2x0.h> #include <asm/hardware/cache-l2x0.h>
...@@ -40,7 +43,7 @@ static struct of_device_id zynq_of_bus_ids[] __initdata = { ...@@ -40,7 +43,7 @@ static struct of_device_id zynq_of_bus_ids[] __initdata = {
* xilinx_init_machine() - System specific initialization, intended to be * xilinx_init_machine() - System specific initialization, intended to be
* called from board specific initialization. * called from board specific initialization.
*/ */
void __init xilinx_init_machine(void) static void __init xilinx_init_machine(void)
{ {
#ifdef CONFIG_CACHE_L2X0 #ifdef CONFIG_CACHE_L2X0
/* /*
...@@ -55,7 +58,7 @@ void __init xilinx_init_machine(void) ...@@ -55,7 +58,7 @@ void __init xilinx_init_machine(void)
/** /**
* xilinx_irq_init() - Interrupt controller initialization for the GIC. * 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); gic_init(0, 29, SCU_GIC_DIST_BASE, SCU_GIC_CPU_BASE);
} }
...@@ -96,7 +99,20 @@ static struct map_desc io_desc[] __initdata = { ...@@ -96,7 +99,20 @@ static struct map_desc io_desc[] __initdata = {
/** /**
* xilinx_map_io() - Create memory mappings needed for early I/O. * 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)); 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
...@@ -17,13 +17,8 @@ ...@@ -17,13 +17,8 @@
#ifndef __MACH_ZYNQ_COMMON_H__ #ifndef __MACH_ZYNQ_COMMON_H__
#define __MACH_ZYNQ_COMMON_H__ #define __MACH_ZYNQ_COMMON_H__
#include <linux/init.h>
#include <asm/mach/time.h> #include <asm/mach/time.h>
extern void xilinx_init_machine(void);
extern void xilinx_irq_init(void);
extern void xilinx_map_io(void);
extern struct sys_timer xttcpss_sys_timer; extern struct sys_timer xttcpss_sys_timer;
#endif #endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment