aboutsummaryrefslogtreecommitdiff
path: root/source/components/hardware/hwsleep.c
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2012-03-20 18:17:33 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2012-03-20 18:17:33 +0000
commitb81dc021b3e3311e46f9e81de4f09855536e8147 (patch)
tree3fa3a8ab860459d0b2c9768eed9142052be1ced3 /source/components/hardware/hwsleep.c
parent5437485bdb98c4b00f15969e013c454426e9c862 (diff)
downloadsrc-b81dc021b3e3311e46f9e81de4f09855536e8147.tar.gz
src-b81dc021b3e3311e46f9e81de4f09855536e8147.zip
Import ACPICA 20120320.vendor/acpica/20120320
Notes
Notes: svn path=/vendor-sys/acpica/dist/; revision=233237 svn path=/vendor-sys/acpica/20120320/; revision=233238; tag=vendor/acpica/20120320
Diffstat (limited to 'source/components/hardware/hwsleep.c')
-rw-r--r--source/components/hardware/hwsleep.c32
1 files changed, 23 insertions, 9 deletions
diff --git a/source/components/hardware/hwsleep.c b/source/components/hardware/hwsleep.c
index 0d311435555a..1953ff846e80 100644
--- a/source/components/hardware/hwsleep.c
+++ b/source/components/hardware/hwsleep.c
@@ -55,6 +55,7 @@
* FUNCTION: AcpiHwLegacySleep
*
* PARAMETERS: SleepState - Which sleep state to enter
+ * Flags - ACPI_EXECUTE_GTS to run optional method
*
* RETURN: Status
*
@@ -65,7 +66,8 @@
ACPI_STATUS
AcpiHwLegacySleep (
- UINT8 SleepState)
+ UINT8 SleepState,
+ UINT8 Flags)
{
ACPI_BIT_REGISTER_INFO *SleepTypeRegInfo;
ACPI_BIT_REGISTER_INFO *SleepEnableRegInfo;
@@ -128,9 +130,12 @@ AcpiHwLegacySleep (
return_ACPI_STATUS (Status);
}
- /* Execute the _GTS method (Going To Sleep) */
+ /* Optionally execute _GTS (Going To Sleep) */
- AcpiHwExecuteSleepMethod (METHOD_NAME__GTS, SleepState);
+ if (Flags & ACPI_EXECUTE_GTS)
+ {
+ AcpiHwExecuteSleepMethod (METHOD_PATHNAME__GTS, SleepState);
+ }
/* Get current value of PM1A control */
@@ -228,6 +233,7 @@ AcpiHwLegacySleep (
* FUNCTION: AcpiHwLegacyWakePrep
*
* PARAMETERS: SleepState - Which sleep state we just exited
+ * Flags - ACPI_EXECUTE_BFS to run optional method
*
* RETURN: Status
*
@@ -239,7 +245,8 @@ AcpiHwLegacySleep (
ACPI_STATUS
AcpiHwLegacyWakePrep (
- UINT8 SleepState)
+ UINT8 SleepState,
+ UINT8 Flags)
{
ACPI_STATUS Status;
ACPI_BIT_REGISTER_INFO *SleepTypeRegInfo;
@@ -289,7 +296,12 @@ AcpiHwLegacyWakePrep (
}
}
- AcpiHwExecuteSleepMethod (METHOD_NAME__BFS, SleepState);
+ /* Optionally execute _BFS (Back From Sleep) */
+
+ if (Flags & ACPI_EXECUTE_BFS)
+ {
+ AcpiHwExecuteSleepMethod (METHOD_PATHNAME__BFS, SleepState);
+ }
return_ACPI_STATUS (Status);
}
@@ -299,6 +311,7 @@ AcpiHwLegacyWakePrep (
* FUNCTION: AcpiHwLegacyWake
*
* PARAMETERS: SleepState - Which sleep state we just exited
+ * Flags - Reserved, set to zero
*
* RETURN: Status
*
@@ -309,7 +322,8 @@ AcpiHwLegacyWakePrep (
ACPI_STATUS
AcpiHwLegacyWake (
- UINT8 SleepState)
+ UINT8 SleepState,
+ UINT8 Flags)
{
ACPI_STATUS Status;
@@ -320,7 +334,7 @@ AcpiHwLegacyWake (
/* Ensure EnterSleepStatePrep -> EnterSleepState ordering */
AcpiGbl_SleepTypeA = ACPI_SLEEP_TYPE_INVALID;
- AcpiHwExecuteSleepMethod (METHOD_NAME__SST, ACPI_SST_WAKING);
+ AcpiHwExecuteSleepMethod (METHOD_PATHNAME__SST, ACPI_SST_WAKING);
/*
* GPEs must be enabled before _WAK is called as GPEs
@@ -346,7 +360,7 @@ AcpiHwLegacyWake (
* Now we can execute _WAK, etc. Some machines require that the GPEs
* are enabled before the wake methods are executed.
*/
- AcpiHwExecuteSleepMethod (METHOD_NAME__WAK, SleepState);
+ AcpiHwExecuteSleepMethod (METHOD_PATHNAME__WAK, SleepState);
/*
* Some BIOS code assumes that WAK_STS will be cleared on resume
@@ -377,7 +391,7 @@ AcpiHwLegacyWake (
return_ACPI_STATUS (Status);
}
- AcpiHwExecuteSleepMethod (METHOD_NAME__SST, ACPI_SST_WORKING);
+ AcpiHwExecuteSleepMethod (METHOD_PATHNAME__SST, ACPI_SST_WORKING);
return_ACPI_STATUS (Status);
}