diff options
| author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2025-10-19 10:31:38 +0200 |
|---|---|---|
| committer | Bartosz Golaszewski <bartosz.golaszewski@linaro.org> | 2025-10-20 10:24:03 +0200 |
| commit | eb7f1c8415bbbb81f8674a490a5da7c22599a012 (patch) | |
| tree | 4fa0ccf0072558a07a9304d29359cce8de8556d9 | |
| parent | 6f5976c0cc0977b1fd168d6ecbf3fb36cf041524 (diff) | |
gpio: mvebu: Slightly optimize mvebu_gpio_irq_handler()
In the main loop of mvebu_gpio_irq_handler() some calls to
irq_find_mapping() can be saved.
There is no point to find an irq number before checking if this something
has to be done.
By testing first, some calls can be saved.
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/7190f5def0489ed3f40435449c86cd7c710e6dd4.1760862679.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
| -rw-r--r-- | drivers/gpio/gpio-mvebu.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/gpio/gpio-mvebu.c b/drivers/gpio/gpio-mvebu.c index ac799fced950..22c36b79e249 100644 --- a/drivers/gpio/gpio-mvebu.c +++ b/drivers/gpio/gpio-mvebu.c @@ -573,11 +573,10 @@ static void mvebu_gpio_irq_handler(struct irq_desc *desc) for (i = 0; i < mvchip->chip.ngpio; i++) { int irq; - irq = irq_find_mapping(mvchip->domain, i); - if (!(cause & BIT(i))) continue; + irq = irq_find_mapping(mvchip->domain, i); type = irq_get_trigger_type(irq); if ((type & IRQ_TYPE_SENSE_MASK) == IRQ_TYPE_EDGE_BOTH) { /* Swap polarity (race with GPIO line) */ |
