]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/mips/emma2rh/common/irq_emma2rh.c
[JFFS2] fix race condition in jffs2_lzo_compress()
[linux-2.6-omap-h63xx.git] / arch / mips / emma2rh / common / irq_emma2rh.c
index bf1b83ba925e328da8c922c9f82667b27a76f2c1..96df37b77759dd43be25f42abbfebe26467fa563 100644 (file)
@@ -56,19 +56,12 @@ static void emma2rh_irq_disable(unsigned int irq)
        ll_emma2rh_irq_disable(irq - emma2rh_irq_base);
 }
 
-static void emma2rh_irq_end(unsigned int irq)
-{
-       if (!(irq_desc[irq].status & (IRQ_DISABLED | IRQ_INPROGRESS)))
-               ll_emma2rh_irq_enable(irq - emma2rh_irq_base);
-}
-
 struct irq_chip emma2rh_irq_controller = {
-       .typename = "emma2rh_irq",
+       .name = "emma2rh_irq",
        .ack = emma2rh_irq_disable,
        .mask = emma2rh_irq_disable,
        .mask_ack = emma2rh_irq_disable,
        .unmask = emma2rh_irq_enable,
-       .end = emma2rh_irq_end,
 };
 
 void emma2rh_irq_init(u32 irq_base)
@@ -76,7 +69,8 @@ void emma2rh_irq_init(u32 irq_base)
        u32 i;
 
        for (i = irq_base; i < irq_base + NUM_EMMA2RH_IRQ; i++)
-               set_irq_chip(i, &emma2rh_irq_controller);
+               set_irq_chip_and_handler(i, &emma2rh_irq_controller,
+                                        handle_level_irq);
 
        emma2rh_irq_base = irq_base;
 }