diff options
author | Lv Zheng <lv.zheng@intel.com> | 2016-12-28 15:28:49 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2017-01-02 23:18:41 +0100 |
commit | 0fc5e8f4e4b33ddfa1d1d673fcd420d6e13eb076 (patch) | |
tree | 98882708adde1882b7aa110832c85df4b574a307 /include | |
parent | fcfb45531d7ef71a19caaa0a983611ca57ec04fe (diff) | |
download | lwn-0fc5e8f4e4b33ddfa1d1d673fcd420d6e13eb076.tar.gz lwn-0fc5e8f4e4b33ddfa1d1d673fcd420d6e13eb076.zip |
ACPICA: Hardware: Add sleep register hooks
ACPICA commit ba665dc8e20d9f7730466a659564dd6c557a6cbc
In Linux, para-virtualization implmentation hooks critical register
writes to prevent real hardware operations. This increases divergences
when the sleep registers are cracked in Linux resident ACPICA.
This patch tries to introduce a single OSL to reduce the divergences.
Link: https://github.com/acpica/acpica/commit/ba665dc8
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/acpi/acexcep.h | 9 | ||||
-rw-r--r-- | include/acpi/acpiosxf.h | 4 |
2 files changed, 7 insertions, 6 deletions
diff --git a/include/acpi/acexcep.h b/include/acpi/acexcep.h index 2c396344a7a2..1155002761a7 100644 --- a/include/acpi/acexcep.h +++ b/include/acpi/acexcep.h @@ -91,7 +91,6 @@ struct acpi_exception_info { #define ACPI_SUCCESS(a) (!(a)) #define ACPI_FAILURE(a) (a) -#define ACPI_SKIP(a) (a == AE_CTRL_SKIP) #define AE_OK (acpi_status) 0x0000 /* @@ -211,11 +210,10 @@ struct acpi_exception_info { #define AE_CTRL_TRANSFER EXCEP_CTL (0x0008) #define AE_CTRL_BREAK EXCEP_CTL (0x0009) #define AE_CTRL_CONTINUE EXCEP_CTL (0x000A) -#define AE_CTRL_SKIP EXCEP_CTL (0x000B) -#define AE_CTRL_PARSE_CONTINUE EXCEP_CTL (0x000C) -#define AE_CTRL_PARSE_PENDING EXCEP_CTL (0x000D) +#define AE_CTRL_PARSE_CONTINUE EXCEP_CTL (0x000B) +#define AE_CTRL_PARSE_PENDING EXCEP_CTL (0x000C) -#define AE_CODE_CTRL_MAX 0x000D +#define AE_CODE_CTRL_MAX 0x000C /* Exception strings for acpi_format_exception */ @@ -378,7 +376,6 @@ static const struct acpi_exception_info acpi_gbl_exception_names_ctrl[] = { EXCEP_TXT("AE_CTRL_TRANSFER", "Transfer control to called method"), EXCEP_TXT("AE_CTRL_BREAK", "A Break has been executed"), EXCEP_TXT("AE_CTRL_CONTINUE", "A Continue has been executed"), - EXCEP_TXT("AE_CTRL_SKIP", "Not currently used"), EXCEP_TXT("AE_CTRL_PARSE_CONTINUE", "Used to skip over bad opcodes"), EXCEP_TXT("AE_CTRL_PARSE_PENDING", "Used to implement AML While loops") }; diff --git a/include/acpi/acpiosxf.h b/include/acpi/acpiosxf.h index 42ab9b37f33d..e166013b4712 100644 --- a/include/acpi/acpiosxf.h +++ b/include/acpi/acpiosxf.h @@ -333,6 +333,10 @@ u64 acpi_os_get_timer(void); acpi_status acpi_os_signal(u32 function, void *info); #endif +#ifndef ACPI_USE_ALTERNATE_PROTOTYPE_acpi_os_enter_sleep +acpi_status acpi_os_enter_sleep(u8 sleep_state, u32 rega_value, u32 regb_value); +#endif + /* * Debug print routines */ |