diff options
author | Andrew Ruder <andrew.ruder@elecsyscorp.com> | 2014-06-05 21:13:23 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2014-07-07 12:54:28 +0200 |
commit | b41acf8869eac0737327380d23068b2e3f10a12a (patch) | |
tree | cec8a929fa6243963293b4d8e0f2470d2e93642c /drivers/gpio | |
parent | gpio: pxa: Make of_device_id array const (diff) | |
download | linux-b41acf8869eac0737327380d23068b2e3f10a12a.tar.xz linux-b41acf8869eac0737327380d23068b2e3f10a12a.zip |
gpio-pxa: gpio0 and gpio1 support on dt
pxa_gpio_probe() has some issues supporting the gpio0 and gpio1
interrupts under device-tree - it never actually sets up the chain
handler to get interrupts on edge detect for GPIO0 and GPIO1.
Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
Acked-by: Haojian Zhuang <haojian.zhuang@gmail.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio')
-rw-r--r-- | drivers/gpio/gpio-pxa.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpio/gpio-pxa.c b/drivers/gpio/gpio-pxa.c index 52bbda0b5510..ad3feec0075e 100644 --- a/drivers/gpio/gpio-pxa.c +++ b/drivers/gpio/gpio-pxa.c @@ -649,6 +649,11 @@ static int pxa_gpio_probe(struct platform_device *pdev) handle_edge_irq); set_irq_flags(irq, IRQF_VALID | IRQF_PROBE); } + } else { + if (irq0 > 0) + irq_set_chained_handler(irq0, pxa_gpio_demux_handler); + if (irq1 > 0) + irq_set_chained_handler(irq1, pxa_gpio_demux_handler); } irq_set_chained_handler(irq_mux, pxa_gpio_demux_handler); |