Messages in this thread Patch in this message | | | Date | Tue, 28 Jan 2014 13:48:28 +0800 | From | "xinhui.pan" <> | Subject | [PATCH] i2c-designware-pcidrv: fix the incorrect return of idle callback |
| |
From: "xinhui.pan" <xinhuix.pan@intel.com>
i2c_dw_pci_runtime_idle should return -EBUSY rather than zero if it do success. Otherwise rpm_idle will call pm_suspend again and that may cause pm_schedule_suspend delay invalidate.
Signed-off-by: bo.he <bo.he@intel.com> Signed-off-by: xinhui.pan <xinhuix.pan@intel.com> --- drivers/i2c/busses/i2c-designware-pcidrv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/i2c/busses/i2c-designware-pcidrv.c b/drivers/i2c/busses/i2c-designware-pcidrv.c index f6ed06c..96e81f6 100644 --- a/drivers/i2c/busses/i2c-designware-pcidrv.c +++ b/drivers/i2c/busses/i2c-designware-pcidrv.c @@ -190,8 +190,8 @@ static int i2c_dw_pci_runtime_idle(struct device *dev) int err = pm_schedule_suspend(dev, 500); dev_dbg(dev, "runtime_idle called\n"); - if (err != 0) - return 0; + if (err) + return err; return -EBUSY; } -- 1.7.9.5
| |