From 0b799d7c0e535a77250a57af52d8dd569ab9aa00 Mon Sep 17 00:00:00 2001 From: Russell King Date: Thu, 6 Mar 2003 13:41:45 +0000 Subject: [PATCH] [ARM] Always claim the timer IRQ using SA_INTERRUPT. --- arch/arm/kernel/time.c | 1 + include/asm-arm/arch-anakin/time.h | 1 - include/asm-arm/arch-sa1100/time.h | 3 --- include/asm-arm/arch-shark/time.h | 1 - 4 files changed, 1 insertion(+), 5 deletions(-) diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c index f7dbb73f80644..1622168e05854 100644 --- a/arch/arm/kernel/time.c +++ b/arch/arm/kernel/time.c @@ -200,6 +200,7 @@ void do_settimeofday(struct timeval *tv) static struct irqaction timer_irq = { .name = "timer", + .flags = SA_INTERRUPT, }; /* diff --git a/include/asm-arm/arch-anakin/time.h b/include/asm-arm/arch-anakin/time.h index 68f92de7a87d3..a00557a7210cb 100644 --- a/include/asm-arm/arch-anakin/time.h +++ b/include/asm-arm/arch-anakin/time.h @@ -23,7 +23,6 @@ anakin_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) void __init time_init(void) { timer_irq.handler = anakin_timer_interrupt; - timer_irq.flags = SA_INTERRUPT; setup_irq(IRQ_TICK, &timer_irq); } diff --git a/include/asm-arm/arch-sa1100/time.h b/include/asm-arm/arch-sa1100/time.h index de96ec3dd6882..31fd3647c791c 100644 --- a/include/asm-arm/arch-sa1100/time.h +++ b/include/asm-arm/arch-sa1100/time.h @@ -75,15 +75,12 @@ static unsigned long sa1100_gettimeoffset (void) static void sa1100_timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) { unsigned int next_match; - unsigned long flags; do { do_leds(); - local_irq_save(flags); do_timer(regs); OSSR = OSSR_M0; /* Clear match on timer 0 */ next_match = (OSMR0 += LATCH); - local_irq_restore(flags); do_set_rtc(); } while ((signed long)(next_match - OSCR) <= 0); diff --git a/include/asm-arm/arch-shark/time.h b/include/asm-arm/arch-shark/time.h index 69f0001088d29..bea20835697ad 100644 --- a/include/asm-arm/arch-shark/time.h +++ b/include/asm-arm/arch-shark/time.h @@ -34,6 +34,5 @@ void __init time_init(void) xtime.tv_sec = 0; timer_irq.handler = timer_interrupt; - timer_irq.flags = SA_INTERRUPT; /* FIXME: really? */ setup_irq(IRQ_TIMER, &timer_irq); } -- 2.53.0