~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/admin-guide/acpi/fan_performance_states.rst

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 .. SPDX-License-Identifier: GPL-2.0
  2 
  3 ===========================
  4 ACPI Fan Performance States
  5 ===========================
  6 
  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.
 11 
 12 For more information on _FPS refer to the ACPI specification at:
 13 
 14 http://uefi.org/specifications
 15 
 16 For instance, the contents of the INT3404 ACPI device sysfs directory
 17 may look as follows::
 18 
 19  $ ls -l /sys/bus/acpi/devices/INT3404:00/
 20  total 0
 21  ...
 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
 35  ...
 36 
 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::
 40 
 41   control_percent:trip_point_index:speed_rpm:noise_level_mdb:power_mw
 42 
 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).
 45 
 46 * ``trip_point_index``: The active cooling trip point number that corresponds
 47   to this performance state (0-9).
 48 
 49 * ``speed_rpm``: Speed of the fan in rotations per minute.
 50 
 51 * ``noise_level_mdb``: Audible noise emitted by the fan in this state in
 52   millidecibels.
 53 
 54 * ``power_mw``: Power draw of the fan in this state in milliwatts.
 55 
 56 For example::
 57 
 58  $cat /sys/bus/acpi/devices/INT3404:00/state1
 59  25:0:3200:12500:1250
 60 
 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.
 63 
 64 ACPI Fan Fine Grain Control
 65 =============================
 66 
 67 When _FIF object specifies support for fine grain control, then fan speed
 68 can be set from 0 to 100% with the recommended minimum "step size" via
 69 _FSL object. User can adjust fan speed using thermal sysfs cooling device.
 70 
 71 Here use can look at fan performance states for a reference speed (speed_rpm)
 72 and set it by changing cooling device cur_state. If the fine grain control
 73 is supported then user can also adjust to some other speeds which are
 74 not defined in the performance states.
 75 
 76 The support of fine grain control is presented via sysfs attribute
 77 "fine_grain_control". If fine grain control is present, this attribute
 78 will show "1" otherwise "0".
 79 
 80 This sysfs attribute is presented in the same directory as performance states.
 81 
 82 ACPI Fan Performance Feedback
 83 =============================
 84 
 85 The optional _FST object provides status information for the fan device.
 86 This includes field to provide current fan speed in revolutions per minute
 87 at which the fan is rotating.
 88 
 89 This speed is presented in the sysfs using the attribute "fan_speed_rpm",
 90 in the same directory as performance states.

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php