m68knommu: stop using __do_IRQ
authorGreg Ungerer <gerg@uclinux.org>
Thu, 9 Sep 2010 07:12:53 +0000 (17:12 +1000)
committerGreg Ungerer <gerg@uclinux.org>
Thu, 21 Oct 2010 00:17:30 +0000 (10:17 +1000)
The use of __do_IRQ is deprecated, so lets stop using it.
Generally the interrupts on the supported processors here are
level triggered, so this is strait forward to switch over to
using the standard handle_level_irq flow handler. (Although
some ColdFire parts support edge triggered GPIO line  interrupts
we have no support for them yet).

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
arch/m68knommu/Kconfig
arch/m68knommu/platform/5272/intc.c
arch/m68knommu/platform/68328/ints.c
arch/m68knommu/platform/68360/ints.c
arch/m68knommu/platform/coldfire/intc-2.c
arch/m68knommu/platform/coldfire/intc-simr.c
arch/m68knommu/platform/coldfire/intc.c

index 2609c39..fd28178 100644 (file)
@@ -59,6 +59,10 @@ config GENERIC_HARDIRQS
        bool
        default y
 
+config GENERIC_HARDIRQS_NO__DO_IRQ
+       bool
+       default y
+
 config GENERIC_CALIBRATE_DELAY
        bool
        default y
index 7081e0a..a61c9c2 100644 (file)
@@ -128,11 +128,9 @@ void __init init_IRQ(void)
        writel(0x88888888, MCF_MBAR + MCFSIM_ICR4);
 
        for (irq = 0; (irq < NR_IRQS); irq++) {
-               irq_desc[irq].status = IRQ_DISABLED;
-               irq_desc[irq].action = NULL;
-               irq_desc[irq].depth = 1;
-               irq_desc[irq].chip = &intc_irq_chip;
-               intc_irq_set_type(irq, 0);
+               set_irq_chip(irq, &intc_irq_chip);
+               set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
+               set_irq_handler(irq, handle_level_irq);
        }
 }
 
index b91ee85..8658528 100644 (file)
@@ -179,10 +179,8 @@ void __init init_IRQ(void)
        IMR = ~0;
 
        for (i = 0; (i < NR_IRQS); i++) {
-               irq_desc[i].status = IRQ_DISABLED;
-               irq_desc[i].action = NULL;
-               irq_desc[i].depth = 1;
-               irq_desc[i].chip = &intc_irq_chip;
+               set_irq_chip(irq, &intc_irq_chip);
+               set_irq_handler(irq, handle_level_irq);
        }
 }
 
index 6f22970..ad96ab1 100644 (file)
@@ -132,10 +132,8 @@ void init_IRQ(void)
        pquicc->intr_cimr = 0x00000000;
 
        for (i = 0; (i < NR_IRQS); i++) {
-               irq_desc[i].status = IRQ_DISABLED;
-               irq_desc[i].action = NULL;
-               irq_desc[i].depth = 1;
-               irq_desc[i].chip = &intc_irq_chip;
+               set_irq_chip(irq, &intc_irq_chip);
+               set_irq_handler(irq, handle_level_irq);
        }
 }
 
index c23046c..85daa2b 100644 (file)
@@ -93,10 +93,16 @@ static void intc_irq_unmask(unsigned int irq)
        }
 }
 
+static int intc_irq_set_type(unsigned int irq, unsigned int type)
+{
+       return 0;
+}
+
 static struct irq_chip intc_irq_chip = {
        .name           = "CF-INTC",
        .mask           = intc_irq_mask,
        .unmask         = intc_irq_unmask,
+       .set_type       = intc_irq_set_type,
 };
 
 void __init init_IRQ(void)
@@ -112,10 +118,9 @@ void __init init_IRQ(void)
 #endif
 
        for (irq = 0; (irq < NR_IRQS); irq++) {
-               irq_desc[irq].status = IRQ_DISABLED;
-               irq_desc[irq].action = NULL;
-               irq_desc[irq].depth = 1;
-               irq_desc[irq].chip = &intc_irq_chip;
+               set_irq_chip(irq, &intc_irq_chip);
+               set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
+               set_irq_handler(irq, handle_level_irq);
        }
 }
 
index 8435ced..bb70486 100644 (file)
@@ -70,11 +70,9 @@ void __init init_IRQ(void)
                __raw_writeb(0xff, MCFINTC1_SIMR);
 
        for (irq = 0; (irq < NR_IRQS); irq++) {
-               irq_desc[irq].status = IRQ_DISABLED;
-               irq_desc[irq].action = NULL;
-               irq_desc[irq].depth = 1;
-               irq_desc[irq].chip = &intc_irq_chip;
-               intc_irq_set_type(irq, 0);
+               set_irq_chip(irq, &intc_irq_chip);
+               set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
+               set_irq_handler(irq, handle_level_irq);
        }
 }
 
index a4560c8..60d2fcb 100644 (file)
@@ -143,11 +143,9 @@ void __init init_IRQ(void)
        mcf_maskimr(0xffffffff);
 
        for (irq = 0; (irq < NR_IRQS); irq++) {
-               irq_desc[irq].status = IRQ_DISABLED;
-               irq_desc[irq].action = NULL;
-               irq_desc[irq].depth = 1;
-               irq_desc[irq].chip = &intc_irq_chip;
-               intc_irq_set_type(irq, 0);
+               set_irq_chip(irq, &intc_irq_chip);
+               set_irq_type(irq, IRQ_TYPE_LEVEL_HIGH);
+               set_irq_handler(irq, handle_level_irq);
        }
 }