MIPS: EMMA: Convert to new irq_chip functions
authorThomas Gleixner <tglx@linutronix.de>
Wed, 23 Mar 2011 21:08:51 +0000 (21:08 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Fri, 25 Mar 2011 17:45:15 +0000 (18:45 +0100)
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
To: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/2179/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/emma/markeins/irq.c

index 3a96799eb65fec6b25b87e53fbf13b74c12464de..9b1207ae22560380a9f1837f02c1069cf8103a64 100644 (file)
 
 #include <asm/emma/emma2rh.h>
 
-static void emma2rh_irq_enable(unsigned int irq)
+static void emma2rh_irq_enable(struct irq_data *d)
 {
-       u32 reg_value;
-       u32 reg_bitmask;
-       u32 reg_index;
-
-       irq -= EMMA2RH_IRQ_BASE;
+       unsigned int irq = d->irq - EMMA2RH_IRQ_BASE;
+       u32 reg_value, reg_bitmask, reg_index;
 
        reg_index = EMMA2RH_BHIF_INT_EN_0 +
                    (EMMA2RH_BHIF_INT_EN_1 - EMMA2RH_BHIF_INT_EN_0) * (irq / 32);
@@ -49,13 +46,10 @@ static void emma2rh_irq_enable(unsigned int irq)
        emma2rh_out32(reg_index, reg_value | reg_bitmask);
 }
 
-static void emma2rh_irq_disable(unsigned int irq)
+static void emma2rh_irq_disable(struct irq_data *d)
 {
-       u32 reg_value;
-       u32 reg_bitmask;
-       u32 reg_index;
-
-       irq -= EMMA2RH_IRQ_BASE;
+       unsigned int irq = d->irq - EMMA2RH_IRQ_BASE;
+       u32 reg_value, reg_bitmask, reg_index;
 
        reg_index = EMMA2RH_BHIF_INT_EN_0 +
                    (EMMA2RH_BHIF_INT_EN_1 - EMMA2RH_BHIF_INT_EN_0) * (irq / 32);
@@ -66,10 +60,8 @@ static void emma2rh_irq_disable(unsigned int irq)
 
 struct irq_chip emma2rh_irq_controller = {
        .name = "emma2rh_irq",
-       .ack = emma2rh_irq_disable,
-       .mask = emma2rh_irq_disable,
-       .mask_ack = emma2rh_irq_disable,
-       .unmask = emma2rh_irq_enable,
+       .irq_mask = emma2rh_irq_disable,
+       .irq_unmask = emma2rh_irq_enable,
 };
 
 void emma2rh_irq_init(void)
@@ -82,23 +74,21 @@ void emma2rh_irq_init(void)
                                              handle_level_irq, "level");
 }
 
-static void emma2rh_sw_irq_enable(unsigned int irq)
+static void emma2rh_sw_irq_enable(struct irq_data *d)
 {
+       unsigned int irq = d->irq - EMMA2RH_SW_IRQ_BASE;
        u32 reg;
 
-       irq -= EMMA2RH_SW_IRQ_BASE;
-
        reg = emma2rh_in32(EMMA2RH_BHIF_SW_INT_EN);
        reg |= 1 << irq;
        emma2rh_out32(EMMA2RH_BHIF_SW_INT_EN, reg);
 }
 
-static void emma2rh_sw_irq_disable(unsigned int irq)
+static void emma2rh_sw_irq_disable(struct irq_data *d)
 {
+       unsigned int irq = d->irq - EMMA2RH_SW_IRQ_BASE;
        u32 reg;
 
-       irq -= EMMA2RH_SW_IRQ_BASE;
-
        reg = emma2rh_in32(EMMA2RH_BHIF_SW_INT_EN);
        reg &= ~(1 << irq);
        emma2rh_out32(EMMA2RH_BHIF_SW_INT_EN, reg);
@@ -106,10 +96,8 @@ static void emma2rh_sw_irq_disable(unsigned int irq)
 
 struct irq_chip emma2rh_sw_irq_controller = {
        .name = "emma2rh_sw_irq",
-       .ack = emma2rh_sw_irq_disable,
-       .mask = emma2rh_sw_irq_disable,
-       .mask_ack = emma2rh_sw_irq_disable,
-       .unmask = emma2rh_sw_irq_enable,
+       .irq_mask = emma2rh_sw_irq_disable,
+       .irq_unmask = emma2rh_sw_irq_enable,
 };
 
 void emma2rh_sw_irq_init(void)
@@ -122,39 +110,38 @@ void emma2rh_sw_irq_init(void)
                                              handle_level_irq, "level");
 }
 
-static void emma2rh_gpio_irq_enable(unsigned int irq)
+static void emma2rh_gpio_irq_enable(struct irq_data *d)
 {
+       unsigned int irq = d->irq - EMMA2RH_GPIO_IRQ_BASE;
        u32 reg;
 
-       irq -= EMMA2RH_GPIO_IRQ_BASE;
-
        reg = emma2rh_in32(EMMA2RH_GPIO_INT_MASK);
        reg |= 1 << irq;
        emma2rh_out32(EMMA2RH_GPIO_INT_MASK, reg);
 }
 
-static void emma2rh_gpio_irq_disable(unsigned int irq)
+static void emma2rh_gpio_irq_disable(struct irq_data *d)
 {
+       unsigned int irq = d->irq - EMMA2RH_GPIO_IRQ_BASE;
        u32 reg;
 
-       irq -= EMMA2RH_GPIO_IRQ_BASE;
-
        reg = emma2rh_in32(EMMA2RH_GPIO_INT_MASK);
        reg &= ~(1 << irq);
        emma2rh_out32(EMMA2RH_GPIO_INT_MASK, reg);
 }
 
-static void emma2rh_gpio_irq_ack(unsigned int irq)
+static void emma2rh_gpio_irq_ack(struct irq_data *d)
 {
-       irq -= EMMA2RH_GPIO_IRQ_BASE;
+       unsigned int irq = d->irq - EMMA2RH_GPIO_IRQ_BASE;
+
        emma2rh_out32(EMMA2RH_GPIO_INT_ST, ~(1 << irq));
 }
 
-static void emma2rh_gpio_irq_mask_ack(unsigned int irq)
+static void emma2rh_gpio_irq_mask_ack(struct irq_data *d)
 {
+       unsigned int irq = d->irq - EMMA2RH_GPIO_IRQ_BASE;
        u32 reg;
 
-       irq -= EMMA2RH_GPIO_IRQ_BASE;
        emma2rh_out32(EMMA2RH_GPIO_INT_ST, ~(1 << irq));
 
        reg = emma2rh_in32(EMMA2RH_GPIO_INT_MASK);
@@ -164,10 +151,10 @@ static void emma2rh_gpio_irq_mask_ack(unsigned int irq)
 
 struct irq_chip emma2rh_gpio_irq_controller = {
        .name = "emma2rh_gpio_irq",
-       .ack = emma2rh_gpio_irq_ack,
-       .mask = emma2rh_gpio_irq_disable,
-       .mask_ack = emma2rh_gpio_irq_mask_ack,
-       .unmask = emma2rh_gpio_irq_enable,
+       .irq_ack = emma2rh_gpio_irq_ack,
+       .irq_mask = emma2rh_gpio_irq_disable,
+       .irq_mask_ack = emma2rh_gpio_irq_mask_ack,
+       .irq_unmask = emma2rh_gpio_irq_enable,
 };
 
 void emma2rh_gpio_irq_init(void)