Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3275d072 authored by Toby Smith's avatar Toby Smith Committed by Linus Walleij
Browse files

gpio: pca953x: return IRQ_NONE when appropriate



The irq handler should return IRQ_NONE or IRQ_HANDLED to report
if we have handled the interrupt.

Signed-off-by: default avatarToby Smith <toby@tismith.id.au>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent dd640039
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -503,10 +503,11 @@ static irqreturn_t pca953x_irq_handler(int irq, void *devid)
	struct pca953x_chip *chip = devid;
	u8 pending[MAX_BANK];
	u8 level;
	unsigned nhandled = 0;
	int i;

	if (!pca953x_irq_pending(chip, pending))
		return IRQ_HANDLED;
		return IRQ_NONE;

	for (i = 0; i < NBANK(chip); i++) {
		while (pending[i]) {
@@ -514,10 +515,11 @@ static irqreturn_t pca953x_irq_handler(int irq, void *devid)
			handle_nested_irq(irq_find_mapping(chip->domain,
							level + (BANK_SZ * i)));
			pending[i] &= ~(1 << level);
			nhandled++;
		}
	}

	return IRQ_HANDLED;
	return (nhandled > 0) ? IRQ_HANDLED : IRQ_NONE;
}

static int pca953x_gpio_irq_map(struct irq_domain *d, unsigned int irq,