arm: plat-omap: Cleanup irq_desc access
authorThomas Gleixner <tglx@linutronix.de>
Thu, 24 Mar 2011 11:40:15 +0000 (12:40 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 29 Mar 2011 12:47:54 +0000 (14:47 +0200)
1) Core code stores the flow type already
2) Flow type is accessible in irq_data

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/arm/plat-omap/gpio.c

index 08af18883e26c927c8da5f4abb81f1dc5e017837..af07333e478e3c39c29f91d65c20715d6e47f0ac 100644 (file)
@@ -755,12 +755,6 @@ static int gpio_irq_type(struct irq_data *d, unsigned type)
        bank = irq_data_get_irq_chip_data(d);
        spin_lock_irqsave(&bank->lock, flags);
        retval = _set_gpio_triggering(bank, get_gpio_index(gpio), type);
-       if (retval == 0) {
-               struct irq_desc *desc = irq_to_desc(d->irq);
-
-               desc->status &= ~IRQ_TYPE_SENSE_MASK;
-               desc->status |= type;
-       }
        spin_unlock_irqrestore(&bank->lock, flags);
 
        if (type & (IRQ_TYPE_LEVEL_LOW | IRQ_TYPE_LEVEL_HIGH))
@@ -1270,8 +1264,7 @@ static void gpio_unmask_irq(struct irq_data *d)
        unsigned int gpio = d->irq - IH_GPIO_BASE;
        struct gpio_bank *bank = irq_data_get_irq_chip_data(d);
        unsigned int irq_mask = 1 << get_gpio_index(gpio);
-       struct irq_desc *desc = irq_to_desc(d->irq);
-       u32 trigger = desc->status & IRQ_TYPE_SENSE_MASK;
+       u32 trigger = irqd_get_trigger_type(d);
 
        if (trigger)
                _set_gpio_triggering(bank, get_gpio_index(gpio), trigger);