Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier...
[cascardo/linux.git] / arch / frv / kernel / irq-mb93493.c
index ba55ecd..4d034c7 100644 (file)
  * daughter board PIC operations
  * - there is no way to ACK interrupts in the MB93493 chip
  */
-static void frv_mb93493_mask(unsigned int irq)
+static void frv_mb93493_mask(struct irq_data *d)
 {
        uint32_t iqsr;
        volatile void *piqsr;
 
-       if (IRQ_ROUTING & (1 << (irq - IRQ_BASE_MB93493)))
+       if (IRQ_ROUTING & (1 << (d->irq - IRQ_BASE_MB93493)))
                piqsr = __addr_MB93493_IQSR(1);
        else
                piqsr = __addr_MB93493_IQSR(0);
 
        iqsr = readl(piqsr);
-       iqsr &= ~(1 << (irq - IRQ_BASE_MB93493 + 16));
+       iqsr &= ~(1 << (d->irq - IRQ_BASE_MB93493 + 16));
        writel(iqsr, piqsr);
 }
 
-static void frv_mb93493_ack(unsigned int irq)
+static void frv_mb93493_ack(struct irq_data *d)
 {
 }
 
-static void frv_mb93493_unmask(unsigned int irq)
+static void frv_mb93493_unmask(struct irq_data *d)
 {
        uint32_t iqsr;
        volatile void *piqsr;
 
-       if (IRQ_ROUTING & (1 << (irq - IRQ_BASE_MB93493)))
+       if (IRQ_ROUTING & (1 << (d->irq - IRQ_BASE_MB93493)))
                piqsr = __addr_MB93493_IQSR(1);
        else
                piqsr = __addr_MB93493_IQSR(0);
 
        iqsr = readl(piqsr);
-       iqsr |= 1 << (irq - IRQ_BASE_MB93493 + 16);
+       iqsr |= 1 << (d->irq - IRQ_BASE_MB93493 + 16);
        writel(iqsr, piqsr);
 }
 
 static struct irq_chip frv_mb93493_pic = {
        .name           = "mb93093",
-       .ack            = frv_mb93493_ack,
-       .mask           = frv_mb93493_mask,
-       .mask_ack       = frv_mb93493_mask,
-       .unmask         = frv_mb93493_unmask,
+       .irq_ack        = frv_mb93493_ack,
+       .irq_mask       = frv_mb93493_mask,
+       .irq_mask_ack   = frv_mb93493_mask,
+       .irq_unmask     = frv_mb93493_unmask,
 };
 
 /*
@@ -139,7 +139,8 @@ void __init mb93493_init(void)
        int irq;
 
        for (irq = IRQ_BASE_MB93493 + 0; irq <= IRQ_BASE_MB93493 + 10; irq++)
-               set_irq_chip_and_handler(irq, &frv_mb93493_pic, handle_edge_irq);
+               irq_set_chip_and_handler(irq, &frv_mb93493_pic,
+                                        handle_edge_irq);
 
        /* the MB93493 drives external IRQ inputs on the CPU PIC */
        setup_irq(IRQ_CPU_MB93493_0, &mb93493_irq[0]);