Merge branch 'master' into for_paulus
[linux-drm-fsl-dcu.git] / arch / cris / arch-v10 / kernel / time.c
index dc3dfe9b4a1aa64f09a8b35a3947d8b32e1346ec..077e973c33f0c131be44a9c8e32fd4c149b61528 100644 (file)
@@ -7,7 +7,6 @@
  *
  */
 
-#include <linux/config.h>
 #include <linux/timex.h>
 #include <linux/time.h>
 #include <linux/jiffies.h>
@@ -39,7 +38,6 @@ unsigned long get_ns_in_jiffie(void)
        unsigned long flags;
 
        local_irq_save(flags);
-       local_irq_disable();
        timer_count = *R_TIMER0_DATA;
        presc_count = *R_TIM_PRESC_STATUS;  
        /* presc_count might be wrapped */
@@ -228,7 +226,7 @@ timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
        
        /* call the real timer interrupt handler */
 
-       do_timer(regs);
+       do_timer(1);
        
         cris_do_profile(regs); /* Save profiling information */
 
@@ -252,11 +250,11 @@ timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
         return IRQ_HANDLED;
 }
 
-/* timer is SA_SHIRQ so drivers can add stuff to the timer irq chain
- * it needs to be SA_INTERRUPT to make the jiffies update work properly
+/* timer is IRQF_SHARED so drivers can add stuff to the timer irq chain
+ * it needs to be IRQF_DISABLED to make the jiffies update work properly
  */
 
-static struct irqaction irq2  = { timer_interrupt, SA_SHIRQ | SA_INTERRUPT,
+static struct irqaction irq2  = { timer_interrupt, IRQF_SHARED | IRQF_DISABLED,
                                  CPU_MASK_NONE, "timer", NULL, NULL};
 
 void __init