about system time incorrect after changing cpu frequency
Jisheng Zhang
jszhang at marvell.com
Mon Aug 31 23:39:23 PDT 2015
On Tue, 1 Sep 2015 11:32:36 +0530
Viresh Kumar <viresh.kumar at linaro.org> wrote:
> On 01-09-15, 13:36, vichy wrote:
> > >> I try to call below 2 functions to change the frequency of clocksource
> > >> and clockevent, but the above b) sleep time is still incorrect when
> > >> cpu runs in 500Mhz.
> > >> clockevents_update_freq(this_cpu_ptr(gt_evt), gt_clk_rate);
> > >> __clocksource_updatefreq_hz(>_clocksource, gt_clk_rate);
>
> How and when were you calling them? What kernel version is it ?
>
> > Clock Event Device: arm_global_timer
>
> This driver doesn't have support to update clkevt device's freq. You
> may need to modify that based on how arch/arm/kernel/smp_twd.c is
> updated. look for: clockevents_update_freq().
>
This can only help the clockevent. Even with this cpufreq notifier
update, the globaltimer clocksource still can't hold correct/accurate time.
I think the arm global timer is not suitable for clocksource if cpufreq is
enabled.
More information about the linux-arm-kernel
mailing list