gpio/omap: fix missing dataout context save in _set_gpio_dataout_reg

There are two functions, _set_gpio_dataout_reg() and _set_gpio_dataout_mask()
which writes to dataout register and the dataout context must be saved.
It is missing in the first function, _set_gpio_dataout_reg(). Fix this.

Signed-off-by: Tarun Kanti DebBarma <tarun.kanti@ti.com>
Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Reviewed-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Kevin Hilman <khilman@ti.com>
This commit is contained in:
Tarun Kanti DebBarma 2012-03-02 12:52:52 +05:30
parent 8276536cec
commit 2c836f7ea5

View File

@ -120,10 +120,13 @@ static void _set_gpio_dataout_reg(struct gpio_bank *bank, int gpio, int enable)
void __iomem *reg = bank->base; void __iomem *reg = bank->base;
u32 l = GPIO_BIT(bank, gpio); u32 l = GPIO_BIT(bank, gpio);
if (enable) if (enable) {
reg += bank->regs->set_dataout; reg += bank->regs->set_dataout;
else bank->context.dataout |= l;
} else {
reg += bank->regs->clr_dataout; reg += bank->regs->clr_dataout;
bank->context.dataout &= ~l;
}
__raw_writel(l, reg); __raw_writel(l, reg);
} }