Messages in this thread | ![/](/images/icornerl.gif) | | Date | Thu, 15 Feb 2024 17:30:44 +0200 | From | Andy Shevchenko <> | Subject | Re: [PATCH v3 04/18] i2c: omap: wakeup the controller during suspend() callback |
| |
On Thu, Feb 15, 2024 at 04:17:49PM +0100, Thomas Richard wrote: > A device may need the controller up during suspend_noirq() or > resume_noirq(). > But if the controller is autosuspended, there is no way to wakeup it during > suspend_noirq() or resume_noirq() because runtime pm is disabled at this > time. > > The suspend() callback wakes up the controller, so it is available until > its suspend_noirq() callback (pm_runtime_force_suspend()). > During the resume, it's restored by resume_noirq() callback > (pm_runtime_force_resume()). Then resume() callback enables autosuspend. > > So the controller is up during a little time slot in suspend and resume > sequences even if it's not used.
..
> + /* > + * If the controller is autosuspended, there is no way to wakeup it once > + * runtime pm is disabled (in suspend_late()). > + * But a device may need the controller up during suspend_noirq() or > + * resume_noirq(). > + * Wakeup the controller while runtime pm is enabled, so it is available until > + * its suspend_noirq(), and from resume_noirq(). > + */
It's a bit random line lengths... Can you repack this to be more condensed?
-- With Best Regards, Andy Shevchenko
| ![\](/images/icornerr.gif) |