diff options
Diffstat (limited to 'drivers/pinctrl/pinctrl-nomadik.c')
-rw-r--r-- | drivers/pinctrl/pinctrl-nomadik.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/pinctrl/pinctrl-nomadik.c b/drivers/pinctrl/pinctrl-nomadik.c index fae10b311551..6030a513f3c4 100644 --- a/drivers/pinctrl/pinctrl-nomadik.c +++ b/drivers/pinctrl/pinctrl-nomadik.c | |||
@@ -827,16 +827,14 @@ static void __nmk_gpio_irq_handler(unsigned int irq, struct irq_desc *desc, | |||
827 | { | 827 | { |
828 | struct nmk_gpio_chip *nmk_chip; | 828 | struct nmk_gpio_chip *nmk_chip; |
829 | struct irq_chip *host_chip = irq_get_chip(irq); | 829 | struct irq_chip *host_chip = irq_get_chip(irq); |
830 | unsigned int first_irq; | ||
831 | 830 | ||
832 | chained_irq_enter(host_chip, desc); | 831 | chained_irq_enter(host_chip, desc); |
833 | 832 | ||
834 | nmk_chip = irq_get_handler_data(irq); | 833 | nmk_chip = irq_get_handler_data(irq); |
835 | first_irq = nmk_chip->domain->revmap_data.legacy.first_irq; | ||
836 | while (status) { | 834 | while (status) { |
837 | int bit = __ffs(status); | 835 | int bit = __ffs(status); |
838 | 836 | ||
839 | generic_handle_irq(first_irq + bit); | 837 | generic_handle_irq(irq_find_mapping(nmk_chip->domain, bit)); |
840 | status &= ~BIT(bit); | 838 | status &= ~BIT(bit); |
841 | } | 839 | } |
842 | 840 | ||