linux/include/acpi
Deepthi Dharwar 46bcfad7a8 cpuidle: Single/Global registration of idle states
This patch makes the cpuidle_states structure global (single copy)
instead of per-cpu. The statistics needed on per-cpu basis
by the governor are kept per-cpu. This simplifies the cpuidle
subsystem as state registration is done by single cpu only.
Having single copy of cpuidle_states saves memory. Rare case
of asymmetric C-states can be handled within the cpuidle driver
and architectures such as POWER do not have asymmetric C-states.

Having single/global registration of all the idle states,
dynamic C-state transitions on x86 are handled by
the boot cpu. Here, the boot cpu  would disable all the devices,
re-populate the states and later enable all the devices,
irrespective of the cpu that would receive the notification first.

Reference:
https://lkml.org/lkml/2011/4/25/83

Signed-off-by: Deepthi Dharwar <deepthi@linux.vnet.ibm.com>
Signed-off-by: Trinabh Gupta <g.trinabh@gmail.com>
Tested-by: Jean Pihet <j-pihet@ti.com>
Reviewed-by: Kevin Hilman <khilman@ti.com>
Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Acked-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2011-11-06 21:13:58 -05:00
..
platform atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
acexcep.h ACPICA: Update all ACPICA copyrights and signons to 2011 2011-01-18 23:48:03 -05:00
acnames.h ACPICA: Update all ACPICA copyrights and signons to 2011 2011-01-18 23:48:03 -05:00
acoutput.h ACPICA: Fix unresolved name issue for no-debug and no-error-msg cases 2011-03-02 19:38:04 -05:00
acpi_bus.h ACPI: Fixes device power states array overflow 2011-07-13 23:53:22 -04:00
acpi_drivers.h ACPI: constify ops structs 2011-07-16 18:36:17 -04:00
acpi_numa.h ACPI: misc cleanups 2008-02-07 03:33:23 -05:00
acpi.h ACPICA: Update all ACPICA copyrights and signons to 2011 2011-01-18 23:48:03 -05:00
acpiosxf.h ACPI: Fix lockdep false positives in acpi_power_off() 2011-07-13 14:49:09 -04:00
acpixf.h ACPICA: Update to version 20110623 2011-07-13 23:51:51 -04:00
acrestyp.h ACPICA: Update all ACPICA copyrights and signons to 2011 2011-01-18 23:48:03 -05:00
actbl1.h Merge branch 'acpica' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2011-01-20 16:28:34 -08:00
actbl2.h ACPICA: Header support for SLIC table 2011-03-23 00:18:18 -04:00
actbl.h Fix common misspellings 2011-03-31 11:26:23 -03:00
actypes.h Merge branches 'acpica', 'aml-custom', 'bugzilla-16548', 'bugzilla-20242', 'd3-cold', 'ec-asus' and 'thermal-fix' into release 2011-05-29 04:38:48 -04:00
apei.h ACPI: APEI build fix 2011-08-03 11:15:59 -04:00
atomicio.h ACPI, IO memory pre-mapping and atomic accessing 2010-05-19 11:40:03 -04:00
button.h ACPI: make ACPI button funcs no-ops if not built in 2009-09-17 14:48:23 -07:00
container.h [ACPI] Lindent all ACPI files 2005-08-05 00:45:14 -04:00
hed.h ACPI Hardware Error Device (PNP0C33) support 2010-05-19 22:40:24 -04:00
pdc_intel.h ACPI: Enable bit 11 in _PDC to advertise hw coord 2009-02-07 00:41:14 -05:00
processor.h cpuidle: Single/Global registration of idle states 2011-11-06 21:13:58 -05:00
reboot.h Add the ability to reset the machine using the RESET_REG in ACPI's FADT table. 2008-07-16 23:27:08 +02:00
video.h i915: Fix opregion notifications 2011-07-13 11:19:47 -07:00