Peter Zijlstra
2022-Jun-09 09:47 UTC
[PATCH 33/36] cpuidle,omap3: Use WFI for omap3_pm_idle()
On Thu, Jun 09, 2022 at 10:39:22AM +0300, Tony Lindgren wrote:> * Arnd Bergmann <arnd at arndb.de> [220608 18:18]: > > On Wed, Jun 8, 2022 at 4:27 PM Peter Zijlstra <peterz at infradead.org> wrote: > > > > > > arch_cpu_idle() is a very simple idle interface and exposes only a > > > single idle state and is expected to not require RCU and not do any > > > tracing/instrumentation. > > > > > > As such, omap_sram_idle() is not a valid implementation. Replace it > > > with the simple (shallow) omap3_do_wfi() call. Leaving the more > > > complicated idle states for the cpuidle driver. > > Agreed it makes sense to limit deeper idle states to cpuidle. Hopefully > there is some informative splat for attempting to use arch_cpu_ide() > for deeper idle states :)The arch_cpu_idle() interface doesn't allow one to express a desire for deeper states. I'm not sure how anyone could even attempt this. But given what OMAP needs to go deeper, this would involve things that require RCU, combine that with the follow up patches that rip out all the trace_.*_rcuidle() hackery from the power and clock domain code, PROVE_RCU should scream if anybody were to attempt it.