Nikita Shubin 2d9284c188 gpiolib: irq hooks: fix recursion in gpiochip_irq_unmask
[ Upstream commit 9d5522199505c761575c8ea31dcfd9a2a8d73614 ]

irqchip shared with multiple gpiochips, leads to recursive call of
gpiochip_irq_mask/gpiochip_irq_unmask which was assigned to
rqchip->irq_mask/irqchip->irq_unmask, these happens becouse of
only irqchip->irq_enable == gpiochip_irq_enable is checked.

Let's add an additional check to make sure shared irqchip is detected
even if irqchip->irq_enable wasn't defined.

Fixes: a8173820f441 ("gpio: gpiolib: Allow GPIO IRQs to lazy disable")
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
Link: https://lore.kernel.org/r/20201210070514.13238-1-nikita.shubin@maquefel.me
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-12-30 11:53:51 +01:00
..
2020-07-20 15:34:59 +02:00
2020-07-23 15:03:25 +02:00
2020-01-15 11:24:19 +01:00
2019-09-03 16:04:19 +02:00
2020-09-29 15:04:31 +02:00
2019-11-07 09:27:48 +01:00
2020-07-30 00:13:10 +02:00
2019-11-07 09:27:48 +01:00
2020-01-15 13:45:01 +01:00
2019-11-07 09:27:48 +01:00
2019-12-09 10:40:18 +01:00
2020-10-14 15:56:58 -07:00
2020-10-14 15:56:58 -07:00
2020-06-15 10:15:29 +02:00