After updating from 10.1-RELENG (2014-12-07) to 10.2-RELEASE, I can no longer manage the CPU's frequency.
kernel: Starting powerd.
kernel: powerd: no cpufreq(4) support -- aborting: No such file or directory
This is the consequence of sysctls 'dev.cpu.X.freq' and 'dev.cpu.X.freq_levels' not being registered, indicating a problem with the 'cpufreq' module. I built/installed a clean GENERIC kernel and all available modules, but the problem still persists.
I tried setting sysctl debug.cpufreq.verbose=1, which according to sys/kern/kern_cpu.c activates CF_DEBUG() calls. But the message in cpufreq_attach(), that should say "cpufreq: initializing %s", does not show up. I don't know if this means that the module doesn't even try to load. Help would be appreciated.
After failing to find the regression window and discovering that the previous kernel with the new userland also exhibits the problem, I again tried searching for existing discussions about the subject.
I found https://lists.freebsd.org/pipermail/freebsd-stable/2015-March/082034.html from march 2015 which points to a 1 year old change in HEAD, https://svnweb.freebsd.org/base?view=revision&revision=265329 . Here the committer references some other mailing list discussion, which concluded that P-state power management is not effective and can interfere with C-state power management.
That is nice and all, but this Intel Atom CPU does not have any C-state power management. Using P-states has a measurable impact (a few watts). Undoing the changes to /boot/device.hints is what I did for now.
How do you load cpufreq?
Could it be https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=180588?
Unrelated. I use the default kernconf which compiles cpufreq into the kernel.