aboutsummaryrefslogtreecommitdiff
path: root/source/components/hardware
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2012-07-11 16:51:47 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2012-07-11 16:51:47 +0000
commit8724452f676e45bfd39cfb47234f7def5551f067 (patch)
treeadad4747b5f7a0166c805c0a7a6bdd4c884aa24b /source/components/hardware
parentafea6800ce201481ac6ebace2b4266b3b1b15d6e (diff)
Import ACPICA 20120711.vendor/acpica/20120711
Notes
Notes: svn path=/vendor-sys/acpica/dist/; revision=238367 svn path=/vendor-sys/acpica/20120711/; revision=238368; tag=vendor/acpica/20120711
Diffstat (limited to 'source/components/hardware')
-rw-r--r--source/components/hardware/hwsleep.c25
-rw-r--r--source/components/hardware/hwxfsleep.c8
2 files changed, 8 insertions, 25 deletions
diff --git a/source/components/hardware/hwsleep.c b/source/components/hardware/hwsleep.c
index 1953ff846e80..1957fbdf2764 100644
--- a/source/components/hardware/hwsleep.c
+++ b/source/components/hardware/hwsleep.c
@@ -99,20 +99,6 @@ AcpiHwLegacySleep (
return_ACPI_STATUS (Status);
}
- if (SleepState != ACPI_STATE_S5)
- {
- /*
- * Disable BM arbitration. This feature is contained within an
- * optional register (PM2 Control), so ignore a BAD_ADDRESS
- * exception.
- */
- Status = AcpiWriteBitRegister (ACPI_BITREG_ARB_DISABLE, 1);
- if (ACPI_FAILURE (Status) && (Status != AE_BAD_ADDRESS))
- {
- return_ACPI_STATUS (Status);
- }
- }
-
/*
* 1) Disable/Clear all GPEs
* 2) Enable all wakeup GPEs
@@ -380,17 +366,6 @@ AcpiHwLegacyWake (
AcpiGbl_FixedEventInfo[ACPI_EVENT_POWER_BUTTON].StatusRegisterId,
ACPI_CLEAR_STATUS);
- /*
- * Enable BM arbitration. This feature is contained within an
- * optional register (PM2 Control), so ignore a BAD_ADDRESS
- * exception.
- */
- Status = AcpiWriteBitRegister (ACPI_BITREG_ARB_DISABLE, 0);
- if (ACPI_FAILURE (Status) && (Status != AE_BAD_ADDRESS))
- {
- return_ACPI_STATUS (Status);
- }
-
AcpiHwExecuteSleepMethod (METHOD_PATHNAME__SST, ACPI_SST_WORKING);
return_ACPI_STATUS (Status);
}
diff --git a/source/components/hardware/hwxfsleep.c b/source/components/hardware/hwxfsleep.c
index b7cbbc813e65..caa51a8a4a62 100644
--- a/source/components/hardware/hwxfsleep.c
+++ b/source/components/hardware/hwxfsleep.c
@@ -101,6 +101,14 @@ AcpiSetFirmwareWakingVector (
ACPI_FUNCTION_TRACE (AcpiSetFirmwareWakingVector);
+ /*
+ * According to the ACPI specification 2.0c and later, the 64-bit
+ * waking vector should be cleared and the 32-bit waking vector should
+ * be used, unless we want the wake-up code to be called by the BIOS in
+ * Protected Mode. Some systems (for example HP dv5-1004nr) are known
+ * to fail to resume if the 64-bit vector is used.
+ */
+
/* Set the 32-bit vector */
AcpiGbl_FACS->FirmwareWakingVector = PhysicalAddress;