RT throttling and suspend/resume (was Re: [PATCH] i2c: omap: revert "i2c: omap: switch to threaded IRQ support")
From: Kevin Hilman <hidden>
Date: 2012-10-19 23:28:16
Also in:
linux-i2c, linux-omap
From: Kevin Hilman <hidden>
Date: 2012-10-19 23:28:16
Also in:
linux-i2c, linux-omap
Peter Zijlstra [off-list ref] writes:
On Thu, 2012-10-18 at 08:51 +0300, Felipe Balbi wrote:quoted
quoted
So the primary question remains: is RT runtime supposed to include the time spent suspended? I suspect not.you might be right there, though we need Thomas or Peter to answer :-sre, sorry both tglx and I have been traveling, he still is, I'm trying to play catch-up :-)
No worries, thanks for the help.
Anyway, yeah I'm somewhat surprised the clock is 'running' when the machine isn't. From what I could gather, this is !x86 hardware, right? x86 explicitly makes sure our clocks are 'stopped' during suspend, see commit cd7240c0b900eb6d690ccee088a6c9b46dae815a. Can you do something similar for ARM? A quick look at arch/arm/kernel/sched_clock.c shows there's already suspend/resume hooks, do they do the wrong thing?
No, they do the right thing, but only if they're asked by the SoC-specific code that registers a sched_clock. Changing the SoC specific code to use the 'needs_suspend' API gets things working perfectly. Thanks, Kevin