diff options
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 @@ #include <linux/kernel.h> #include <linux/mm.h> #include <linux/interrupt.h> +#include <linux/irq.h> #include <asm/setup.h> #include <asm/system.h> #include <asm/pgtable.h> -#include <asm/irq.h> #include <asm/machdep.h> #include <asm/MC68VZ328.h> @@ -53,14 +53,19 @@ /***************************************************************************/ +static struct irqaction m68328_timer_irq = { + .name = "timer", + .flags = IRQF_DISABLED | IRQF_TIMER, +}; + void m68328_timer_init(irq_handler_t timer_routine) { /* disable timer 1 */ TCTL = 0; /* set ISR */ - if (request_irq(TMR_IRQ_NUM, timer_routine, IRQ_FLG_LOCK, "timer", NULL)) - panic("Unable to attach timer interrupt\n"); + m68328_timer_irq.handler = timer_routine; + setup_irq(TMR_IRQ_NUM, &m68328_timer_irq); /* Restart mode, Enable int, Set clock source */ TCTL = TCTL_OM | TCTL_IRQEN | CLOCK_SOURCE; |