diff options
author | Bob Moore <robert.moore@intel.com> | 2017-06-05 11:41:18 +0300 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2017-06-27 23:25:22 +0300 |
commit | 1d6e9cfa5a476e867c5571bce24aa5ce167896a8 (patch) | |
tree | 3c60e6e5a4c90fd80d25c723dae61306ec52dc12 /drivers/acpi/acpica/exresolv.c | |
parent | c6915b3f29eb0911997efbf05b815a4e2b7ec1d0 (diff) | |
download | linux-1d6e9cfa5a476e867c5571bce24aa5ce167896a8.tar.xz |
ACPICA: Fix for Device/Thermal objects with ObjectType and DerefOf
ACPICA commit 89565151aa4db7b546d4935b187bf2c4a86885ee
These types must be special cased because the namespace node
does not contain a subobject as do all other types.
Link: https://github.com/acpica/acpica/commit/89565151
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/acpica/exresolv.c')
-rw-r--r-- | drivers/acpi/acpica/exresolv.c | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/drivers/acpi/acpica/exresolv.c b/drivers/acpi/acpica/exresolv.c index aa8c6fd74cc3..5e1854ea85f6 100644 --- a/drivers/acpi/acpica/exresolv.c +++ b/drivers/acpi/acpica/exresolv.c @@ -368,11 +368,24 @@ acpi_ex_resolve_multiple(struct acpi_walk_state *walk_state, *)obj_desc); } - if (!obj_desc) { - ACPI_ERROR((AE_INFO, - "[%4.4s] Node is unresolved or uninitialized", - acpi_ut_get_node_name(node))); - return_ACPI_STATUS(AE_AML_UNINITIALIZED_NODE); + switch (type) { + case ACPI_TYPE_DEVICE: + case ACPI_TYPE_THERMAL: + + /* These types have no attached subobject */ + break; + + default: + + /* All other types require a subobject */ + + if (!obj_desc) { + ACPI_ERROR((AE_INFO, + "[%4.4s] Node is unresolved or uninitialized", + acpi_ut_get_node_name(node))); + return_ACPI_STATUS(AE_AML_UNINITIALIZED_NODE); + } + break; } break; |