---
name: "acpi_thermal"
section: "4"
platform: "linux"
package: "freebsd-manpages"
version: "6.0-5"
release: "Debian 4.0 (Etch)"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/acpi_thermal"
---

# acpi\_thermal(4)

ACPI thermal management subsystem

## NAME

**acpi\_thermal** – ACPI thermal management subsystem

## SYNOPSIS

**device acpi**

## DESCRIPTION

The **acpi\_thermal** driver provides the thermal management features of the ACPI module. This driver has a [sysctl(8)](/sysctl/8.md) interface and a [devd(8)](/devd/8.md) 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.

## SYSCTL VARIABLES

- *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.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.

- *hw.acpi.thermal.tz%d.\_HOT*

  Temperature to start critical suspend to disk (S4).

- *hw.acpi.thermal.tz%d.\_CRT*

  Temperature to start critical shutdown (S5).

- *hw.acpi.thermal.tz%d.\_ACx*

  Temperatures at which to switch to the corresponding active cooling level. For instance, values of "3200 3100" mean to switch on \_AC0 at 320.0K and \_AC1 at 310.0K. The lower the \_ACx value, the higher the cooling power.

All temperatures are represented in tenths of a Kelvin. For example, 300.0K is represented by the integer 3000. To convert to units of Centigrade, the formula is (x - 2731.5) / 10.

## NOTIFIES

Notifies are passed to userland via [devd(8)](/devd/8.md). See */etc/devd.conf* and [devd.conf(5)](/devd.conf/5.md) 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.

## SEE ALSO

[acpi(4)](/acpi/4.md), [acpidump(8)](/acpidump/8.md)

## AUTHORS

Michael Smith

This manual page was written by Takanori Watanabe.
