m68knommu: 5772: Replace private irq flow handler
authorThomas Gleixner <tglx@linutronix.de>
Sun, 6 Feb 2011 23:39:14 +0000 (23:39 +0000)
committerGreg Ungerer <gerg@uclinux.org>
Tue, 15 Mar 2011 11:01:52 +0000 (21:01 +1000)
That handler lacks the minimal checks for action being zero etc. Keep
the weird flow - ack before handling - intact and call into
handle_simple_irq which does the right thing.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Greg Ungerer <gerg@uclinux.org>
LKML-Reference: <20110202212552.413849952@linutronix.de>
Signed-off-by: Greg Ungerer <gerg@uclinux.org>
arch/m68knommu/platform/5272/intc.c

index 3cf681c..2833909 100644 (file)
@@ -137,11 +137,8 @@ static int intc_irq_set_type(unsigned int irq, unsigned int type)
  */
 static void intc_external_irq(unsigned int irq, struct irq_desc *desc)
 {
-       kstat_incr_irqs_this_cpu(irq, desc);
-       desc->status |= IRQ_INPROGRESS;
        desc->chip->ack(irq);
-       handle_IRQ_event(irq, desc->action);
-       desc->status &= ~IRQ_INPROGRESS;
+       handle_simple_irq(irq, desc);
 }
 
 static struct irq_chip intc_irq_chip = {