i2c-designware: enable/disable the controller properly
authorMika Westerberg <mika.westerberg@linux.intel.com>
Wed, 10 Apr 2013 00:36:40 +0000 (00:36 +0000)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 15 Apr 2013 16:17:51 +0000 (18:17 +0200)
commit3ca4ed8715a6677ce2cdd7aa471685e653b5114d
tree3d9e689ceb242d4ff355262a5ea6ae59a2f967e3
parentefe7d640ef486c4c0c305641dbcacc6918542b76
i2c-designware: enable/disable the controller properly

The correct way to disable or enable the controller is to wait until the
DW_IC_ENABLE_STATUS register bit matches the bit we program into DW_IC_ENABLE
register. This procedure is described in the DesignWare I2C databook.

By doing this we can be sure that the controller is in correct state once
the function returns.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-designware-core.c