diff options
Diffstat (limited to 'arch/arm/mach-ixp4xx/common.c')
-rw-r--r-- | arch/arm/mach-ixp4xx/common.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/mach-ixp4xx/common.c b/arch/arm/mach-ixp4xx/common.c index f3c687cf0071..9f33cb21e7f3 100644 --- a/arch/arm/mach-ixp4xx/common.c +++ b/arch/arm/mach-ixp4xx/common.c | |||
@@ -142,6 +142,8 @@ static int ixp4xx_set_irq_type(unsigned int irq, unsigned int type) | |||
142 | *int_reg &= ~(IXP4XX_GPIO_STYLE_CLEAR << | 142 | *int_reg &= ~(IXP4XX_GPIO_STYLE_CLEAR << |
143 | (line * IXP4XX_GPIO_STYLE_SIZE)); | 143 | (line * IXP4XX_GPIO_STYLE_SIZE)); |
144 | 144 | ||
145 | *IXP4XX_GPIO_GPISR = (1 << line); | ||
146 | |||
145 | /* Set the new style */ | 147 | /* Set the new style */ |
146 | *int_reg |= (int_style << (line * IXP4XX_GPIO_STYLE_SIZE)); | 148 | *int_reg |= (int_style << (line * IXP4XX_GPIO_STYLE_SIZE)); |
147 | 149 | ||
@@ -169,7 +171,7 @@ static void ixp4xx_irq_ack(unsigned int irq) | |||
169 | int line = (irq < 32) ? irq2gpio[irq] : -1; | 171 | int line = (irq < 32) ? irq2gpio[irq] : -1; |
170 | 172 | ||
171 | if (line >= 0) | 173 | if (line >= 0) |
172 | gpio_line_isr_clear(line); | 174 | *IXP4XX_GPIO_GPISR = (1 << line); |
173 | } | 175 | } |
174 | 176 | ||
175 | /* | 177 | /* |