ARM: pxa: fix warning in zeus.c
[pandora-kernel.git] / arch / arm / mach-pxa / zeus.c
index c87f2b3..f4b053b 100644 (file)
@@ -20,6 +20,7 @@
 #include <linux/dm9000.h>
 #include <linux/mmc/host.h>
 #include <linux/spi/spi.h>
+#include <linux/spi/pxa2xx_spi.h>
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/partitions.h>
 #include <linux/mtd/physmap.h>
@@ -41,7 +42,6 @@
 #include <mach/pxa27x-udc.h>
 #include <mach/udc.h>
 #include <mach/pxafb.h>
-#include <mach/pxa2xx_spi.h>
 #include <mach/mfp-pxa27x.h>
 #include <mach/pm.h>
 #include <mach/audio.h>
@@ -83,19 +83,19 @@ static inline int zeus_bit_to_irq(int bit)
        return zeus_isa_irqs[bit] + PXA_ISA_IRQ(0);
 }
 
-static void zeus_ack_irq(unsigned int irq)
+static void zeus_ack_irq(struct irq_data *d)
 {
-       __raw_writew(zeus_irq_to_bitmask(irq), ZEUS_CPLD_ISA_IRQ);
+       __raw_writew(zeus_irq_to_bitmask(d->irq), ZEUS_CPLD_ISA_IRQ);
 }
 
-static void zeus_mask_irq(unsigned int irq)
+static void zeus_mask_irq(struct irq_data *d)
 {
-       zeus_irq_enabled_mask &= ~(zeus_irq_to_bitmask(irq));
+       zeus_irq_enabled_mask &= ~(zeus_irq_to_bitmask(d->irq));
 }
 
-static void zeus_unmask_irq(unsigned int irq)
+static void zeus_unmask_irq(struct irq_data *d)
 {
-       zeus_irq_enabled_mask |= zeus_irq_to_bitmask(irq);
+       zeus_irq_enabled_mask |= zeus_irq_to_bitmask(d->irq);
 }
 
 static inline unsigned long zeus_irq_pending(void)
@@ -111,7 +111,7 @@ static void zeus_irq_handler(unsigned int irq, struct irq_desc *desc)
        do {
                /* we're in a chained irq handler,
                 * so ack the interrupt by hand */
-               desc->chip->ack(gpio_to_irq(ZEUS_ISA_GPIO));
+               desc->irq_data.chip->irq_ack(&desc->irq_data);
 
                if (likely(pending)) {
                        irq = zeus_bit_to_irq(__ffs(pending));
@@ -122,10 +122,10 @@ static void zeus_irq_handler(unsigned int irq, struct irq_desc *desc)
 }
 
 static struct irq_chip zeus_irq_chip = {
-       .name   = "ISA",
-       .ack    = zeus_ack_irq,
-       .mask   = zeus_mask_irq,
-       .unmask = zeus_unmask_irq,
+       .name           = "ISA",
+       .irq_ack        = zeus_ack_irq,
+       .irq_mask       = zeus_mask_irq,
+       .irq_unmask     = zeus_unmask_irq,
 };
 
 static void __init zeus_init_irq(void)
@@ -830,8 +830,8 @@ static void __init zeus_init(void)
        pr_info("Zeus CPLD V%dI%d\n", (system_rev & 0xf0) >> 4, (system_rev & 0x0f));
 
        /* Fix timings for dm9000s (CS1/CS2)*/
-       msc0 = __raw_readl(MSC0) & 0x0000ffff | (dm9000_msc << 16);
-       msc1 = __raw_readl(MSC1) & 0xffff0000 | dm9000_msc;
+       msc0 = (__raw_readl(MSC0) & 0x0000ffff) | (dm9000_msc << 16);
+       msc1 = (__raw_readl(MSC1) & 0xffff0000) | dm9000_msc;
        __raw_writel(msc0, MSC0);
        __raw_writel(msc1, MSC1);