On 25-06-21, 09:31, Qian Cai wrote:
The problem is that all CPUs are never scaling down.
"cpuinfo_cur_freq" and "scaling_cur_freq" are always the 2800 MHz on
all CPUs on this idle system. This looks like a regression somewhere
as in 5.4-based kernel, I can see "cpuinfo_cur_freq" can go down to
2000 MHz in the same scenario. I'll bisect a bit unless you have
better ideas?
Few things which may let us understand the readings properly.
- cpuinfo_cur_freq: eventually makes a call to cppc_cpufreq_get_rate()
and returns the *actual* frequency hardware is running at (based on
counter diff around 2 us delay).
- scaling_cur_freq: is the frequency the cpufreq core thinks the
hardware is running at, it would more in sync with what schedutil
(or other governors) wants the CPU to run at. This can be different
from what the hardware is running at, i.e. given by
cpuinfo_cur_freq.
--
viresh