aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-05-11 16:59:07 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2012-05-11 16:59:07 -0700
commitbcc62fb06bb13e0aaea121a7e1ac4901a3325110 (patch)
tree4dfab54539601acb04b1b5a22062fc01ab4ad2da
parentec53646fc74efaf5d26c5e706bb99c7c5fd8d9c1 (diff)
parent6edd94db250038c8fdf176f23ca4017d2f312509 (diff)
Merge tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux-2.6
Pull GPIO omap bug fix from Grant Likely. * tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux-2.6: gpio/omap: fix incorrect initialization of omap_gpio_mod_init
-rw-r--r--drivers/gpio/gpio-omap.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c
index 1adc2ec1e38..4461540653a 100644
--- a/drivers/gpio/gpio-omap.c
+++ b/drivers/gpio/gpio-omap.c
@@ -965,18 +965,15 @@ static void omap_gpio_mod_init(struct gpio_bank *bank)
}
_gpio_rmw(base, bank->regs->irqenable, l, bank->regs->irqenable_inv);
- _gpio_rmw(base, bank->regs->irqstatus, l,
- bank->regs->irqenable_inv == false);
- _gpio_rmw(base, bank->regs->irqenable, l, bank->regs->debounce_en != 0);
- _gpio_rmw(base, bank->regs->irqenable, l, bank->regs->ctrl != 0);
+ _gpio_rmw(base, bank->regs->irqstatus, l, !bank->regs->irqenable_inv);
if (bank->regs->debounce_en)
- _gpio_rmw(base, bank->regs->debounce_en, 0, 1);
+ __raw_writel(0, base + bank->regs->debounce_en);
/* Save OE default value (0xffffffff) in the context */
bank->context.oe = __raw_readl(bank->base + bank->regs->direction);
/* Initialize interface clk ungated, module enabled */
if (bank->regs->ctrl)
- _gpio_rmw(base, bank->regs->ctrl, 0, 1);
+ __raw_writel(0, base + bank->regs->ctrl);
}
static __devinit void