diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-21 13:15:24 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-21 13:32:24 -0500 |
commit | 2e95e51e184bd107380881502ea0f483c4500706 (patch) | |
tree | 472a3f839cc36d871ef551e26206feb8f90d7f74 | |
parent | 2a7f51a3e08cdaeea78d9e101a0079422a55bbc3 (diff) |
MFD: ucb1x00-core: fix missing restore of io output data on resume
We were not restoring the UCB1x00 gpio output data on resume, resulting
in incorrect GPIO output data after a resume. Add the missing register
write.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r-- | drivers/mfd/ucb1x00-core.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mfd/ucb1x00-core.c b/drivers/mfd/ucb1x00-core.c index b281217334eb..8ebda97981e1 100644 --- a/drivers/mfd/ucb1x00-core.c +++ b/drivers/mfd/ucb1x00-core.c | |||
@@ -687,6 +687,7 @@ static int ucb1x00_resume(struct mcp *mcp) | |||
687 | struct ucb1x00 *ucb = mcp_get_drvdata(mcp); | 687 | struct ucb1x00 *ucb = mcp_get_drvdata(mcp); |
688 | struct ucb1x00_dev *dev; | 688 | struct ucb1x00_dev *dev; |
689 | 689 | ||
690 | ucb1x00_reg_write(ucb, UCB_IO_DATA, ucb->io_out); | ||
690 | ucb1x00_reg_write(ucb, UCB_IO_DIR, ucb->io_dir); | 691 | ucb1x00_reg_write(ucb, UCB_IO_DIR, ucb->io_dir); |
691 | mutex_lock(&ucb1x00_mutex); | 692 | mutex_lock(&ucb1x00_mutex); |
692 | list_for_each_entry(dev, &ucb->devs, dev_node) { | 693 | list_for_each_entry(dev, &ucb->devs, dev_node) { |