diff options
Diffstat (limited to 'drivers/gpio/gpio-omap.c')
-rw-r--r-- | drivers/gpio/gpio-omap.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index b0c57d505be7..61a731ff9a07 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); |
@@ -1185,6 +1187,7 @@ static int omap_gpio_probe(struct platform_device *pdev) | |||
1185 | bank->irq = res->start; | 1187 | bank->irq = res->start; |
1186 | bank->dev = dev; | 1188 | bank->dev = dev; |
1187 | bank->chip.dev = dev; | 1189 | bank->chip.dev = dev; |
1190 | bank->chip.owner = THIS_MODULE; | ||
1188 | bank->dbck_flag = pdata->dbck_flag; | 1191 | bank->dbck_flag = pdata->dbck_flag; |
1189 | bank->stride = pdata->bank_stride; | 1192 | bank->stride = pdata->bank_stride; |
1190 | bank->width = pdata->bank_width; | 1193 | bank->width = pdata->bank_width; |