Messages in this thread | | | Date | Fri, 13 Mar 2020 08:50:49 -0700 | From | Tony Lindgren <> | Subject | Re: [PATCH v2 4/6] pwm: omap-dmtimer: Fix pwm disabling sequence |
| |
* Tony Lindgren <tony@atomide.com> [200313 15:35]: > * Tony Lindgren <tony@atomide.com> [200312 00:59]: > > * Lokesh Vutla <lokeshvutla@ti.com> [200311 04:14]: > > > However, I see an issue with the patch itself as pm_runtime is not disabled > > > after the pwm is stopped. Not sure how that could be nullified with this approach. > > > > Hmm yeah not sure what could be used to clear things > > when the current cycle is completed unless there's > > some interrupt for it. > > You could enable pm_runtime_use_autosuspend() for pwm use, > then set the timeout to the cycle length, then in the > runtime_suspend make sure the enable bit is cleared if > requested. > > But this too seems inaccurate, it would be best to clear > the enable bit on some cycle completion interrupt if > such thing is available.
I think enabling pm_runtime_use_autosuspend() for pwm, adding a flag for pwm_enabled, and blocking cpu_pm if pwm_enabled is set might do the trick though. Then clear pwm_enabled flag in runtime_suspend if set.
This depend on cpuidle respecting NOTIFY_BAD that I fixed in the recent thread:
[PATCH 0/3] Block idle in gpio-omap with cpu_pm
Regards,
Tony
| |