diff options
author | Bob Moore <robert.moore@intel.com> | 2017-08-03 14:27:15 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2017-08-03 23:34:17 +0200 |
commit | 7ab58197d84c29cf20162eaaed1eb2cc94fc73a7 (patch) | |
tree | 095860957767985f0e9391a8483a741f5fa50aa9 /drivers/acpi/acpica/dbdisply.c | |
parent | a5b6e982fb9dc8e49307ff33ddc4b95f1b8e385c (diff) | |
download | talos-obmc-linux-7ab58197d84c29cf20162eaaed1eb2cc94fc73a7.tar.gz talos-obmc-linux-7ab58197d84c29cf20162eaaed1eb2cc94fc73a7.zip |
ACPICA: Debugger: Improve support for Alias objects
ACPICA commit 916993dbcd45b46e01f6c9b8337a01513f5d8dcc
Properly resolve alias objects for display.
General cleanup of related output.
Link: https://github.com/acpica/acpica/commit/916993db
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/dbdisply.c')
-rw-r--r-- | drivers/acpi/acpica/dbdisply.c | 37 |
1 files changed, 32 insertions, 5 deletions
diff --git a/drivers/acpi/acpica/dbdisply.c b/drivers/acpi/acpica/dbdisply.c index 46bf270ac525..5a606eac0c22 100644 --- a/drivers/acpi/acpica/dbdisply.c +++ b/drivers/acpi/acpica/dbdisply.c @@ -310,7 +310,7 @@ dump_node: } else { - acpi_os_printf("Object (%p) Pathname: %s\n", + acpi_os_printf("Object %p: Namespace Node - Pathname: %s\n", node, (char *)ret_buf.pointer); } @@ -326,7 +326,7 @@ dump_node: obj_desc = acpi_ns_get_attached_object(node); if (obj_desc) { - acpi_os_printf("\nAttached Object (%p):\n", obj_desc); + acpi_os_printf("\nAttached Object %p:", obj_desc); if (!acpi_os_readable (obj_desc, sizeof(union acpi_operand_object))) { acpi_os_printf @@ -335,9 +335,36 @@ dump_node: return; } - acpi_ut_debug_dump_buffer((void *)obj_desc, - sizeof(union acpi_operand_object), - display, ACPI_UINT32_MAX); + if (ACPI_GET_DESCRIPTOR_TYPE(((struct acpi_namespace_node *) + obj_desc)) == + ACPI_DESC_TYPE_NAMED) { + acpi_os_printf(" Namespace Node - "); + status = + acpi_get_name((struct acpi_namespace_node *) + obj_desc, + ACPI_FULL_PATHNAME_NO_TRAILING, + &ret_buf); + if (ACPI_FAILURE(status)) { + acpi_os_printf + ("Could not convert name to pathname\n"); + } else { + acpi_os_printf("Pathname: %s", + (char *)ret_buf.pointer); + } + + acpi_os_printf("\n"); + acpi_ut_debug_dump_buffer((void *)obj_desc, + sizeof(struct + acpi_namespace_node), + display, ACPI_UINT32_MAX); + } else { + acpi_os_printf("\n"); + acpi_ut_debug_dump_buffer((void *)obj_desc, + sizeof(union + acpi_operand_object), + display, ACPI_UINT32_MAX); + } + acpi_ex_dump_object_descriptor(obj_desc, 1); } } |