OSDN Git Service

iio: adc: stm32-adc: Use generic_handle_domain_irq()
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Wed, 11 May 2022 11:06:09 +0000 (13:06 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 19 Jun 2022 16:20:59 +0000 (17:20 +0100)
The call chain
generic_handle_irq(irq_find_mapping(domain, x));

could be replaced with
generic_handle_domain_irq(domain, x);

which looks up the struct irq_desc for the interrupt and handles it with
handle_irq_desc().
This is a slight optimisation given that the driver invokes only one
function and the struct irq_desc is used directly instead being looked
up via irq_to_desc().

Use generic_handle_domain_irq().

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Link: https://lore.kernel.org/r/YnuYoQIzJoFIyEJY@linutronix.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/adc/stm32-adc-core.c

index 1426562..c8fc97e 100644 (file)
@@ -356,7 +356,7 @@ static void stm32_adc_irq_handler(struct irq_desc *desc)
                if ((status & priv->cfg->regs->eoc_msk[i] &&
                     stm32_adc_eoc_enabled(priv, i)) ||
                     (status & priv->cfg->regs->ovr_msk[i]))
-                       generic_handle_irq(irq_find_mapping(priv->domain, i));
+                       generic_handle_domain_irq(priv->domain, i);
        }
 
        chained_irq_exit(chip, desc);