diff options
Diffstat (limited to 'drivers/gpio/gpio-tegra.c')
-rw-r--r-- | drivers/gpio/gpio-tegra.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/gpio/gpio-tegra.c b/drivers/gpio/gpio-tegra.c index 9b25c90f725c..530b27f9d66f 100644 --- a/drivers/gpio/gpio-tegra.c +++ b/drivers/gpio/gpio-tegra.c | |||
@@ -252,9 +252,9 @@ static int tegra_gpio_irq_set_type(struct irq_data *d, unsigned int type) | |||
252 | tegra_gpio_enable(gpio); | 252 | tegra_gpio_enable(gpio); |
253 | 253 | ||
254 | if (type & (IRQ_TYPE_LEVEL_LOW | IRQ_TYPE_LEVEL_HIGH)) | 254 | if (type & (IRQ_TYPE_LEVEL_LOW | IRQ_TYPE_LEVEL_HIGH)) |
255 | __irq_set_handler_locked(d->irq, handle_level_irq); | 255 | irq_set_handler_locked(d, handle_level_irq); |
256 | else if (type & (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING)) | 256 | else if (type & (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING)) |
257 | __irq_set_handler_locked(d->irq, handle_edge_irq); | 257 | irq_set_handler_locked(d, handle_edge_irq); |
258 | 258 | ||
259 | return 0; | 259 | return 0; |
260 | } | 260 | } |
@@ -268,16 +268,14 @@ static void tegra_gpio_irq_shutdown(struct irq_data *d) | |||
268 | 268 | ||
269 | static void tegra_gpio_irq_handler(unsigned int irq, struct irq_desc *desc) | 269 | static void tegra_gpio_irq_handler(unsigned int irq, struct irq_desc *desc) |
270 | { | 270 | { |
271 | struct tegra_gpio_bank *bank; | ||
272 | int port; | 271 | int port; |
273 | int pin; | 272 | int pin; |
274 | int unmasked = 0; | 273 | int unmasked = 0; |
275 | struct irq_chip *chip = irq_desc_get_chip(desc); | 274 | struct irq_chip *chip = irq_desc_get_chip(desc); |
275 | struct tegra_gpio_bank *bank = irq_desc_get_handler_data(desc); | ||
276 | 276 | ||
277 | chained_irq_enter(chip, desc); | 277 | chained_irq_enter(chip, desc); |
278 | 278 | ||
279 | bank = irq_get_handler_data(irq); | ||
280 | |||
281 | for (port = 0; port < 4; port++) { | 279 | for (port = 0; port < 4; port++) { |
282 | int gpio = tegra_gpio_compose(bank->bank, port, 0); | 280 | int gpio = tegra_gpio_compose(bank->bank, port, 0); |
283 | unsigned long sta = tegra_gpio_readl(GPIO_INT_STA(gpio)) & | 281 | unsigned long sta = tegra_gpio_readl(GPIO_INT_STA(gpio)) & |