diff options
author | Bob Moore <robert.moore@intel.com> | 2012-02-14 14:14:27 +0400 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2012-03-22 09:44:49 +0400 |
commit | 33620c5419e8a11814dd11e02a80e6ef77a43407 (patch) | |
tree | 8643dbb1e332dd9ece6fb92f22000413e8d8fdc7 /drivers/acpi/acpica/hwxfsleep.c | |
parent | d08310fe0d6bd8c82da94e8d8ef48bdbe14d2bd1 (diff) | |
download | linux-33620c5419e8a11814dd11e02a80e6ef77a43407.tar.xz |
ACPICA: Support for custom ACPICA build for ACPI 5 reduced hardware
Add ACPI_REDUCED_HARDWARE flag that removes all hardware-related
code (about 10% code, 5% static data).
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/acpica/hwxfsleep.c')
-rw-r--r-- | drivers/acpi/acpica/hwxfsleep.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/drivers/acpi/acpica/hwxfsleep.c b/drivers/acpi/acpica/hwxfsleep.c index 29c0fd3810b0..d599961e93c8 100644 --- a/drivers/acpi/acpica/hwxfsleep.c +++ b/drivers/acpi/acpica/hwxfsleep.c @@ -48,6 +48,7 @@ #define _COMPONENT ACPI_HARDWARE ACPI_MODULE_NAME("hwxfsleep") +#if (!ACPI_REDUCED_HARDWARE) /******************************************************************************* * * FUNCTION: acpi_set_firmware_waking_vector @@ -189,7 +190,7 @@ acpi_status asmlinkage acpi_enter_sleep_state_s4bios(void) } ACPI_EXPORT_SYMBOL(acpi_enter_sleep_state_s4bios) - +#endif /* !ACPI_REDUCED_HARDWARE */ /******************************************************************************* * * FUNCTION: acpi_enter_sleep_state_prep @@ -290,6 +291,7 @@ acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state) acpi_gbl_sleep_type_a, acpi_gbl_sleep_type_b)); return_ACPI_STATUS(AE_AML_OPERAND_VALUE); } +#if (!ACPI_REDUCED_HARDWARE) /* If Hardware Reduced flag is set, must use the extended sleep registers */ @@ -301,6 +303,11 @@ acpi_status asmlinkage acpi_enter_sleep_state(u8 sleep_state) status = acpi_hw_legacy_sleep(sleep_state); } +#else + status = acpi_hw_extended_sleep(sleep_state); + +#endif /* !ACPI_REDUCED_HARDWARE */ + return_ACPI_STATUS(status); } @@ -326,6 +333,8 @@ acpi_status acpi_leave_sleep_state_prep(u8 sleep_state) ACPI_FUNCTION_TRACE(acpi_leave_sleep_state); +#if (!ACPI_REDUCED_HARDWARE) + /* If Hardware Reduced flag is set, must use the extended sleep registers */ if (acpi_gbl_reduced_hardware || acpi_gbl_FADT.sleep_control.address) { @@ -335,6 +344,10 @@ acpi_status acpi_leave_sleep_state_prep(u8 sleep_state) status = acpi_hw_legacy_wake_prep(sleep_state); } +#else + status = acpi_hw_extended_wake_prep(sleep_state); + +#endif /* !ACPI_REDUCED_HARDWARE */ return_ACPI_STATUS(status); @@ -361,6 +374,8 @@ acpi_status acpi_leave_sleep_state(u8 sleep_state) ACPI_FUNCTION_TRACE(acpi_leave_sleep_state); +#if (!ACPI_REDUCED_HARDWARE) + /* If Hardware Reduced flag is set, must use the extended sleep registers */ if (acpi_gbl_reduced_hardware || acpi_gbl_FADT.sleep_control.address) { @@ -371,6 +386,11 @@ acpi_status acpi_leave_sleep_state(u8 sleep_state) status = acpi_hw_legacy_wake(sleep_state); } +#else + status = acpi_hw_extended_wake(sleep_state); + +#endif /* !ACPI_REDUCED_HARDWARE */ + return_ACPI_STATUS(status); } |