mfd: max899x: Avoid redundant irq_data lookup
authorThomas Gleixner <tglx@linutronix.de>
Mon, 13 Jul 2015 20:44:59 +0000 (20:44 +0000)
committerLee Jones <lee.jones@linaro.org>
Tue, 11 Aug 2015 14:09:08 +0000 (15:09 +0100)
It's pretty silly to do

     irq_data *d = irq_get_irq_data(irq_data->irq);

because that results in d = irq_data, but goes through a lookup of the
irq_data. Use irq_data directly.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/max8997-irq.c
drivers/mfd/max8998-irq.c

index 03508484b56a8b6df4635a83a1ca68af0c376485..b95a46d79b9d3564e66d6ee7bdc37f8442ff3673 100644 (file)
@@ -140,9 +140,8 @@ static void max8997_irq_sync_unlock(struct irq_data *data)
 }
 
 static const inline struct max8997_irq_data *
-irq_to_max8997_irq(struct max8997_dev *max8997, int irq)
+irq_to_max8997_irq(struct max8997_dev *max8997, struct irq_data *data)
 {
-       struct irq_data *data = irq_get_irq_data(irq);
        return &max8997_irqs[data->hwirq];
 }
 
@@ -150,7 +149,7 @@ static void max8997_irq_mask(struct irq_data *data)
 {
        struct max8997_dev *max8997 = irq_data_get_irq_chip_data(data);
        const struct max8997_irq_data *irq_data = irq_to_max8997_irq(max8997,
-                                                               data->irq);
+                                                                    data);
 
        max8997->irq_masks_cur[irq_data->group] |= irq_data->mask;
 }
@@ -159,7 +158,7 @@ static void max8997_irq_unmask(struct irq_data *data)
 {
        struct max8997_dev *max8997 = irq_data_get_irq_chip_data(data);
        const struct max8997_irq_data *irq_data = irq_to_max8997_irq(max8997,
-                                                               data->irq);
+                                                                    data);
 
        max8997->irq_masks_cur[irq_data->group] &= ~irq_data->mask;
 }
index 35a077477ce2dc06346a3e6f7f89fe515600b012..90bad9ffa7e208da5551d236b732c14592c0c38c 100644 (file)
@@ -98,9 +98,8 @@ static struct max8998_irq_data max8998_irqs[] = {
 };
 
 static inline struct max8998_irq_data *
-irq_to_max8998_irq(struct max8998_dev *max8998, int irq)
+irq_to_max8998_irq(struct max8998_dev *max8998, struct irq_data *data)
 {
-       struct irq_data *data = irq_get_irq_data(irq);
        return &max8998_irqs[data->hwirq];
 }
 
@@ -134,8 +133,7 @@ static void max8998_irq_sync_unlock(struct irq_data *data)
 static void max8998_irq_unmask(struct irq_data *data)
 {
        struct max8998_dev *max8998 = irq_data_get_irq_chip_data(data);
-       struct max8998_irq_data *irq_data = irq_to_max8998_irq(max8998,
-                                                              data->irq);
+       struct max8998_irq_data *irq_data = irq_to_max8998_irq(max8998, data);
 
        max8998->irq_masks_cur[irq_data->reg - 1] &= ~irq_data->mask;
 }
@@ -143,8 +141,7 @@ static void max8998_irq_unmask(struct irq_data *data)
 static void max8998_irq_mask(struct irq_data *data)
 {
        struct max8998_dev *max8998 = irq_data_get_irq_chip_data(data);
-       struct max8998_irq_data *irq_data = irq_to_max8998_irq(max8998,
-                                                              data->irq);
+       struct max8998_irq_data *irq_data = irq_to_max8998_irq(max8998, data);
 
        max8998->irq_masks_cur[irq_data->reg - 1] |= irq_data->mask;
 }