Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[pandora-kernel.git] / arch / alpha / kernel / sys_sable.c
index b2abe27..5c4423d 100644 (file)
@@ -474,20 +474,6 @@ sable_lynx_disable_irq(unsigned int irq)
 #endif
 }
 
-static unsigned int
-sable_lynx_startup_irq(unsigned int irq)
-{
-       sable_lynx_enable_irq(irq);
-       return 0;
-}
-
-static void
-sable_lynx_end_irq(unsigned int irq)
-{
-       if (!(irq_desc[irq].status & (IRQ_DISABLED|IRQ_INPROGRESS)))
-               sable_lynx_enable_irq(irq);
-}
-
 static void
 sable_lynx_mask_and_ack_irq(unsigned int irq)
 {
@@ -503,12 +489,9 @@ sable_lynx_mask_and_ack_irq(unsigned int irq)
 
 static struct irq_chip sable_lynx_irq_type = {
        .name           = "SABLE/LYNX",
-       .startup        = sable_lynx_startup_irq,
-       .shutdown       = sable_lynx_disable_irq,
-       .enable         = sable_lynx_enable_irq,
-       .disable        = sable_lynx_disable_irq,
-       .ack            = sable_lynx_mask_and_ack_irq,
-       .end            = sable_lynx_end_irq,
+       .unmask         = sable_lynx_enable_irq,
+       .mask           = sable_lynx_disable_irq,
+       .mask_ack       = sable_lynx_mask_and_ack_irq,
 };
 
 static void 
@@ -535,8 +518,9 @@ sable_lynx_init_irq(int nr_of_irqs)
        long i;
 
        for (i = 0; i < nr_of_irqs; ++i) {
-               irq_desc[i].status = IRQ_DISABLED | IRQ_LEVEL;
-               irq_desc[i].chip = &sable_lynx_irq_type;
+               irq_to_desc(i)->status |= IRQ_LEVEL;
+               set_irq_chip_and_handler(i, &sable_lynx_irq_type,
+                       handle_level_irq);
        }
 
        common_init_isa_dma();