diff options
-rw-r--r-- | drivers/gpio/gpio-omap.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index b0c57d505be7..a0ad8030a7ef 100644 --- a/drivers/gpio/gpio-omap.c +++ b/drivers/gpio/gpio-omap.c | |||
@@ -500,8 +500,10 @@ static int omap_gpio_irq_type(struct irq_data *d, unsigned type) | |||
500 | 500 | ||
501 | spin_lock_irqsave(&bank->lock, flags); | 501 | spin_lock_irqsave(&bank->lock, flags); |
502 | retval = omap_set_gpio_triggering(bank, offset, type); | 502 | retval = omap_set_gpio_triggering(bank, offset, type); |
503 | if (retval) | 503 | if (retval) { |
504 | spin_unlock_irqrestore(&bank->lock, flags); | ||
504 | goto error; | 505 | goto error; |
506 | } | ||
505 | omap_gpio_init_irq(bank, offset); | 507 | omap_gpio_init_irq(bank, offset); |
506 | if (!omap_gpio_is_input(bank, offset)) { | 508 | if (!omap_gpio_is_input(bank, offset)) { |
507 | spin_unlock_irqrestore(&bank->lock, flags); | 509 | spin_unlock_irqrestore(&bank->lock, flags); |