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>
This commit is contained in:
Greg Ungerer 2007-07-27 01:09:00 +10:00 committed by Linus Torvalds
parent 5c4525da3b
commit be03e56b77

View File

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