diff options
Diffstat (limited to 'drivers/gpio/gpio-omap.c')
-rw-r--r-- | drivers/gpio/gpio-omap.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index e0fd2e4b2b9c..f49bd6f47a50 100644 --- a/drivers/gpio/gpio-omap.c +++ b/drivers/gpio/gpio-omap.c | |||
@@ -1363,7 +1363,12 @@ static void omap_gpio_restore_context(struct gpio_bank *bank) | |||
1363 | bank->base + bank->regs->risingdetect); | 1363 | bank->base + bank->regs->risingdetect); |
1364 | __raw_writel(bank->context.fallingdetect, | 1364 | __raw_writel(bank->context.fallingdetect, |
1365 | bank->base + bank->regs->fallingdetect); | 1365 | bank->base + bank->regs->fallingdetect); |
1366 | __raw_writel(bank->context.dataout, bank->base + bank->regs->dataout); | 1366 | if (bank->regs->set_dataout && bank->regs->clr_dataout) |
1367 | __raw_writel(bank->context.dataout, | ||
1368 | bank->base + bank->regs->set_dataout); | ||
1369 | else | ||
1370 | __raw_writel(bank->context.dataout, | ||
1371 | bank->base + bank->regs->dataout); | ||
1367 | __raw_writel(bank->context.oe, bank->base + bank->regs->direction); | 1372 | __raw_writel(bank->context.oe, bank->base + bank->regs->direction); |
1368 | 1373 | ||
1369 | if (bank->dbck_enable_mask) { | 1374 | if (bank->dbck_enable_mask) { |