On Wed, Dec 19, 2018 at 05:48:16PM +0100, Wolfram Sang wrote: > Finally, here is the implementation Hans and I agreed on. Plus, all potential > users I could spot already converted. Renesas R-Car driver was added on top. > This series was tested on a Renesas Lager board (R-Car H2). I had to hack some > error cases into the code to verify the workings. Thanks for all the tests so > far. Of course, more testing never hurts ;) > > Please comment, review, test... a branch can be found here: > > git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git renesas/i2c/core-pm-helpers > > Thanks, > > Wolfram > > Changes since RFC: > > * don't use bitfields anymore but an unsigned long flags variable which is only > meant for flags to be changed when the adapter lock is held > > * split the genereic accessor into _mark_suspended() and _mark_resumed() > > * added kerneldoc and noted that using these helpers is optional > > * documented -ESHUTDOWN as the error code when trying to transfer using an > already suspended adapter > > * added acks from last series. Changes were minor enough to keep them. Please let > me know if you disagree. > > > Wolfram Sang (10): > i2c: add suspended flag and accessors for i2c adapters > i2c: reject new transfers when adapters are suspended > i2c: synquacer: remove unused is_suspended flag > i2c: brcmstb: use core helper to mark adapter suspended > i2c: zx2967: use core helper to mark adapter suspended > i2c: sprd: don't use pdev as variable name for struct device * > i2c: sprd: use core helper to mark adapter suspended > i2c: exynos5: use core helper to mark adapter suspended > i2c: s3c2410: use core helper to mark adapter suspended > i2c: rcar: add suspend/resume support After a long road, I applied this series now to for-next. I only squashed patches 1+2 to have the functionality in one place. And fixed a typo in patch 1. Thanks to the testers and reviewers, and especially Hans, for the input and discussions. This will now get a full test cycle in -next. Let's see what happens... And let's move on to how to add 'very late transfers without irqs' on top of this series. Happy hacking, Wolfram