kern/144232: [cpufreq] [patch] Add debug.cpufreq.highest to
cpufreq
Dan Lukes
dan at obluda.cz
Thu Mar 25 10:10:03 UTC 2010
The following reply was made to PR kern/144232; it has been noted by GNATS.
From: Dan Lukes <dan at obluda.cz>
To: bug-followup at FreeBSD.org, spawk at acm.poly.edu
Cc:
Subject: Re: kern/144232: [cpufreq] [patch] Add debug.cpufreq.highest to cpufreq
Date: Thu, 25 Mar 2010 11:04:15 +0100
It sound like improper place for implementation of such logic.
Cpufreq is hardware driver - it allow others to control CPU speeds. It
do no own decisions nor should do (imho). When it should not do
decisions, then it's not appropriate place to store variables that exist
for the purpose of such decision process only.
cpufreq consumers (like powerd or acpi_thermal) are there for decision
making so such logic and configuration variables should be there.
The debug.cpufreq.lowest is here because some reported levels are not
usable in the real, not because someone decided he don't want to use it.
You may be interested that requested feature is implemented as part of
acpi_thermal. From man acpi_thermal:
hw.acpi.thermal.tz%d.passive_cooling
If set to 1, passive cooling is enabled. It does cooling without
fans using cpufreq(4) as the mechanism for controlling CPU speed.
Default is enabled for tz0 where it is available.
It require support from ACPI on your notebook which may or may not be
present. If such support is not present, so acpi_thermal can't help you,
then another "frequency decision" utility - e.g. - powerd - is
candidate-place to implement requested logic. No logic should belong to
cpufreq device driver itself, so no tunables for them there.
I noticed the argument "maximum on AC is another than maximum on
battery", but power state is available to powerd, so the logic we are
speaking about can count the power state as well. The only question is -
how to tell to powerd what we want from it exactly.
Dan
More information about the freebsd-acpi
mailing list