diff options
author | Lv Zheng <lv.zheng@intel.com> | 2013-06-08 09:01:07 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-06-20 01:39:09 +0200 |
commit | 5a9792f3be74bfad2985b3f4c7afc9e6f6a3f798 (patch) | |
tree | a022831452c1378dde4a952e081c787418ca672b /drivers/acpi/acpica/nspredef.c | |
parent | aa6329c44bccedbd8b17094c1c1aee1d9a9de461 (diff) |
ACPICA: Add several repairs for _CST predefined name
Sort list based on the C-state, remove invalid/zero entries.
ACPICA BZ 890. Lv Zheng.
Fixes these possible problems with the _CST object:
1. Sort the list ascending by C state type.
2. Ensure type cannot be zero.
3. A sub-package count of zero means _CST is meaningless.
4. Count must match the number of C state sub-packages.
References: https://bugs.acpica.org/show_bug.cgi?id=890
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 'drivers/acpi/acpica/nspredef.c')
-rw-r--r-- | drivers/acpi/acpica/nspredef.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/acpi/acpica/nspredef.c b/drivers/acpi/acpica/nspredef.c index 8d59ac2399e0..24b71a01bf93 100644 --- a/drivers/acpi/acpica/nspredef.c +++ b/drivers/acpi/acpica/nspredef.c @@ -159,9 +159,10 @@ acpi_ns_check_return_value(struct acpi_namespace_node *node, status = acpi_ns_check_package(info, return_object_ptr); if (ACPI_FAILURE(status)) { - /* We might be able to fix an operand type error (_PRT) */ + /* We might be able to fix some errors */ - if (status != AE_AML_OPERAND_TYPE) { + if ((status != AE_AML_OPERAND_TYPE) && + (status != AE_AML_OPERAND_VALUE)) { goto exit; } } |