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:
parent
8276536cec
commit
2c836f7ea5
@ -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);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user