aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-zynq/common.c13
-rw-r--r--arch/arm/mach-zynq/common.h4
-rw-r--r--arch/arm/mach-zynq/timer.c10
3 files changed, 15 insertions, 12 deletions
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index ba8d14f78d4d..6f058258b491 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -25,6 +25,7 @@
25 25
26#include <asm/mach/arch.h> 26#include <asm/mach/arch.h>
27#include <asm/mach/map.h> 27#include <asm/mach/map.h>
28#include <asm/mach/time.h>
28#include <asm/mach-types.h> 29#include <asm/mach-types.h>
29#include <asm/page.h> 30#include <asm/page.h>
30#include <asm/hardware/gic.h> 31#include <asm/hardware/gic.h>
@@ -93,6 +94,18 @@ static struct map_desc io_desc[] __initdata = {
93 94
94}; 95};
95 96
97static void __init xilinx_zynq_timer_init(void)
98{
99 xttcpss_timer_init();
100}
101
102/*
103 * Instantiate and initialize the system timer structure
104 */
105static struct sys_timer xttcpss_sys_timer = {
106 .init = xilinx_zynq_timer_init,
107};
108
96/** 109/**
97 * xilinx_map_io() - Create memory mappings needed for early I/O. 110 * xilinx_map_io() - Create memory mappings needed for early I/O.
98 */ 111 */
diff --git a/arch/arm/mach-zynq/common.h b/arch/arm/mach-zynq/common.h
index a009644a1555..954b91c13c91 100644
--- a/arch/arm/mach-zynq/common.h
+++ b/arch/arm/mach-zynq/common.h
@@ -17,8 +17,6 @@
17#ifndef __MACH_ZYNQ_COMMON_H__ 17#ifndef __MACH_ZYNQ_COMMON_H__
18#define __MACH_ZYNQ_COMMON_H__ 18#define __MACH_ZYNQ_COMMON_H__
19 19
20#include <asm/mach/time.h> 20void __init xttcpss_timer_init(void);
21
22extern struct sys_timer xttcpss_sys_timer;
23 21
24#endif 22#endif
diff --git a/arch/arm/mach-zynq/timer.c b/arch/arm/mach-zynq/timer.c
index c2c96cc7d6e7..c93cbe55a495 100644
--- a/arch/arm/mach-zynq/timer.c
+++ b/arch/arm/mach-zynq/timer.c
@@ -24,7 +24,6 @@
24#include <linux/clockchips.h> 24#include <linux/clockchips.h>
25#include <linux/io.h> 25#include <linux/io.h>
26 26
27#include <asm/mach/time.h>
28#include <mach/zynq_soc.h> 27#include <mach/zynq_soc.h>
29#include "common.h" 28#include "common.h"
30 29
@@ -269,7 +268,7 @@ static struct clock_event_device xttcpss_clockevent = {
269 * Initializes the timer hardware and register the clock source and clock event 268 * Initializes the timer hardware and register the clock source and clock event
270 * timers with Linux kernal timer framework 269 * timers with Linux kernal timer framework
271 **/ 270 **/
272static void __init xttcpss_timer_init(void) 271void __init xttcpss_timer_init(void)
273{ 272{
274 xttcpss_timer_hardware_init(); 273 xttcpss_timer_hardware_init();
275 clocksource_register_hz(&clocksource_xttcpss, TIMER_RATE); 274 clocksource_register_hz(&clocksource_xttcpss, TIMER_RATE);
@@ -289,10 +288,3 @@ static void __init xttcpss_timer_init(void)
289 xttcpss_clockevent.cpumask = cpumask_of(0); 288 xttcpss_clockevent.cpumask = cpumask_of(0);
290 clockevents_register_device(&xttcpss_clockevent); 289 clockevents_register_device(&xttcpss_clockevent);
291} 290}
292
293/*
294 * Instantiate and initialize the system timer structure
295 */
296struct sys_timer xttcpss_sys_timer = {
297 .init = xttcpss_timer_init,
298};