1 .. SPDX-License-Identifier: GPL-2.0
3 ===========================
4 ACPI Fan Performance States
5 ===========================
7 When the optional _FPS object is present under an ACPI device representing a
8 fan (for example, PNP0C0B or INT3404), the ACPI fan driver creates additional
9 "state*" attributes in the sysfs directory of the ACPI device in question.
10 These attributes list properties of fan performance states.
12 For more information on _FPS refer to the ACPI specification at:
14 http://uefi.org/specifications
16 For instance, the contents of the INT3404 ACPI device sysfs directory
19 $ ls -l /sys/bus/acpi/devices/INT3404:00/
22 -r--r--r-- 1 root root 4096 Dec 13 20:38 state0
23 -r--r--r-- 1 root root 4096 Dec 13 20:38 state1
24 -r--r--r-- 1 root root 4096 Dec 13 20:38 state10
25 -r--r--r-- 1 root root 4096 Dec 13 20:38 state11
26 -r--r--r-- 1 root root 4096 Dec 13 20:38 state2
27 -r--r--r-- 1 root root 4096 Dec 13 20:38 state3
28 -r--r--r-- 1 root root 4096 Dec 13 20:38 state4
29 -r--r--r-- 1 root root 4096 Dec 13 20:38 state5
30 -r--r--r-- 1 root root 4096 Dec 13 20:38 state6
31 -r--r--r-- 1 root root 4096 Dec 13 20:38 state7
32 -r--r--r-- 1 root root 4096 Dec 13 20:38 state8
33 -r--r--r-- 1 root root 4096 Dec 13 20:38 state9
34 -r--r--r-- 1 root root 4096 Dec 13 01:00 status
37 where each of the "state*" files represents one performance state of the fan
38 and contains a colon-separated list of 5 integer numbers (fields) with the
39 following interpretation::
41 control_percent:trip_point_index:speed_rpm:noise_level_mdb:power_mw
43 * ``control_percent``: The percent value to be used to set the fan speed to a
44 specific level using the _FSL object (0-100).
46 * ``trip_point_index``: The active cooling trip point number that corresponds
47 to this performance state (0-9).
49 * ``speed_rpm``: Speed of the fan in rotations per minute.
51 * ``noise_level_mdb``: Audible noise emitted by the fan in this state in
54 * ``power_mw``: Power draw of the fan in this state in milliwatts.
58 $cat /sys/bus/acpi/devices/INT3404:00/state1
61 When a given field is not populated or its value provided by the platform
62 firmware is invalid, the "not-defined" string is shown instead of the value.