kernel-fxtec-pro1x/drivers/acpi
Len Brown 5d76b6f6c1 ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C
Linux has always ignored ACPI BIOS C2 with exit latency > 100 usec,
and the ACPI spec is clear that is correct FADT-supplied C2.

However, the ACPI spec explicitly states that _CST-supplied C-states
have no latency limits.

So move the 100usec C2 test out of the code shared
by FADT and _CST code-paths, and into the FADT-specific path.

This bug has not been visible until Nehalem, which advertises
a CPU-C2 worst case exit latency on servers of 205usec.
That (incorrect) figure is being used by BIOS writers
on mobile Nehalem systems for the AC configuration.
Thus, Linux ignores C2 leaving just C1, which is
saves less power, and also impacts performance
by preventing the use of turbo mode.

http://bugzilla.kernel.org/show_bug.cgi?id=15064

Tested-by: Alex Chiang <achiang@hp.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2010-01-20 00:54:01 -05:00
..
acpica Merge branch 'acpica' into release 2009-12-15 22:27:39 -05:00
ac.c ACPI: add AC/DC notifier 2009-10-06 13:55:56 -04:00
acpi_memhotplug.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
acpi_pad.c acpi_pad: squish warning 2009-12-16 03:21:22 -05:00
battery.c battery: fix typo in comment 2009-12-16 00:07:21 -05:00
blacklist.c ACPI: disable _OSI(Windows 2009) on Asus K50IJ 2009-12-22 02:39:24 -05:00
bus.c Merge branches 'bugzilla-14446', 'bugzilla-14753' and 'bugzilla-14824' into release 2009-12-24 01:17:01 -05:00
button.c ACPI: Use the return result of ACPI lid notifier chain correctly 2009-12-16 01:12:35 -05:00
cm_sbs.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
container.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
debug.c ACPI: add kernel tainting after overriding an ACPI control method 2009-12-15 22:52:19 -05:00
dock.c Merge branch 'dock' into release 2009-12-16 03:33:28 -05:00
ec.c Merge branches 'bugzilla-14446', 'bugzilla-14753' and 'bugzilla-14824' into release 2009-12-24 01:17:01 -05:00
event.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
fan.c ACPI: Remove repeated registered as cooling_device messages 2009-12-16 00:07:10 -05:00
glue.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
hest.c PCI: PCIe AER: honor ACPI HEST FIRMWARE FIRST mode 2009-11-04 13:06:25 -08:00
internal.h ACPI: processor: call _PDC early 2009-12-22 03:24:08 -05:00
Kconfig ACPI: Kconfig, fix proc aggregator text 2009-10-09 13:14:51 -04:00
Makefile ACPI: processor: call _PDC early 2009-12-22 03:24:08 -05:00
numa.c Merge branch 'misc-2.6.33' into release 2009-12-16 14:22:32 -05:00
osl.c ACPI: add const to acpi_check_resource_conflict() 2009-12-09 14:44:42 -05:00
pci_bind.c ACPI: kill acpi_get_pci_id 2009-06-17 23:32:23 -04:00
pci_irq.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
pci_link.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
pci_root.c ACPI: cleanup pci_root _OSC code. 2009-12-16 14:05:11 -05:00
pci_slot.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
power.c Merge branch 'sfi-base' into release 2009-09-19 00:37:13 -04:00
power_meter.c acpi-power-meter: Don't leak ACPI error codes to userspace 2009-11-05 12:25:39 -05:00
proc.c ACPI: clean up video.c boundary checks and types 2009-10-28 11:49:37 -04:00
processor_core.c ACPI: processor: change acpi_processor_set_pdc() interface 2009-12-22 03:33:58 -05:00
processor_idle.c ACPI: enable C2 and Turbo-mode on Nehalem notebooks on A/C 2010-01-20 00:54:01 -05:00
processor_pdc.c ACPI: processor: change acpi_processor_set_pdc() interface 2009-12-22 03:33:58 -05:00
processor_perflib.c Merge branch 'ost' into release 2009-12-16 02:18:36 -05:00
processor_thermal.c Merge branch 'processor-procfs-2.6.32' into release 2009-09-19 02:10:40 -04:00
processor_throttling.c ACPI: Move dereference after NULL test 2009-11-05 17:30:57 -05:00
reboot.c
sbs.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
sbshc.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
sbshc.h
scan.c ACPICA: Add post-order callback to acpi_walk_namespace 2009-11-24 21:31:10 -05:00
sleep.c ACPI: introduce kernel parameter acpi_sleep=sci_force_enable 2009-12-30 18:32:01 -05:00
sleep.h ACPI: convert acpi_device_lock spinlock to mutex 2009-04-07 00:02:40 -04:00
system.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
tables.c ACPI: check acpi_disabled in acpi_table_parse() and acpi_table_parse_entries() 2009-08-28 19:57:28 -04:00
thermal.c acpi: thermal: display forced passive trip points in proc 2009-12-16 01:54:09 -05:00
utils.c ACPI: Move definition of PREFIX from acpi_bus.h to internal..h 2009-08-28 19:57:27 -04:00
video.c Merge branch 'video-error-case' into release 2009-12-30 02:51:38 -05:00
video_detect.c Merge branch 'acpica' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2009-12-09 19:57:06 -08:00
wakeup.c ACPI PM: Replace wakeup.prepared with reference counter 2009-09-09 14:19:18 -07:00