diff options
Diffstat (limited to 'arch/m68k/platform/coldfire/timers.c')
-rw-r--r-- | arch/m68k/platform/coldfire/timers.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/m68k/platform/coldfire/timers.c b/arch/m68k/platform/coldfire/timers.c index 0d90da32fcdb..d0b4e9798fde 100644 --- a/arch/m68k/platform/coldfire/timers.c +++ b/arch/m68k/platform/coldfire/timers.c | |||
@@ -47,6 +47,8 @@ void coldfire_profile_init(void); | |||
47 | static u32 mcftmr_cycles_per_jiffy; | 47 | static u32 mcftmr_cycles_per_jiffy; |
48 | static u32 mcftmr_cnt; | 48 | static u32 mcftmr_cnt; |
49 | 49 | ||
50 | static irq_handler_t timer_interrupt; | ||
51 | |||
50 | /***************************************************************************/ | 52 | /***************************************************************************/ |
51 | 53 | ||
52 | static irqreturn_t mcftmr_tick(int irq, void *dummy) | 54 | static irqreturn_t mcftmr_tick(int irq, void *dummy) |
@@ -55,7 +57,7 @@ static irqreturn_t mcftmr_tick(int irq, void *dummy) | |||
55 | __raw_writeb(MCFTIMER_TER_CAP | MCFTIMER_TER_REF, TA(MCFTIMER_TER)); | 57 | __raw_writeb(MCFTIMER_TER_CAP | MCFTIMER_TER_REF, TA(MCFTIMER_TER)); |
56 | 58 | ||
57 | mcftmr_cnt += mcftmr_cycles_per_jiffy; | 59 | mcftmr_cnt += mcftmr_cycles_per_jiffy; |
58 | return arch_timer_interrupt(irq, dummy); | 60 | return timer_interrupt(irq, dummy); |
59 | } | 61 | } |
60 | 62 | ||
61 | /***************************************************************************/ | 63 | /***************************************************************************/ |
@@ -94,7 +96,7 @@ static struct clocksource mcftmr_clk = { | |||
94 | 96 | ||
95 | /***************************************************************************/ | 97 | /***************************************************************************/ |
96 | 98 | ||
97 | void hw_timer_init(void) | 99 | void hw_timer_init(irq_handler_t handler) |
98 | { | 100 | { |
99 | __raw_writew(MCFTIMER_TMR_DISABLE, TA(MCFTIMER_TMR)); | 101 | __raw_writew(MCFTIMER_TMR_DISABLE, TA(MCFTIMER_TMR)); |
100 | mcftmr_cycles_per_jiffy = FREQ / HZ; | 102 | mcftmr_cycles_per_jiffy = FREQ / HZ; |
@@ -110,6 +112,7 @@ void hw_timer_init(void) | |||
110 | 112 | ||
111 | clocksource_register_hz(&mcftmr_clk, FREQ); | 113 | clocksource_register_hz(&mcftmr_clk, FREQ); |
112 | 114 | ||
115 | timer_interrupt = handler; | ||
113 | setup_irq(MCF_IRQ_TIMER, &mcftmr_timer_irq); | 116 | setup_irq(MCF_IRQ_TIMER, &mcftmr_timer_irq); |
114 | 117 | ||
115 | #ifdef CONFIG_HIGHPROFILE | 118 | #ifdef CONFIG_HIGHPROFILE |