summary refs log tree commit diff
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
parent8a564065825cb92d412f107812ef50fe9ef43668 (diff)
downloadlinux-c0e811d9f5d1ee708f06c4f0a1009f8a1d22f364.tar.gz
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);
 }
 
 /*