summaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-mxc.c
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>2013-07-18 14:58:06 +0200
committerLinus Walleij <linus.walleij@linaro.org>2013-08-16 15:19:11 +0200
commitc0e811d9f5d1ee708f06c4f0a1009f8a1d22f364 (patch)
treec8076f71d9bf3df81e13e07e9121cba564cbe8d2 /drivers/gpio/gpio-mxc.c
parentgpio-mcp23s08: i2c: auto-select base if no DT match or platform data (diff)
downloadlinux-c0e811d9f5d1ee708f06c4f0a1009f8a1d22f364.tar.xz
linux-c0e811d9f5d1ee708f06c4f0a1009f8a1d22f364.zip
gpio/mxc: add chained_irq_enter/exit() to mx2_gpio_irq_handler
Similar to commit 0e44b6e (gpio/mxc: add chained_irq_enter/exit() to mx3_gpio_irq_handler()) . It doesn't seem to be critical to make the irqs work, but still it is more correct. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Acked-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpio-mxc.c')
-rw-r--r--drivers/gpio/gpio-mxc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpio/gpio-mxc.c b/drivers/gpio/gpio-mxc.c
index 875a7c539591..3307f6db3a92 100644
--- a/drivers/gpio/gpio-mxc.c
+++ b/drivers/gpio/gpio-mxc.c
@@ -292,6 +292,9 @@ static void mx2_gpio_irq_handler(u32 irq, struct irq_desc *desc)
{
u32 irq_msk, irq_stat;
struct mxc_gpio_port *port;
+ struct irq_chip *chip = irq_get_chip(irq);
+
+ chained_irq_enter(chip, desc);
/* walk through all interrupt status registers */
list_for_each_entry(port, &mxc_gpio_ports, node) {
@@ -303,6 +306,7 @@ static void mx2_gpio_irq_handler(u32 irq, struct irq_desc *desc)
if (irq_stat)
mxc_gpio_irq_handler(port, irq_stat);
}
+ chained_irq_exit(chip, desc);
}
/*