]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-footbridge/dc21285-timer.c
Merge branch 'omap3-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind...
[linux-2.6-omap-h63xx.git] / arch / arm / mach-footbridge / dc21285-timer.c
index 14a62d6008fe2f6165001d34ebc5c0d894f2084b..da35bc5c5ccc527a139852843fd3702efb8e116f 100644 (file)
@@ -6,6 +6,8 @@
  */
 #include <linux/init.h>
 #include <linux/interrupt.h>
+#include <linux/irq.h>
+#include <linux/spinlock.h>
 
 #include <asm/irq.h>
 
@@ -27,15 +29,11 @@ static unsigned long timer1_gettimeoffset (void)
 }
 
 static irqreturn_t
-timer1_interrupt(int irq, void *dev_id, struct pt_regs *regs)
+timer1_interrupt(int irq, void *dev_id)
 {
-       write_seqlock(&xtime_lock);
-
        *CSR_TIMER1_CLR = 0;
 
-       timer_tick(regs);
-
-       write_sequnlock(&xtime_lock);
+       timer_tick();
 
        return IRQ_HANDLED;
 }
@@ -43,7 +41,7 @@ timer1_interrupt(int irq, void *dev_id, struct pt_regs *regs)
 static struct irqaction footbridge_timer_irq = {
        .name           = "Timer1 timer tick",
        .handler        = timer1_interrupt,
-       .flags          = SA_INTERRUPT | SA_TIMER,
+       .flags          = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
 };
 
 /*