aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/ibm-acpi.txt
diff options
context:
space:
mode:
authorHenrique de Moraes Holschuh <hmh@hmh.eng.br>2006-11-24 08:47:13 -0500
committerLen Brown <len.brown@intel.com>2006-12-07 01:38:43 -0500
commita12095c2b50c8a7c80517e37c00d6e6c863d43c5 (patch)
tree61f17cfdfa283430531e1b4749e2de93b2b0a812 /Documentation/ibm-acpi.txt
parent1c6a334e9c028c2b72c5350650cb14e6d5fdc232 (diff)
ACPI: ibm-acpi: fix and extend fan control functions
This patch extend fan control functions, implementing enable/disable for all write access modes, implementing level control for all level-capable write access modes. The patch also updates the documentation, explaining levels auto and disengaged. ABI changes: 1. Support level 0 as an equivalent to disable 2. Add support for level auto and level disengaged when doing EC 0x2f fan control 3. Support enable/disable for all level-based write access modes 4. Add support for level command on FANS thinkpads, as per thinkwiki reports Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Diffstat (limited to 'Documentation/ibm-acpi.txt')
-rw-r--r--Documentation/ibm-acpi.txt65
1 files changed, 46 insertions, 19 deletions
diff --git a/Documentation/ibm-acpi.txt b/Documentation/ibm-acpi.txt
index 333b8eb97f96..cbd3a603a7ef 100644
--- a/Documentation/ibm-acpi.txt
+++ b/Documentation/ibm-acpi.txt
@@ -571,27 +571,57 @@ directly accesses hardware registers and may not work as expected. USE
571WITH CAUTION! To use this feature, you need to supply the 571WITH CAUTION! To use this feature, you need to supply the
572experimental=1 parameter when loading the module. 572experimental=1 parameter when loading the module.
573 573
574This feature attempts to show the current fan speed. The speed is read 574This feature attempts to show the current fan speed, control mode and
575directly from the hardware registers of the embedded controller. This 575other fan data that might be available. The speed is read directly
576is known to work on later R, T and X series ThinkPads but may show a 576from the hardware registers of the embedded controller. This is known
577bogus value on other models. 577to work on later R, T and X series ThinkPads but may show a bogus
578value on other models.
579
580Most ThinkPad fans work in "levels". Level 0 stops the fan. The higher
581the level, the higher the fan speed, although adjacent levels often map
582to the same fan speed. 7 is the highest level, where the fan reaches
583the maximum recommended speed. Level "auto" means the EC changes the
584fan level according to some internal algorithm, usually based on
585readings from the thermal sensors. Level "disengaged" means the EC
586disables the speed-locked closed-loop fan control, and drives the fan as
587fast as it can go, which might exceed hardware limits, so use this level
588with caution.
589
590The fan usually ramps up or down slowly from one speed to another,
591and it is normal for the EC to take several seconds to react to fan
592commands.
578 593
579The fan may be enabled or disabled with the following commands: 594The fan may be enabled or disabled with the following commands:
580 595
581 echo enable >/proc/acpi/ibm/fan 596 echo enable >/proc/acpi/ibm/fan
582 echo disable >/proc/acpi/ibm/fan 597 echo disable >/proc/acpi/ibm/fan
583 598
599Placing a fan on level 0 is the same as disabling it. Enabling a fan
600will try to place it in a safe level if it is too slow or disabled.
601
584WARNING WARNING WARNING: do not leave the fan disabled unless you are 602WARNING WARNING WARNING: do not leave the fan disabled unless you are
585monitoring the temperature sensor readings and you are ready to enable 603monitoring all of the temperature sensor readings and you are ready to
586it if necessary to avoid overheating. 604enable it if necessary to avoid overheating.
605
606An enabled fan in level "auto" may stop spinning if the EC decides the
607ThinkPad is cool enough and doesn't need the extra airflow. This is
608normal, and the EC will spin the fan up if the varios thermal readings
609rise too much.
610
611On the X40, this seems to depend on the CPU and HDD temperatures.
612Specifically, the fan is turned on when either the CPU temperature
613climbs to 56 degrees or the HDD temperature climbs to 46 degrees. The
614fan is turned off when the CPU temperature drops to 49 degrees and the
615HDD temperature drops to 41 degrees. These thresholds cannot
616currently be controlled.
617
618The fan level can be controlled with the command:
587 619
588The fan only runs if it's enabled *and* the various temperature 620 echo 'level <level>' > /proc/acpi/ibm/thermal
589sensors which control it read high enough. On the X40, this seems to 621
590depend on the CPU and HDD temperatures. Specifically, the fan is 622Where <level> is an integer from 0 to 7, or one of the words "auto"
591turned on when either the CPU temperature climbs to 56 degrees or the 623or "disengaged" (without the quotes). Not all ThinkPads support the
592HDD temperature climbs to 46 degrees. The fan is turned off when the 624"auto" and "disengaged" levels.
593CPU temperature drops to 49 degrees and the HDD temperature drops to
59441 degrees. These thresholds cannot currently be controlled.
595 625
596On the X31 and X40 (and ONLY on those models), the fan speed can be 626On the X31 and X40 (and ONLY on those models), the fan speed can be
597controlled to a certain degree. Once the fan is running, it can be 627controlled to a certain degree. Once the fan is running, it can be
@@ -604,12 +634,9 @@ about 3700 to about 7350. Values outside this range either do not have
604any effect or the fan speed eventually settles somewhere in that 634any effect or the fan speed eventually settles somewhere in that
605range. The fan cannot be stopped or started with this command. 635range. The fan cannot be stopped or started with this command.
606 636
607On the 570, temperature readings are not available through this 637The ThinkPad's ACPI DSDT code will reprogram the fan on its own when
608feature and the fan control works a little differently. The fan speed 638certain conditions are met. It will override any fan programming done
609is reported in levels from 0 (off) to 7 (max) and can be controlled 639through ibm-acpi.
610with the following command:
611
612 echo 'level <level>' > /proc/acpi/ibm/thermal
613 640
614EXPERIMENTAL: WAN -- /proc/acpi/ibm/wan 641EXPERIMENTAL: WAN -- /proc/acpi/ibm/wan
615--------------------------------------- 642---------------------------------------