diff options
author | Bob Moore <robert.moore@intel.com> | 2015-04-13 11:50:32 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2015-04-14 14:51:54 +0200 |
commit | 56a3d5e755e889d1543cb90a3ebaed513cadb727 (patch) | |
tree | 31e887143e802bbd19740ebea1d57cb9757ad4a9 /drivers/acpi/acpica/dsutils.c | |
parent | 2e7cc46a0f30bc3b749e371ab0afd29b774ae898 (diff) | |
download | linux-56a3d5e755e889d1543cb90a3ebaed513cadb727.tar.gz linux-56a3d5e755e889d1543cb90a3ebaed513cadb727.tar.bz2 linux-56a3d5e755e889d1543cb90a3ebaed513cadb727.zip |
ACPICA: Add infrastructure for External() opcode.
ACPICA commit d115fe2ffdab449d6107d58580c5afd0a81d65fe
This change adds the basic low-level infrastructure for the External
AML opcode. The interpreter will simply ignore this op, as the op
is intended for use by the disassembler only.
Note that External() opcode is useful for disassembler, interpreter
can simply ignore it and still return exceptions for unknown control
methods so the kernel part only includes the grammar definition of
External() opcode in order to ignore it but doesn't interpret it.
Link: https://github.com/acpica/acpica/commit/d115fe2f
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/dsutils.c')
-rw-r--r-- | drivers/acpi/acpica/dsutils.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/acpi/acpica/dsutils.c b/drivers/acpi/acpica/dsutils.c index e5ff89bcb3f5..deeddd6d2f05 100644 --- a/drivers/acpi/acpica/dsutils.c +++ b/drivers/acpi/acpica/dsutils.c @@ -564,6 +564,17 @@ acpi_ds_create_operand(struct acpi_walk_state *walk_state, acpi_operand_object, acpi_gbl_root_node); status = AE_OK; + } else if (parent_op->common.aml_opcode == + AML_EXTERNAL_OP) { + + /* TBD: May only be temporary */ + + obj_desc = + acpi_ut_create_string_object((acpi_size) name_length); + + ACPI_STRNCPY(obj_desc->string.pointer, + name_string, name_length); + status = AE_OK; } else { /* * We just plain didn't find it -- which is a |