diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-05-11 13:45:21 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-05-11 13:45:21 -0400 |
commit | 254c44ea822066e24ab5efbdff1e43b8fe45ae76 (patch) | |
tree | 547f6fd4ce1bd6dba6a5cc5184df28501d550795 /arch/arm/plat-nomadik/gpio.c | |
parent | 7b76415375ba91f5a06f8d5179278c03d6151d16 (diff) | |
parent | 6ac77e469e991e9dd91b28e503fa24b5609eedba (diff) |
Merge branch 'gic-fasteoi' of git://linux-arm.org/linux-2.6-wd into devel-stable
Diffstat (limited to 'arch/arm/plat-nomadik/gpio.c')
-rw-r--r-- | arch/arm/plat-nomadik/gpio.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/arch/arm/plat-nomadik/gpio.c b/arch/arm/plat-nomadik/gpio.c index f49748eca1a3..307b8131aa8c 100644 --- a/arch/arm/plat-nomadik/gpio.c +++ b/arch/arm/plat-nomadik/gpio.c | |||
@@ -23,6 +23,8 @@ | |||
23 | #include <linux/irq.h> | 23 | #include <linux/irq.h> |
24 | #include <linux/slab.h> | 24 | #include <linux/slab.h> |
25 | 25 | ||
26 | #include <asm/mach/irq.h> | ||
27 | |||
26 | #include <plat/pincfg.h> | 28 | #include <plat/pincfg.h> |
27 | #include <mach/hardware.h> | 29 | #include <mach/hardware.h> |
28 | #include <mach/gpio.h> | 30 | #include <mach/gpio.h> |
@@ -681,13 +683,7 @@ static void __nmk_gpio_irq_handler(unsigned int irq, struct irq_desc *desc, | |||
681 | struct irq_chip *host_chip = irq_get_chip(irq); | 683 | struct irq_chip *host_chip = irq_get_chip(irq); |
682 | unsigned int first_irq; | 684 | unsigned int first_irq; |
683 | 685 | ||
684 | if (host_chip->irq_mask_ack) | 686 | chained_irq_enter(host_chip, desc); |
685 | host_chip->irq_mask_ack(&desc->irq_data); | ||
686 | else { | ||
687 | host_chip->irq_mask(&desc->irq_data); | ||
688 | if (host_chip->irq_ack) | ||
689 | host_chip->irq_ack(&desc->irq_data); | ||
690 | } | ||
691 | 687 | ||
692 | nmk_chip = irq_get_handler_data(irq); | 688 | nmk_chip = irq_get_handler_data(irq); |
693 | first_irq = NOMADIK_GPIO_TO_IRQ(nmk_chip->chip.base); | 689 | first_irq = NOMADIK_GPIO_TO_IRQ(nmk_chip->chip.base); |
@@ -698,7 +694,7 @@ static void __nmk_gpio_irq_handler(unsigned int irq, struct irq_desc *desc, | |||
698 | status &= ~BIT(bit); | 694 | status &= ~BIT(bit); |
699 | } | 695 | } |
700 | 696 | ||
701 | host_chip->irq_unmask(&desc->irq_data); | 697 | chained_irq_exit(host_chip, desc); |
702 | } | 698 | } |
703 | 699 | ||
704 | static void nmk_gpio_irq_handler(unsigned int irq, struct irq_desc *desc) | 700 | static void nmk_gpio_irq_handler(unsigned int irq, struct irq_desc *desc) |