11da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/******************************************************************************
21da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Name: acdebug.h - ACPI/AML debugger
41da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *****************************************************************************/
61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
877848130e53b06c22fe37a7b6acbb82bb3e9bfbaBob Moore * Copyright (C) 2000 - 2012, Intel Corp.
91da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * All rights reserved.
101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Redistribution and use in source and binary forms, with or without
121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * modification, are permitted provided that the following conditions
131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * are met:
141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 1. Redistributions of source code must retain the above copyright
151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    notice, this list of conditions, and the following disclaimer,
161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    without modification.
171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 2. Redistributions in binary form must reproduce at minimum a disclaimer
181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    substantially similar to the "NO WARRANTY" disclaimer below
191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    ("Disclaimer") and any redistribution must be conditioned upon
201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    including a substantially similar Disclaimer requirement for further
211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    binary redistribution.
221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 3. Neither the names of the above-listed copyright holders nor the names
231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    of any contributors may be used to endorse or promote products derived
241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *    from this software without specific prior written permission.
251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Alternatively, this software may be distributed under the terms of the
271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * GNU General Public License ("GPL") version 2 as published by the Free
281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Software Foundation.
291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds *
301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * NO WARRANTY
311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * POSSIBILITY OF SUCH DAMAGES.
421da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
431da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifndef __ACDEBUG_H__
451da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define __ACDEBUG_H__
461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
471da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define ACPI_DEBUG_BUFFER_SIZE  4196
481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
494be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownstruct command_info {
504be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown	char *name;		/* Command Name */
514be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown	u8 min_args;		/* Minimum arguments required */
521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds};
531da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
544be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownstruct argument_info {
554be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown	char *name;		/* Argument Name */
561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds};
571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
581da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define PARAM_LIST(pl)                  pl
591da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define DBTEST_OUTPUT_LEVEL(lvl)        if (acpi_gbl_db_opt_verbose)
601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define VERBOSE_PRINT(fp)               DBTEST_OUTPUT_LEVEL(lvl) {\
611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds			  acpi_os_printf PARAM_LIST(fp);}
621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define EX_NO_SINGLE_STEP               1
641da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define EX_SINGLE_STEP                  2
651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
671da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbxface - external debugger interfaces
681da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
694be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_status acpi_db_initialize(void);
701da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
714be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_terminate(void);
721da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
731da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsacpi_status
744be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_single_step(struct acpi_walk_state *walk_state,
754be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown		    union acpi_parse_object *op, u32 op_type);
761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
781da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbcmds - debug commands and output routines
791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
804be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_status acpi_db_disassemble_method(char *name);
811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
824be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_table_info(char *table_arg);
831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
844be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_unload_acpi_table(char *table_arg, char *instance_arg);
851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsvoid
874be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_set_method_breakpoint(char *location,
884be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown			      struct acpi_walk_state *walk_state,
894be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown			      union acpi_parse_object *op);
901da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
914be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_set_method_call_breakpoint(union acpi_parse_object *op);
9273459f73e5d1602c59ebec114fc45185521353c1Robert Moore
934be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_get_bus_info(void);
941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
954be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_disassemble_aml(char *statements, union acpi_parse_object *op);
961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
974be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_dump_namespace(char *start_arg, char *depth_arg);
981da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
994be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_dump_namespace_by_owner(char *owner_arg, char *depth_arg);
1001da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1014be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_send_notify(char *name, u32 value);
1021da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1034be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_set_method_data(char *type_arg, char *index_arg, char *value_arg);
1041da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1051da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsacpi_status
1064be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_display_objects(char *obj_type_arg, char *display_count_arg);
1071da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
108b0ed7a915abac309fcb5a51bccd3782e3daa7417Lin Mingvoid acpi_db_display_interfaces(char *action_arg, char *interface_name_arg);
109b0ed7a915abac309fcb5a51bccd3782e3daa7417Lin Ming
1104be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_status acpi_db_find_name_in_namespace(char *name_arg);
1111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1124be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_set_scope(char *name);
1131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
11433620c5419e8a11814dd11e02a80e6ef77a43407Bob MooreACPI_HW_DEPENDENT_RETURN_OK(acpi_status acpi_db_sleep(char *object_arg))
1151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1164be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_find_references(char *object_arg);
1171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1184be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_locks(void);
1191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1204be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_resources(char *object_arg);
1211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
12233620c5419e8a11814dd11e02a80e6ef77a43407Bob MooreACPI_HW_DEPENDENT_RETURN_VOID(void acpi_db_display_gpes(void))
1231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1244be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_check_integrity(void);
1251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
12633620c5419e8a11814dd11e02a80e6ef77a43407Bob MooreACPI_HW_DEPENDENT_RETURN_VOID(void
12733620c5419e8a11814dd11e02a80e6ef77a43407Bob Moore			      acpi_db_generate_gpe(char *gpe_arg,
12833620c5419e8a11814dd11e02a80e6ef77a43407Bob Moore						   char *block_arg))
12944f6c01242da4e162f28d8e1216a8c7a91174605Robert Moore
1301044f1f65b7df2aae979e397904c4985eeb99ba2Bob Moorevoid acpi_db_check_predefined_names(void);
1311044f1f65b7df2aae979e397904c4985eeb99ba2Bob Moore
1321044f1f65b7df2aae979e397904c4985eeb99ba2Bob Moorevoid acpi_db_batch_execute(void);
1331044f1f65b7df2aae979e397904c4985eeb99ba2Bob Moore
1341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
1351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbdisply - debug display commands
1361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
1374be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_method_info(union acpi_parse_object *op);
1381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1394be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_decode_and_display_object(char *target, char *output_type);
1401da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1411da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsvoid
1424be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_display_result_object(union acpi_operand_object *obj_desc,
1434be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown			      struct acpi_walk_state *walk_state);
1441da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1454be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_status acpi_db_display_all_methods(char *display_count_arg);
1461da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1474be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_arguments(void);
1481da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1494be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_locals(void);
1501da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1514be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_results(void);
1521da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1534be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_calling_tree(void);
1541da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1554be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_object_type(char *object_arg);
1561da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1571da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsvoid
1584be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_display_argument_object(union acpi_operand_object *obj_desc,
1594be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown				struct acpi_walk_state *walk_state);
1601da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1611da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
1621da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbexec - debugger control method execution
1631da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
1644be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_execute(char *name, char **args, u32 flags);
1651da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1661da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsvoid
1674be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_create_execution_threads(char *num_threads_arg,
1684be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown				 char *num_loops_arg, char *method_name_arg);
1691da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
170afbb9e659d584bd5bf0604848c91afd5761ed7a1Valery A. Podrezov#ifdef ACPI_DBG_TRACK_ALLOCATIONS
171afbb9e659d584bd5bf0604848c91afd5761ed7a1Valery A. Podrezovu32 acpi_db_get_cache_info(struct acpi_memory_list *cache);
172afbb9e659d584bd5bf0604848c91afd5761ed7a1Valery A. Podrezov#endif
173afbb9e659d584bd5bf0604848c91afd5761ed7a1Valery A. Podrezov
1741da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
1751da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbfileio - Debugger file I/O commands
1761da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
1771da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsacpi_object_type
1784be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_match_argument(char *user_argument, struct argument_info *arguments);
1791da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1804be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_close_debug_file(void);
1811da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1824be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_open_debug_file(char *name);
1831da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1844be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_status acpi_db_load_acpi_table(char *filename);
1851da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1861da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsacpi_status
1874be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_get_table_from_file(char *filename, struct acpi_table_header **table);
1881da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1891da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsacpi_status
1904be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_read_table_from_file(char *filename, struct acpi_table_header **table);
19144f6c01242da4e162f28d8e1216a8c7a91174605Robert Moore
1921da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
1931da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbhistry - debugger HISTORY command
1941da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
1954be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_add_to_history(char *command_line);
1961da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1974be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_display_history(void);
1981da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
1994be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownchar *acpi_db_get_from_history(char *command_num_arg);
2001da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2011da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
2021da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbinput - user front-end to the AML debugger
2031da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
2041da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsacpi_status
2054be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_db_command_dispatch(char *input_buffer,
2064be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown			 struct acpi_walk_state *walk_state,
2074be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown			 union acpi_parse_object *op);
2081da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2094be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid ACPI_SYSTEM_XFACE acpi_db_execute_thread(void *context);
2101da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
2121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbstats - Generation and display of ACPI table statistics
2131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
2144be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_generate_statistics(union acpi_parse_object *root, u8 is_method);
2151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2164be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownacpi_status acpi_db_display_statistics(char *type_arg);
2171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/*
2191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * dbutils - AML debugger utilities
2201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */
2214be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_set_output_destination(u32 where);
2221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2234be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_dump_external_object(union acpi_object *obj_desc, u32 level);
2241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2254be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownvoid acpi_db_prep_namestring(char *name);
2261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2274be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brownstruct acpi_namespace_node *acpi_db_local_ns_lookup(char *name);
2281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds
2292e23f8513e9d0cc6d07d36e4555badc2518df433Bob Moorevoid acpi_db_uint32_to_hex_string(u32 value, char *buffer);
2302e23f8513e9d0cc6d07d36e4555badc2518df433Bob Moore
2314be44fcd3bf648b782f4460fd06dfae6c42ded4bLen Brown#endif				/* __ACDEBUG_H__ */
232