aboutsummaryrefslogtreecommitdiffstats
path: root/include/acpi
diff options
context:
space:
mode:
authorLin Ming <ming.m.lin@intel.com>2012-03-20 22:01:49 -0400
committerLen Brown <len.brown@intel.com>2012-03-26 21:16:25 -0400
commit8a73b17e4c0e09cb5b80deee5451e29b830df4cc (patch)
tree292f555ca2aa42b4b4d756aca01a53b65df60970 /include/acpi
parent4acb6884b5568f19bd47173cba8bc1f2289d6baa (diff)
ACPICA: Sleep/Wake interfaces: optionally execute _GTS and _BFS
Enhanced the sleep/wake interfaces to optionally execute the _GTS method (Going To Sleep), and the _BFS method (Back From Sleep). Windows apparently does not execute these methods, and therefore these methods are often untested. It has been seen on some systems where the execution of these methods causes errors and also prevents the machine from entering S5. It is therefore suggested that host operating systems do not execute these methods by default. In the future, perhaps these methods can be optionally executed based on the age of the system and/or what is the newest version of Windows that the BIOS asks for via _OSI. Signed-off-by: Lin Ming <ming.m.lin@intel.com> Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'include/acpi')
-rw-r--r--include/acpi/acpixf.h4
-rw-r--r--include/acpi/actypes.h9
2 files changed, 10 insertions, 3 deletions
diff --git a/include/acpi/acpixf.h b/include/acpi/acpixf.h
index fb8a238115d6..488c986ebe44 100644
--- a/include/acpi/acpixf.h
+++ b/include/acpi/acpixf.h
@@ -486,11 +486,11 @@ acpi_get_sleep_type_data(u8 sleep_state, u8 * slp_typ_a, u8 * slp_typ_b);
486 486
487acpi_status acpi_enter_sleep_state_prep(u8 sleep_state); 487acpi_status acpi_enter_sleep_state_prep(u8 sleep_state);
488 488
489acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state); 489acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state, u8 flags);
490 490
491ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status asmlinkage acpi_enter_sleep_state_s4bios(void)) 491ACPI_HW_DEPENDENT_RETURN_STATUS(acpi_status asmlinkage acpi_enter_sleep_state_s4bios(void))
492 492
493acpi_status acpi_leave_sleep_state_prep(u8 sleep_state); 493acpi_status acpi_leave_sleep_state_prep(u8 sleep_state, u8 flags);
494 494
495acpi_status acpi_leave_sleep_state(u8 sleep_state); 495acpi_status acpi_leave_sleep_state(u8 sleep_state);
496 496
diff --git a/include/acpi/actypes.h b/include/acpi/actypes.h
index 349615833a4a..eba66043cf1b 100644
--- a/include/acpi/actypes.h
+++ b/include/acpi/actypes.h
@@ -518,6 +518,13 @@ typedef u64 acpi_integer;
518#define ACPI_SLEEP_TYPE_INVALID 0xFF 518#define ACPI_SLEEP_TYPE_INVALID 0xFF
519 519
520/* 520/*
521 * Sleep/Wake flags
522 */
523#define ACPI_NO_OPTIONAL_METHODS 0x00 /* Do not execute any optional methods */
524#define ACPI_EXECUTE_GTS 0x01 /* For enter sleep interface */
525#define ACPI_EXECUTE_BFS 0x02 /* For leave sleep prep interface */
526
527/*
521 * Standard notify values 528 * Standard notify values
522 */ 529 */
523#define ACPI_NOTIFY_BUS_CHECK (u8) 0x00 530#define ACPI_NOTIFY_BUS_CHECK (u8) 0x00
@@ -790,7 +797,7 @@ typedef u8 acpi_adr_space_type;
790 797
791/* Sleep function dispatch */ 798/* Sleep function dispatch */
792 799
793typedef acpi_status(*ACPI_SLEEP_FUNCTION) (u8 sleep_state); 800typedef acpi_status(*ACPI_SLEEP_FUNCTION) (u8 sleep_state, u8 flags);
794 801
795struct acpi_sleep_functions { 802struct acpi_sleep_functions {
796 ACPI_SLEEP_FUNCTION legacy_function; 803 ACPI_SLEEP_FUNCTION legacy_function;