acpi_thermal
—
ACPI thermal management subsystem
The acpi_thermal
driver provides the thermal management
features of the ACPI module. This driver has a
sysctl(8)
interface and a
devd(8)
notification interface. The sysctls export properties of each ACPI thermal
zone object.
There can be multiple thermal zones in a system. For example, each
CPU and the enclosure could all be separate thermal zones, each with its own
setpoints and cooling devices. Thermal zones are numbered sequentially in
the order they appear in the AML.
The acpi_thermal
driver also activates the
active cooling system according to each thermal zone's setpoints.
- hw.acpi.thermal.min_runtime
- Number of seconds to continue active cooling once started. A new active
cooling level will not be selected until this interval expires.
- hw.acpi.thermal.polling_rate
- Number of seconds between polling the current temperature.
- hw.acpi.thermal.user_override
- If set to 1, allow user override of various setpoints (below). The
original values for these settings are obtained from the BIOS and system
overheating and possible damage could occur if changed. Default is 0 (no
override).
- hw.acpi.thermal.tz%d.active
- Current active cooling system state. If this is non-negative, the
appropriate _AC%d object is running. Set this value to the desired active
cooling level to force the corresponding fan object to the appropriate
level.
- 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.
- hw.acpi.thermal.tz%d.thermal_flags
- Current thermal zone status. These are bit-masked values.
- hw.acpi.thermal.tz%d.temperature
- Current temperature for this zone.
- hw.acpi.thermal.tz%d._PSV
- Temperature to start passive cooling by throttling down CPU, etc. This
value can be overridden by the user.
- hw.acpi.thermal.tz%d._HOT
- Temperature to start critical suspend to disk (S4). This value can be
overridden by the user.
- hw.acpi.thermal.tz%d._CRT
- Temperature to start critical shutdown (S5). This value can be overridden
by the user.
- hw.acpi.thermal.tz%d._ACx
- Temperatures at which to switch to the corresponding active cooling level.
The lower the _ACx value, the higher the cooling power.
All temperatures are printed in Celsius. Values can be set in
Celsius (by providing a trailing “C”) or Kelvin (by leaving
off any trailing letter). When setting a value by
sysctl(8),
do not specify a trailing decimal (i.e., 90C instead of 90.0C).
Notifies are passed to userland via
devd(8).
See /etc/devd.conf and
devd.conf(5)
for examples. The acpi_thermal
driver sends events
with the following attributes:
- system
ACPI
- subsystem
Thermal
- type
- The fully qualified thermal zone object path as in the ASL.
- notify
- An integer designating the event:
0x80
- Current temperature has changed.
0x81
- One or more trip points (_ACx, _PSV) have changed.
0x82
- One or more device lists (_ALx, _PSL, _TZD) have changed.
0xcc
- Non-standard notify that the system will shutdown if the temperature
stays above _CRT or _HOT for one more poll cycle.
Michael Smith
This manual page was written by Takanori
Watanabe.