i2c: designware: Disable device on system suspend
authorMika Westerberg <mika.westerberg@linux.intel.com>
Thu, 15 May 2014 14:37:22 +0000 (17:37 +0300)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 2 Jun 2014 17:18:38 +0000 (19:18 +0200)
Userspace can initiate system suspend on arbitrary times which means that
device drivers must make sure that their device gets quiesced before system
suspend is entered. Therefore disable the I2C host controller in the driver
system suspend hook.

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

index 9c78026..f72102f 100644 (file)
@@ -253,6 +253,7 @@ static int dw_i2c_suspend(struct device *dev)
        struct platform_device *pdev = to_platform_device(dev);
        struct dw_i2c_dev *i_dev = platform_get_drvdata(pdev);
 
+       i2c_dw_disable(i_dev);
        clk_disable_unprepare(i_dev->clk);
 
        return 0;