alistair23-linux/include/acpi
Zhang Rui d9460fd227 ACPI: register ACPI Processor as generic thermal cooling device
Register ACPI processor as thermal cooling devices.
A combination of processor T-state and P-state are used for thermal throttling.
the processor will reduce the frequency first and then set the T-state.

we use cpufreq_thermal_reduction_pctg to calculate the cpufreq limit,
and call cpufreq_verify_with_limit to set the cpufreq limit.
if cpufreq driver is loaded, then we have four cooling state for cpufreq control.
cooling state 0: cpufreq limit == max_freq
cooling state 1: cpufreq limit == max_freq * 80%
cooling state 2: cpufreq limit == max_freq * 60%
cooling state 3: cpufreq limit == max_freq * 40%

after the cpufreq limit is set to 40 percentage of the max_freq,
we use T-state for cooling.

eg. a processor has P-state support, and it has 8 T-state (T0-T7),
the max_state of the proceesor is 10:

state	cpufreq-limit  T-state
0:	max_freq	T0
1:	max_freq * 80%	T0
2:	max_freq * 60%	T0
3:	max_freq * 40%	T0
4:	max_freq * 40%	T1
5:	max_freq * 40%	T2
6:	max_freq * 40%	T3
7:	max_freq * 40%	T4
8:	max_freq * 40%	T5
9:	max_freq * 40%	T6
10:	max_freq * 40%	T7

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
Signed-off-by: Thomas Sujith <sujith.thomas@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2008-02-01 23:18:19 -05:00
..
platform
acconfig.h
acdebug.h
acdisasm.h
acdispat.h
acevents.h
acexcep.h
acglobal.h
achware.h ACPICA: hw: remove use_lock flag from acpi_hw_register_{read, write} 2007-10-10 01:00:26 -04:00
acinterp.h
aclocal.h
acmacros.h Pull misc into release branch 2007-07-22 02:27:40 -04:00
acnames.h
acnamesp.h
acobject.h
acopcode.h
acoutput.h ACPI: create CONFIG_ACPI_DEBUG_FUNC_TRACE 2007-07-22 02:20:07 -04:00
acparser.h
acpi.h
acpi_bus.h kobject: convert /sys/firmware/acpi/ to use kobject_create 2008-01-24 20:40:23 -08:00
acpi_drivers.h ACPI: CONFIG_ACPI_SLEEP=n power off regression in 2.6.23-rc8 (NOT in rc7) 2007-09-25 17:58:52 -04:00
acpi_numa.h
acpiosxf.h
acpixf.h ACPICA: hw: Don't carry spinlock over suspend 2007-10-10 01:00:39 -04:00
acresrc.h
acstruct.h ACPI: Fix a warning of discarding qualifiers from pointer target type 2007-08-25 01:38:40 -04:00
actables.h
actbl.h
actbl1.h Intel IOMMU: DMAR detection and parsing logic 2007-10-22 08:13:18 -07:00
actypes.h ACPI: autoload modules - ACPICA modifications 2007-07-23 13:56:00 -04:00
acutils.h ACPI: autoload modules - ACPICA modifications 2007-07-23 13:56:00 -04:00
amlcode.h
amlresrc.h
container.h
pdc_intel.h
processor.h ACPI: register ACPI Processor as generic thermal cooling device 2008-02-01 23:18:19 -05:00
reboot.h x86: dummy placeholder for acpi/reboot.h 2008-01-30 13:31:17 +01:00