kernel-fxtec-pro1x/arch/i386/kernel/cpu/cpufreq
Venkatesh Pallipadi dfde5d62ed [CPUFREQ][8/8] acpi-cpufreq: Add support for freq feedback from hardware
Enable ondemand governor and acpi-cpufreq to use IA32_APERF and IA32_MPERF MSR
to get active frequency feedback for the last sampling interval. This will
make ondemand take right frequency decisions when hardware coordination of
frequency is going on.

Without APERF/MPERF, ondemand can take wrong decision at times due
to underlying hardware coordination or TM2.
Example:
* CPU 0 and CPU 1 are hardware cooridnated.
* CPU 1 running at highest frequency.
* CPU 0 was running at highest freq. Now ondemand reduces it to
  some intermediate frequency based on utilization.
* Due to underlying hardware coordination with other CPU 1, CPU 0 continues to
  run at highest frequency (as long as other CPU is at highest).
* When ondemand samples CPU 0 again next time, without actual frequency
  feedback from APERF/MPERF, it will think that previous frequency change
  was successful and can go to wrong target frequency. This is because it
  thinks that utilization it has got this sampling interval is when running at
  intermediate frequency, rather than actual highest frequency.

More information about IA32_APERF IA32_MPERF MSR:
Refer to IA-32 Intel® Architecture Software Developer's Manual at
http://developer.intel.com

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Dave Jones <davej@redhat.com>
2006-10-15 19:57:11 -04:00
..
acpi-cpufreq.c [CPUFREQ][8/8] acpi-cpufreq: Add support for freq feedback from hardware 2006-10-15 19:57:11 -04:00
cpufreq-nforce2.c [CPUFREQ] sets nforce2 minimum PLL divider to 2. 2006-06-05 15:25:20 -04:00
elanfreq.c [CPUFREQ] Lots of whitespace & CodingStyle cleanup. 2006-02-28 00:43:23 -05:00
gx-suspmod.c [CPUFREQ] kzalloc conversion for gx-suspmod 2006-03-11 16:13:56 -05:00
Kconfig [CPUFREQ][4/8] acpi-cpufreq: Mark speedstep-centrino ACPI as deprecated 2006-10-15 19:57:10 -04:00
longhaul.c [CPUFREQ] longhaul: remove duplicated code. 2006-09-27 17:03:36 -04:00
longhaul.h [CPUFREQ] Longhaul - Add voltage scaling to driver 2006-09-05 17:28:42 -04:00
longrun.c [CPUFREQ] Remove strange No-op from longrun.c 2006-05-31 16:13:14 -04:00
Makefile [CPUFREQ][4/8] acpi-cpufreq: Mark speedstep-centrino ACPI as deprecated 2006-10-15 19:57:10 -04:00
p4-clockmod.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
powernow-k6.c [CPUFREQ] Lots of whitespace & CodingStyle cleanup. 2006-02-28 00:43:23 -05:00
powernow-k7.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
powernow-k7.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
powernow-k8.c [CPUFREQ] Fix powernow-k8 SMP kernel on UP hardware bug. 2006-06-21 17:34:25 -04:00
powernow-k8.h [CPUFREQ] correct powernow-k8 fid/vid masks for extended parts 2006-06-20 01:46:04 -04:00
sc520_freq.c [CPUFREQ] AMD Elan SC520 cpufreq driver. 2005-05-31 19:03:45 -07:00
speedstep-centrino.c [CPUFREQ][4/8] acpi-cpufreq: Mark speedstep-centrino ACPI as deprecated 2006-10-15 19:57:10 -04:00
speedstep-ich.c [CPUFREQ] Move PMBASE reading away and do it only once at initialization time 2005-12-06 19:27:15 -08:00
speedstep-lib.c [CPUFREQ] Lots of whitespace & CodingStyle cleanup. 2006-02-28 00:43:23 -05:00
speedstep-lib.h [CPUFREQ] Lots of whitespace & CodingStyle cleanup. 2006-02-28 00:43:23 -05:00
speedstep-smi.c Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq 2006-03-25 08:52:23 -08:00