mirror of
https://github.com/torvalds/linux.git
synced 2024-12-02 17:11:33 +00:00
ACPICA: Enable Scope change to root during module-level code execution.
Allows constructs like this: If (XXXX) Scope (\) ... Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Feng Tang <feng.tang@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
a950c135e5
commit
28f538b56d
@ -230,6 +230,20 @@ acpi_ds_load1_begin_op(struct acpi_walk_state * walk_state,
|
||||
walk_state->scope_info->common.value = ACPI_TYPE_ANY;
|
||||
break;
|
||||
|
||||
case ACPI_TYPE_METHOD:
|
||||
|
||||
/*
|
||||
* Allow scope change to root during execution of module-level
|
||||
* code. Root is typed METHOD during this time.
|
||||
*/
|
||||
if ((node == acpi_gbl_root_node) &&
|
||||
(walk_state->
|
||||
parse_flags & ACPI_PARSE_MODULE_LEVEL)) {
|
||||
break;
|
||||
}
|
||||
|
||||
/*lint -fallthrough */
|
||||
|
||||
default:
|
||||
|
||||
/* All other types are an error */
|
||||
|
@ -230,6 +230,20 @@ acpi_ds_load2_begin_op(struct acpi_walk_state *walk_state,
|
||||
walk_state->scope_info->common.value = ACPI_TYPE_ANY;
|
||||
break;
|
||||
|
||||
case ACPI_TYPE_METHOD:
|
||||
|
||||
/*
|
||||
* Allow scope change to root during execution of module-level
|
||||
* code. Root is typed METHOD during this time.
|
||||
*/
|
||||
if ((node == acpi_gbl_root_node) &&
|
||||
(walk_state->
|
||||
parse_flags & ACPI_PARSE_MODULE_LEVEL)) {
|
||||
break;
|
||||
}
|
||||
|
||||
/*lint -fallthrough */
|
||||
|
||||
default:
|
||||
|
||||
/* All other types are an error */
|
||||
|
Loading…
Reference in New Issue
Block a user