mfd: htc-egpio: Cleanup interrupt handling
Replace the open coded handler call with the prober accessor. Retrieve the handler data from desc. That avoids a redundant lookup in the sparse irq case. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
parent
73a6839fdb
commit
77eda96691
1 changed files with 2 additions and 4 deletions
|
@ -100,7 +100,7 @@ static struct irq_chip egpio_muxed_chip = {
|
||||||
|
|
||||||
static void egpio_handler(unsigned int irq, struct irq_desc *desc)
|
static void egpio_handler(unsigned int irq, struct irq_desc *desc)
|
||||||
{
|
{
|
||||||
struct egpio_info *ei = get_irq_data(irq);
|
struct egpio_info *ei = irq_desc_get_handler_data(desc);
|
||||||
int irqpin;
|
int irqpin;
|
||||||
|
|
||||||
/* Read current pins. */
|
/* Read current pins. */
|
||||||
|
@ -113,9 +113,7 @@ static void egpio_handler(unsigned int irq, struct irq_desc *desc)
|
||||||
for_each_set_bit(irqpin, &readval, ei->nirqs) {
|
for_each_set_bit(irqpin, &readval, ei->nirqs) {
|
||||||
/* Run irq handler */
|
/* Run irq handler */
|
||||||
pr_debug("got IRQ %d\n", irqpin);
|
pr_debug("got IRQ %d\n", irqpin);
|
||||||
irq = ei->irq_start + irqpin;
|
generic_handle_irq(ei->irq_start + irqpin);
|
||||||
desc = irq_to_desc(irq);
|
|
||||||
desc->handle_irq(irq, desc);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue