diff options
author | Marc Zyngier <maz@kernel.org> | 2021-05-04 18:42:18 +0200 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2021-06-10 14:09:19 +0200 |
commit | 046a6ee2343bb26d85a9973a39ccdb9764236fa4 (patch) | |
tree | 3b0c0f7ffe6a7f8376395c5d84cf340a052bfa07 /drivers/irqchip/irq-imx-intmux.c | |
parent | genirq: Move non-irqdomain handle_domain_irq() handling into ARM's handle_IRQ() (diff) | |
download | linux-046a6ee2343bb26d85a9973a39ccdb9764236fa4.tar.xz linux-046a6ee2343bb26d85a9973a39ccdb9764236fa4.zip |
irqchip: Bulk conversion to generic_handle_domain_irq()
Wherever possible, replace constructs that match either
generic_handle_irq(irq_find_mapping()) or
generic_handle_irq(irq_linear_revmap()) to a single call to
generic_handle_domain_irq().
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'drivers/irqchip/irq-imx-intmux.c')
-rw-r--r-- | drivers/irqchip/irq-imx-intmux.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/irqchip/irq-imx-intmux.c b/drivers/irqchip/irq-imx-intmux.c index 7709f9712cb3..e86ff743e98c 100644 --- a/drivers/irqchip/irq-imx-intmux.c +++ b/drivers/irqchip/irq-imx-intmux.c @@ -182,18 +182,15 @@ static void imx_intmux_irq_handler(struct irq_desc *desc) struct intmux_data *data = container_of(irqchip_data, struct intmux_data, irqchip_data[idx]); unsigned long irqstat; - int pos, virq; + int pos; chained_irq_enter(irq_desc_get_chip(desc), desc); /* read the interrupt source pending status of this channel */ irqstat = readl_relaxed(data->regs + CHANIPR(idx)); - for_each_set_bit(pos, &irqstat, 32) { - virq = irq_find_mapping(irqchip_data->domain, pos); - if (virq) - generic_handle_irq(virq); - } + for_each_set_bit(pos, &irqstat, 32) + generic_handle_domain_irq(irqchip_data->domain, pos); chained_irq_exit(irq_desc_get_chip(desc), desc); } |