]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-integrator/core.c
Merge branch 'fb' into devel
[linux-2.6-omap-h63xx.git] / arch / arm / mach-integrator / core.c
index 8d880cb9ba39f4795166274d961f7763b87a7083..7fbbc17f8e8b188abf213337af11cccdd4218532 100644 (file)
@@ -250,39 +250,19 @@ unsigned long integrator_gettimeoffset(void)
 static irqreturn_t
 integrator_timer_interrupt(int irq, void *dev_id)
 {
-       write_seqlock(&xtime_lock);
-
        /*
         * clear the interrupt
         */
        writel(1, TIMER1_VA_BASE + TIMER_INTCLR);
 
-       /*
-        * the clock tick routines are only processed on the
-        * primary CPU
-        */
-       if (hard_smp_processor_id() == 0) {
-               timer_tick();
-#ifdef CONFIG_SMP
-               smp_send_timer();
-#endif
-       }
-
-#ifdef CONFIG_SMP
-       /*
-        * this is the ARM equivalent of the APIC timer interrupt
-        */
-       update_process_times(user_mode(get_irq_regs()));
-#endif /* CONFIG_SMP */
-
-       write_sequnlock(&xtime_lock);
+       timer_tick();
 
        return IRQ_HANDLED;
 }
 
 static struct irqaction integrator_timer_irq = {
        .name           = "Integrator Timer Tick",
-       .flags          = IRQF_DISABLED | IRQF_TIMER,
+       .flags          = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL,
        .handler        = integrator_timer_interrupt,
 };