On Tue 2013-05-07 09:01:36, John Stultz wrote:I don't *think* this is a concern. The refined calibration only takes a few seconds while the system is booting and has always completed before userspace starts on the systems I have. Even so, I don't believe on boot Android will trigger the autosleep code until its userland is up and running, which takes more then a few seconds on the devices I've seen.On 05/06/2013 11:53 PM, Ingo Molnar wrote:On android (and this is targetted at android, right?) system is going* Feng Tang <feng.tang@xxxxxxxxx> wrote:We also do refined calibration now on the TSC asynchronously over a
Nice result ...is even worse than that. Machine can stay is s2ram for weeks (for aYes, I think it is relatively precise. Per our test, system time backed
lot more if it is desktop and you do s2ram for powersaving). Also
temperature of CPU varies a lot between active and s2ram states. Is
TSC good enough?
by the S3 non stop TSC only has 1 second drift after 4 days running
(with mixed running and S3 states). And before using this feature, we've
seen many time drift problems due to the RTC HW or system FW with our
platforms.
Is that with NTP running?
Without NTP, the TSC fast-calibration on bootup is not (expected to be)
nearly as precise as the 1:345600 precision you've measured.
period of seconds at boot up that gives us much better accuracy then
the fast calibration. This helps provide much more consistent
boot-to-boot TSC frequencies.
to suspend basically as soon as it boots. Will refined calibration
have enough time to do its job?
And... reason for all this is that RTC has one second granularity whenWell, we can poll the RTC trying to get closer to the second edge, but that's somewhat expensive, and for suspend/resume would delay things more then whats acceptable.
accessed naively. But surely we could poll RTC X times a second,
getting error down by factor of X?