Messages in this thread | | | Date | Wed, 3 Jun 2015 02:55:33 +0900 | From | Wolfram Sang <> | Subject | Re: [PATCH v2] i2c: designware: Avoid unnecessary resuming during system suspend |
| |
On Wed, May 20, 2015 at 10:33:13PM +0800, Jisheng Zhang wrote: > Commit 1fc2fe204cb9 ("i2c: designware: Add runtime PM hooks") adds > runtime pm support using the same ops for system pm and runtime pm. > When suspend to ram, the i2c host may have been runtime suspended, thus > i2c_dw_disable() hangs. > > Previously, I fixed this issue by separating ops for system pm and > runtime pm, then in the system suspend/resume path, runtime pm apis are > used to ensure the device is at correct state. > > But as Mika Westerberg pointed out: it sounds a bit silly to resume the > device just because you want to call i2c_dw_disable() for it before > suspending again. He then suggested an elegant solution which keeps the > device runtime suspended during system suspend with the help of > 'dev->power.direct_complete'. This patch adopted this solution, and in > fact Mika provided the main code. > > Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
Fixed the 80 char thingie and applied to for-next, thanks!
[unhandled content-type:application/pgp-signature] | |