1.\" Copyright (c) 2003 Takanori Watanabe. 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD$ 26.\" 27.Dd March 17, 2007 28.Dt ACPI_THERMAL 4 29.Os 30.Sh NAME 31.Nm acpi_thermal 32.Nd ACPI thermal management subsystem 33.Sh SYNOPSIS 34.Cd "device acpi" 35.Sh DESCRIPTION 36The 37.Nm 38driver provides the thermal management features of the ACPI module. 39This driver has a 40.Xr sysctl 8 41interface and a 42.Xr devd 8 43notification interface. 44The sysctls export properties of each ACPI thermal zone object. 45.Pp 46There can be multiple thermal zones in a system. 47For example, each CPU and the enclosure could all be separate thermal 48zones, each with its own setpoints and cooling devices. 49Thermal zones are numbered sequentially in the order they appear in 50the AML. 51.Pp 52The 53.Nm 54driver also activates the active cooling system according to 55each thermal zone's setpoints. 56.Sh SYSCTL VARIABLES 57.Bl -tag -width indent 58.It Va hw.acpi.thermal.min_runtime 59Number of seconds to continue active cooling once started. 60A new active cooling level will not be selected until this interval expires. 61.It Va hw.acpi.thermal.polling_rate 62Number of seconds between polling the current temperature. 63.It Va hw.acpi.thermal.user_override 64If set to 1, allow user override of various setpoints (below). 65The original values for these settings are obtained from the BIOS and 66system overheating and possible damage could occur if changed. 67Default is 0 (no override). 68.It Va hw.acpi.thermal.tz%d.active 69Current active cooling system state. 70If this is non-negative, the appropriate _AC%d object is running. 71Set this value to the desired active cooling level to force 72the corresponding fan object to the appropriate level. 73.It Va hw.acpi.thermal.tz%d.passive_cooling 74If set to 1, passive cooling is enabled. 75It does cooling without fans using 76.Xr cpufreq 4 77as the mechanism for controlling CPU speed. 78Default is enabled for tz0 where it is available. 79.It Va hw.acpi.thermal.tz%d.thermal_flags 80Current thermal zone status. 81These are bit-masked values. 82.It Va hw.acpi.thermal.tz%d.temperature 83Current temperature for this zone. 84.It Va hw.acpi.thermal.tz%d._PSV 85Temperature to start passive cooling by throttling down CPU, etc. 86This value can be overridden by the user. 87.It Va hw.acpi.thermal.tz%d._HOT 88Temperature to start critical suspend to disk (S4). 89This value can be overridden by the user. 90.It Va hw.acpi.thermal.tz%d._CRT 91Temperature to start critical shutdown (S5). 92This value can be overridden by the user. 93.It Va hw.acpi.thermal.tz%d._ACx 94Temperatures at which to switch to the corresponding active cooling 95level. 96The lower the _ACx value, the higher the cooling power. 97.El 98.Pp 99All temperatures are printed in Celsius. 100Values can be set in Celsius (by providing a trailing 101.Qq C ) 102or Kelvin (by leaving off any trailing letter). 103When setting a value by 104.Xr sysctl 8 , 105do not specify a trailing decimal (i.e., 90C instead of 90.0C). 106.Sh NOTIFIES 107Notifies are passed to userland via 108.Xr devd 8 . 109See 110.Pa /etc/devd.conf 111and 112.Xr devd.conf 5 113for examples. 114The 115.Nm 116driver sends events with the following attributes: 117.Pp 118.Bl -tag -width "subsystem" -compact 119.It system 120.Li ACPI 121.It subsystem 122.Li Thermal 123.It type 124The fully qualified thermal zone object path as in the ASL. 125.It notify 126An integer designating the event: 127.Pp 128.Bl -tag -width indent -compact 129.It Li 0x80 130Current temperature has changed. 131.It Li 0x81 132One or more trip points (_ACx, _PSV) have changed. 133.It Li 0x82 134One or more device lists (_ALx, _PSL, _TZD) have changed. 135.It Li 0xcc 136Non-standard notify that the system will shutdown if the temperature 137stays above _CRT or _HOT for one more poll cycle. 138.El 139.El 140.Sh SEE ALSO 141.Xr acpi 4 , 142.Xr cpufreq 4 , 143.Xr acpidump 8 144.Sh AUTHORS 145.An -nosplit 146.An Michael Smith 147.Pp 148This manual page was written by 149.An Takanori Watanabe . 150