diff options
Diffstat (limited to 'drivers/acpi/acpica/exdebug.c')
-rw-r--r-- | drivers/acpi/acpica/exdebug.c | 42 |
1 files changed, 40 insertions, 2 deletions
diff --git a/drivers/acpi/acpica/exdebug.c b/drivers/acpi/acpica/exdebug.c index e67d0aca3fe6..815442bbd051 100644 --- a/drivers/acpi/acpica/exdebug.c +++ b/drivers/acpi/acpica/exdebug.c | |||
@@ -76,6 +76,8 @@ acpi_ex_do_debug_object(union acpi_operand_object *source_desc, | |||
76 | { | 76 | { |
77 | u32 i; | 77 | u32 i; |
78 | u32 timer; | 78 | u32 timer; |
79 | union acpi_operand_object *object_desc; | ||
80 | u32 value; | ||
79 | 81 | ||
80 | ACPI_FUNCTION_TRACE_PTR(ex_do_debug_object, source_desc); | 82 | ACPI_FUNCTION_TRACE_PTR(ex_do_debug_object, source_desc); |
81 | 83 | ||
@@ -254,8 +256,44 @@ acpi_ex_do_debug_object(union acpi_operand_object *source_desc, | |||
254 | object)->object, | 256 | object)->object, |
255 | level + 4, 0); | 257 | level + 4, 0); |
256 | } else { | 258 | } else { |
257 | acpi_ex_do_debug_object(source_desc->reference. | 259 | object_desc = source_desc->reference.object; |
258 | object, level + 4, 0); | 260 | value = source_desc->reference.value; |
261 | |||
262 | switch (object_desc->common.type) { | ||
263 | case ACPI_TYPE_BUFFER: | ||
264 | |||
265 | acpi_os_printf("Buffer[%u] = 0x%2.2X\n", | ||
266 | value, | ||
267 | *source_desc->reference. | ||
268 | index_pointer); | ||
269 | break; | ||
270 | |||
271 | case ACPI_TYPE_STRING: | ||
272 | |||
273 | acpi_os_printf | ||
274 | ("String[%u] = \"%c\" (0x%2.2X)\n", | ||
275 | value, | ||
276 | *source_desc->reference. | ||
277 | index_pointer, | ||
278 | *source_desc->reference. | ||
279 | index_pointer); | ||
280 | break; | ||
281 | |||
282 | case ACPI_TYPE_PACKAGE: | ||
283 | |||
284 | acpi_os_printf("Package[%u] = ", value); | ||
285 | acpi_ex_do_debug_object(*source_desc-> | ||
286 | reference.where, | ||
287 | level + 4, 0); | ||
288 | break; | ||
289 | |||
290 | default: | ||
291 | |||
292 | acpi_os_printf | ||
293 | ("Unknown Reference object type %X\n", | ||
294 | object_desc->common.type); | ||
295 | break; | ||
296 | } | ||
259 | } | 297 | } |
260 | } | 298 | } |
261 | break; | 299 | break; |