summaryrefslogtreecommitdiffstats
path: root/net/phonet
diff options
context:
space:
mode:
authorTarun Kanti DebBarma <tarun.kanti@ti.com>2012-03-06 12:08:16 +0530
committerTarun Kanti DebBarma <tarun.kanti@ti.com>2012-03-21 10:18:54 +0530
commit2a900eb74c123a21054836ab2c63d6ff46f854c6 (patch)
tree1607c091f750be0704c00d7e6f0446087f8659cf /net/phonet
parent960edffe29dfd845ee532ee51398592cba96d701 (diff)
downloadblackbird-obmc-linux-2a900eb74c123a21054836ab2c63d6ff46f854c6.tar.gz
blackbird-obmc-linux-2a900eb74c123a21054836ab2c63d6ff46f854c6.zip
gpio/omap: fix incorrect update to context.irqenable1
In _enable_gpio_irqbank() when bank->regs->set_irqenable is TRUE, gpio_mask can be directly set by writing to set_irqenable register without overwriting current value. In order to ensure the same is stored in context.irqenable1, we must avoid overwriting it with gpio_mask at the end of the function. Instead, update irqenable1 appropriately by OR'ing with gpio_mask. For the case where bank->regs->set_irqenable is FALSE, irqenable1 can be directly overwritten with 'l' which holds correct computed value. if (bank->regs->set_irqenable) { reg += bank->regs->set_irqenable; l = gpio_mask; } else { reg += bank->regs->irqenable; l = __raw_readl(reg); if (bank->regs->irqenable_inv) l &= ~gpio_mask; else l |= gpio_mask; } Make similar change for _disable_gpio_irqbank(). 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>
Diffstat (limited to 'net/phonet')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud