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 December 27, 2003 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.tz%d.active 59Current active cooling system state. 60If this is non-negative, the appropriate _AC%d object is running. 61Set this value to the desired active cooling level to force 62the corresponding fan object to the appropriate level. 63.It Va hw.acpi.thermal.tz%d.passive_cooling 64If set to 1, passive cooling is enabled. 65It does cooling without fans using 66.Xr cpufreq 4 67as the mechanism for controlling CPU speed. 68Default is enabled for tz0 where it is available. 69.It Va hw.acpi.thermal.tz%d.thermal_flags 70Current thermal zone status. 71These are bit-masked values. 72.It Va hw.acpi.thermal.tz%d.temperature 73Current temperature for this zone. 74.It Va hw.acpi.thermal.tz%d._PSV 75Temperature to start passive cooling by throttling down CPU, etc. 76.It Va hw.acpi.thermal.tz%d._HOT 77Temperature to start critical suspend to disk (S4). 78.It Va hw.acpi.thermal.tz%d._CRT 79Temperature to start critical shutdown (S5). 80.It Va hw.acpi.thermal.tz%d._ACx 81Temperatures at which to switch to the corresponding active cooling 82level. 83For instance, values of 84.Qq Li "3200 3100" 85mean to switch on _AC0 at 320.0K 86and _AC1 at 310.0K. 87The lower the _ACx value, the higher the cooling power. 88.El 89.Pp 90All temperatures are represented in tenths of a Kelvin. 91For example, 300.0K is represented by the integer 3000. 92To convert to units of Centigrade, 93the formula is 94.Li "(x - 2731.5) / 10" . 95.Sh NOTIFIES 96Notifies are passed to userland via 97.Xr devd 8 . 98See 99.Pa /etc/devd.conf 100and 101.Xr devd.conf 5 102for examples. 103The 104.Nm 105driver sends events with the following attributes: 106.Pp 107.Bl -tag -width "subsystem" -compact 108.It system 109.Li ACPI 110.It subsystem 111.Li Thermal 112.It type 113The fully qualified thermal zone object path as in the ASL. 114.It notify 115An integer designating the event: 116.Pp 117.Bl -tag -width indent -compact 118.It Li 0x80 119Current temperature has changed. 120.It Li 0x81 121One or more trip points (_ACx, _PSV) have changed. 122.It Li 0x82 123One or more device lists (_ALx, _PSL, _TZD) have changed. 124.It Li 0xcc 125Non-standard notify that the system will shutdown if the temperature 126stays above _CRT or _HOT for one more poll cycle. 127.El 128.El 129.Sh SEE ALSO 130.Xr acpi 4 , 131.Xr cpufreq 4 , 132.Xr acpidump 8 133.Sh AUTHORS 134.An -nosplit 135.An Michael Smith 136.Pp 137This manual page was written by 138.An Takanori Watanabe . 139