aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68knommu/platform/coldfire/timers.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/m68knommu/platform/coldfire/timers.c')
-rw-r--r--arch/m68knommu/platform/coldfire/timers.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/arch/m68knommu/platform/coldfire/timers.c b/arch/m68knommu/platform/coldfire/timers.c
index 1ba8a3731653..77b0c17ce6ba 100644
--- a/arch/m68knommu/platform/coldfire/timers.c
+++ b/arch/m68knommu/platform/coldfire/timers.c
@@ -31,15 +31,6 @@
31#define TA(a) (MCF_MBAR + MCFTIMER_BASE1 + (a)) 31#define TA(a) (MCF_MBAR + MCFTIMER_BASE1 + (a))
32 32
33/* 33/*
34 * Default the timer and vector to use for ColdFire. Some ColdFire
35 * CPU's and some boards may want different. Their sub-architecture
36 * startup code (in config.c) can change these if they want.
37 */
38unsigned int mcf_timervector = 29;
39unsigned int mcf_profilevector = 31;
40unsigned int mcf_timerlevel = 5;
41
42/*
43 * These provide the underlying interrupt vector support. 34 * These provide the underlying interrupt vector support.
44 * Unfortunately it is a little different on each ColdFire. 35 * Unfortunately it is a little different on each ColdFire.
45 */ 36 */
@@ -107,7 +98,7 @@ static struct clocksource mcftmr_clk = {
107 98
108void hw_timer_init(void) 99void hw_timer_init(void)
109{ 100{
110 setup_irq(mcf_timervector, &mcftmr_timer_irq); 101 setup_irq(MCF_IRQ_TIMER, &mcftmr_timer_irq);
111 102
112 __raw_writew(MCFTIMER_TMR_DISABLE, TA(MCFTIMER_TMR)); 103 __raw_writew(MCFTIMER_TMR_DISABLE, TA(MCFTIMER_TMR));
113 mcftmr_cycles_per_jiffy = FREQ / HZ; 104 mcftmr_cycles_per_jiffy = FREQ / HZ;
@@ -124,7 +115,7 @@ void hw_timer_init(void)
124 mcftmr_clk.mult = clocksource_hz2mult(FREQ, mcftmr_clk.shift); 115 mcftmr_clk.mult = clocksource_hz2mult(FREQ, mcftmr_clk.shift);
125 clocksource_register(&mcftmr_clk); 116 clocksource_register(&mcftmr_clk);
126 117
127 mcf_settimericr(1, mcf_timerlevel); 118 mcf_clrimr(MCFINTC_TIMER1);
128 119
129#ifdef CONFIG_HIGHPROFILE 120#ifdef CONFIG_HIGHPROFILE
130 coldfire_profile_init(); 121 coldfire_profile_init();
@@ -171,7 +162,7 @@ void coldfire_profile_init(void)
171 printk(KERN_INFO "PROFILE: lodging TIMER2 @ %dHz as profile timer\n", 162 printk(KERN_INFO "PROFILE: lodging TIMER2 @ %dHz as profile timer\n",
172 PROFILEHZ); 163 PROFILEHZ);
173 164
174 setup_irq(mcf_profilevector, &coldfire_profile_irq); 165 setup_irq(MCF_IRQ_PROFILER, &coldfire_profile_irq);
175 166
176 /* Set up TIMER 2 as high speed profile clock */ 167 /* Set up TIMER 2 as high speed profile clock */
177 __raw_writew(MCFTIMER_TMR_DISABLE, PA(MCFTIMER_TMR)); 168 __raw_writew(MCFTIMER_TMR_DISABLE, PA(MCFTIMER_TMR));
@@ -180,7 +171,7 @@ void coldfire_profile_init(void)
180 __raw_writew(MCFTIMER_TMR_ENORI | MCFTIMER_TMR_CLK16 | 171 __raw_writew(MCFTIMER_TMR_ENORI | MCFTIMER_TMR_CLK16 |
181 MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, PA(MCFTIMER_TMR)); 172 MCFTIMER_TMR_RESTART | MCFTIMER_TMR_ENABLE, PA(MCFTIMER_TMR));
182 173
183 mcf_settimericr(2, 7); 174 mcf_clrimr(MCFINTC_TIMER2);
184} 175}
185 176
186/***************************************************************************/ 177/***************************************************************************/