diff options
author | Greg Ungerer <gerg@snapgear.com> | 2007-07-26 11:09:00 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-26 14:05:20 -0400 |
commit | be03e56b777362a70f29399aaff9989fc3f3de63 (patch) | |
tree | 2d1f8ca257359c183b92972dc1a25f3bfced4e7e /arch/m68knommu/platform/68328/timers.c | |
parent | 5c4525da3b43ab194b99ea13142fa1f98fcba2fe (diff) |
m68knommu: use setup_irq() in 68328 timer code
Use setup_irq() instead of request_irq() to set up system timer
in 68328 timer code. With the old m68knommu irq code this
was safe, but it is not now within the generic irq framework.
Signed-off-by: Greg Ungerer <gerg@uclinux.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/m68knommu/platform/68328/timers.c')
-rw-r--r-- | arch/m68knommu/platform/68328/timers.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/arch/m68knommu/platform/68328/timers.c b/arch/m68knommu/platform/68328/timers.c index ef067f4c3cd4..0396476f955d 100644 --- a/arch/m68knommu/platform/68328/timers.c +++ b/arch/m68knommu/platform/68328/timers.c | |||
@@ -18,10 +18,10 @@ | |||
18 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
19 | #include <linux/mm.h> | 19 | #include <linux/mm.h> |
20 | #include <linux/interrupt.h> | 20 | #include <linux/interrupt.h> |
21 | #include <linux/irq.h> | ||
21 | #include <asm/setup.h> | 22 | #include <asm/setup.h> |
22 | #include <asm/system.h> | 23 | #include <asm/system.h> |
23 | #include <asm/pgtable.h> | 24 | #include <asm/pgtable.h> |
24 | #include <asm/irq.h> | ||
25 | #include <asm/machdep.h> | 25 | #include <asm/machdep.h> |
26 | #include <asm/MC68VZ328.h> | 26 | #include <asm/MC68VZ328.h> |
27 | 27 | ||
@@ -53,14 +53,19 @@ | |||
53 | 53 | ||
54 | /***************************************************************************/ | 54 | /***************************************************************************/ |
55 | 55 | ||
56 | static struct irqaction m68328_timer_irq = { | ||
57 | .name = "timer", | ||
58 | .flags = IRQF_DISABLED | IRQF_TIMER, | ||
59 | }; | ||
60 | |||
56 | void m68328_timer_init(irq_handler_t timer_routine) | 61 | void m68328_timer_init(irq_handler_t timer_routine) |
57 | { | 62 | { |
58 | /* disable timer 1 */ | 63 | /* disable timer 1 */ |
59 | TCTL = 0; | 64 | TCTL = 0; |
60 | 65 | ||
61 | /* set ISR */ | 66 | /* set ISR */ |
62 | if (request_irq(TMR_IRQ_NUM, timer_routine, IRQ_FLG_LOCK, "timer", NULL)) | 67 | m68328_timer_irq.handler = timer_routine; |
63 | panic("Unable to attach timer interrupt\n"); | 68 | setup_irq(TMR_IRQ_NUM, &m68328_timer_irq); |
64 | 69 | ||
65 | /* Restart mode, Enable int, Set clock source */ | 70 | /* Restart mode, Enable int, Set clock source */ |
66 | TCTL = TCTL_OM | TCTL_IRQEN | CLOCK_SOURCE; | 71 | TCTL = TCTL_OM | TCTL_IRQEN | CLOCK_SOURCE; |