spi: rockchip: set pinctrl state when suspend and resume
authorHuibin Hong <huibin.hong@rock-chips.com>
Wed, 24 Aug 2016 09:10:57 +0000 (17:10 +0800)
committerHuang, Tao <huangtao@rock-chips.com>
Fri, 26 Aug 2016 02:46:22 +0000 (10:46 +0800)
Change-Id: I3bfd641513dc8ad0112cb718383eb458c7659a84
Signed-off-by: Huibin Hong <huibin.hong@rock-chips.com>
drivers/spi/spi-rockchip.c

index 9e86ec35c4502d53cfdd59a808e7467dabb783a2..42c8fcd82758d9b08864b975aeae3021b1c3c48e 100644 (file)
@@ -813,6 +813,8 @@ static int rockchip_spi_suspend(struct device *dev)
                clk_disable_unprepare(rs->apb_pclk);
        }
 
+       pinctrl_pm_select_sleep_state(dev);
+
        return ret;
 }
 
@@ -822,6 +824,8 @@ static int rockchip_spi_resume(struct device *dev)
        struct spi_master *master = dev_get_drvdata(dev);
        struct rockchip_spi *rs = spi_master_get_devdata(master);
 
+       pinctrl_pm_select_default_state(dev);
+
        if (!pm_runtime_suspended(dev)) {
                ret = clk_prepare_enable(rs->apb_pclk);
                if (ret < 0)