aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpio/gpio-davinci.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpio/gpio-davinci.c')
-rw-r--r--drivers/gpio/gpio-davinci.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/gpio/gpio-davinci.c b/drivers/gpio/gpio-davinci.c
index c5e05c82d67c..c246ac3dda7c 100644
--- a/drivers/gpio/gpio-davinci.c
+++ b/drivers/gpio/gpio-davinci.c
@@ -578,15 +578,13 @@ static int davinci_gpio_irq_setup(struct platform_device *pdev)
578 writel_relaxed(~0, &g->clr_falling); 578 writel_relaxed(~0, &g->clr_falling);
579 writel_relaxed(~0, &g->clr_rising); 579 writel_relaxed(~0, &g->clr_rising);
580 580
581 /* set up all irqs in this bank */
582 irq_set_chained_handler(bank_irq, gpio_irq_handler);
583
584 /* 581 /*
585 * Each chip handles 32 gpios, and each irq bank consists of 16 582 * Each chip handles 32 gpios, and each irq bank consists of 16
586 * gpio irqs. Pass the irq bank's corresponding controller to 583 * gpio irqs. Pass the irq bank's corresponding controller to
587 * the chained irq handler. 584 * the chained irq handler.
588 */ 585 */
589 irq_set_handler_data(bank_irq, &chips[gpio / 32]); 586 irq_set_chained_handler_and_data(bank_irq, gpio_irq_handler,
587 &chips[gpio / 32]);
590 588
591 binten |= BIT(bank); 589 binten |= BIT(bank);
592 } 590 }