Skip to content

Commit 2a93a0d

Browse files
andy-shevlinusw
authored andcommitted
gpio: pca953x: Request IRQ after all initialisation done
There is logically better to request IRQ when we initialise all structures. Align the driver with the rest on the same matter. Signed-off-by: Andy Shevchenko <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Linus Walleij <[email protected]>
1 parent 5f402bb commit 2a93a0d

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

drivers/gpio/gpio-pca953x.c

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -865,17 +865,7 @@ static int pca953x_irq_setup(struct pca953x_chip *chip, int irq_base)
865865
bitmap_and(chip->irq_stat, irq_stat, reg_direction, chip->gpio_chip.ngpio);
866866
mutex_init(&chip->irq_lock);
867867

868-
ret = devm_request_threaded_irq(&client->dev, client->irq,
869-
NULL, pca953x_irq_handler,
870-
IRQF_ONESHOT | IRQF_SHARED,
871-
dev_name(&client->dev), chip);
872-
if (ret) {
873-
dev_err(&client->dev, "failed to request irq %d\n",
874-
client->irq);
875-
return ret;
876-
}
877-
878-
irq_chip->name = dev_name(&chip->client->dev);
868+
irq_chip->name = dev_name(&client->dev);
879869
irq_chip->irq_mask = pca953x_irq_mask;
880870
irq_chip->irq_unmask = pca953x_irq_unmask;
881871
irq_chip->irq_set_wake = pca953x_irq_set_wake;
@@ -895,6 +885,16 @@ static int pca953x_irq_setup(struct pca953x_chip *chip, int irq_base)
895885
girq->threaded = true;
896886
girq->first = irq_base; /* FIXME: get rid of this */
897887

888+
ret = devm_request_threaded_irq(&client->dev, client->irq,
889+
NULL, pca953x_irq_handler,
890+
IRQF_ONESHOT | IRQF_SHARED,
891+
dev_name(&client->dev), chip);
892+
if (ret) {
893+
dev_err(&client->dev, "failed to request irq %d\n",
894+
client->irq);
895+
return ret;
896+
}
897+
898898
return 0;
899899
}
900900

0 commit comments

Comments
 (0)