ACPICA: Remove acpi_gbl_group_module_level_code and only use acpi_gbl_execute_tables_as_methods instead
acpi_gbl_group_module_level_code and acpi_gbl_execute_tables_as_methods were used to enable different table load behavior. The different table load behaviors are as follows: A.) acpi_gbl_group_module_level_code enabled the legacy approach where ASL if statements are executed after the namespace object has been loaded. B.) acpi_gbl_execute_tables_as_methods is currently used to enable the table load to be a method invocation. This meaning that ASL If statements are executed in-line rather than deferred until after the ACPI namespace has been populated. This is the correct behavior and option A will be removed in the future. We do not support a table load behavior where these variables are assigned the same value. In otherwords, we only support option A or B and do not need acpi_gbl_group_module_level_code to enable A. From now on, acpi_gbl_execute_tables_as_methods == 0 enables option A and acpi_gbl_execute_tables_as_methods == 1 enables option B. Note: option A is expected to be removed in the future and option B will become the only supported table load behavior. Signed-off-by: Erik Schmauss <erik.schmauss@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Родитель
c64baa3a6f
Коммит
08930d56c7
|
@ -147,7 +147,7 @@ acpi_ps_get_arguments(struct acpi_walk_state *walk_state,
|
|||
* future. Use of this option can cause problems with AML code that
|
||||
* depends upon in-order immediate execution of module-level code.
|
||||
*/
|
||||
if (acpi_gbl_group_module_level_code &&
|
||||
if (!acpi_gbl_execute_tables_as_methods &&
|
||||
(walk_state->pass_number <= ACPI_IMODE_LOAD_PASS2) &&
|
||||
((walk_state->parse_flags & ACPI_PARSE_DISASSEMBLE) == 0)) {
|
||||
/*
|
||||
|
|
|
@ -69,8 +69,7 @@ acpi_status ACPI_INIT_FUNCTION acpi_load_tables(void)
|
|||
"While loading namespace from ACPI tables"));
|
||||
}
|
||||
|
||||
if (acpi_gbl_execute_tables_as_methods
|
||||
|| !acpi_gbl_group_module_level_code) {
|
||||
if (acpi_gbl_execute_tables_as_methods) {
|
||||
/*
|
||||
* If the module-level code support is enabled, initialize the objects
|
||||
* in the namespace that remain uninitialized. This runs the executable
|
||||
|
|
|
@ -156,13 +156,6 @@ ACPI_INIT_GLOBAL(u8, acpi_gbl_copy_dsdt_locally, FALSE);
|
|||
*/
|
||||
ACPI_INIT_GLOBAL(u8, acpi_gbl_do_not_use_xsdt, FALSE);
|
||||
|
||||
/*
|
||||
* Optionally support group module level code.
|
||||
* NOTE, this is essentially obsolete and will be removed soon
|
||||
* (01/2018).
|
||||
*/
|
||||
ACPI_INIT_GLOBAL(u8, acpi_gbl_group_module_level_code, FALSE);
|
||||
|
||||
/*
|
||||
* Optionally support module level code by parsing an entire table as
|
||||
* a method as it is loaded. Default is TRUE.
|
||||
|
|
Загрузка…
Ссылка в новой задаче