ACPI: delete un-reliable concept of cooling mode
authorLen Brown <len.brown@intel.com>
Tue, 1 May 2007 03:27:43 +0000 (23:27 -0400)
committerLen Brown <len.brown@intel.com>
Tue, 1 May 2007 03:27:43 +0000 (23:27 -0400)
commiteaca2d3f6c4de9d4274a4e2be54c9693e76b0303
tree9e62d1c292e0e4ffce1aea88a37f4aec5fb0281a
parent11ccc0f249cb01a129f54760b8ff087f242935d4
ACPI: delete un-reliable concept of cooling mode

The scheme where the thermal driver displayed the
cooling mode /proc/acpi/thermal_zone/*/cooling_mode
was flawed in two ways.

First, the success of _SCP doesn't actually mean
that the BIOS moved any trip points.
On many BIOS, _SCP is present, but does nothing.
So displaying what _SCP executed actually
was wrong more times than it was right.

Second, examining the relative position of the
trip points when the thermal_zone is added
is insufficient -- as the BIOS reserves the right
to change the trip points at run-time.

The only reliable way for the user to determine if
the thermal zone is in active, passive, or critical
mode is to examine the relative position of the trip points.
The user can do this without the kernel doing it
for them by looking in /proc/acpi/thermal_zone/*/trip_points

New contents for /proc/acpi/thermal_zone/*/cooling_mode:

If _SCP available:
"0 - Active; 1 - Passive\n"

If _SCP unavailable:
"<setting not supported>\n"

Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/thermal.c