17c478bd9Sstevel@tonic-gate /****************************************************************************** 27c478bd9Sstevel@tonic-gate * 37c478bd9Sstevel@tonic-gate * Name: acdebug.h - ACPI/AML debugger 47c478bd9Sstevel@tonic-gate * 57c478bd9Sstevel@tonic-gate *****************************************************************************/ 67c478bd9Sstevel@tonic-gate 726f3cdf0SGordon Ross /* 8*385cc6b4SJerry Jelinek * Copyright (C) 2000 - 2016, Intel Corp. 97c478bd9Sstevel@tonic-gate * All rights reserved. 107c478bd9Sstevel@tonic-gate * 1126f3cdf0SGordon Ross * Redistribution and use in source and binary forms, with or without 1226f3cdf0SGordon Ross * modification, are permitted provided that the following conditions 1326f3cdf0SGordon Ross * are met: 1426f3cdf0SGordon Ross * 1. Redistributions of source code must retain the above copyright 1526f3cdf0SGordon Ross * notice, this list of conditions, and the following disclaimer, 1626f3cdf0SGordon Ross * without modification. 1726f3cdf0SGordon Ross * 2. Redistributions in binary form must reproduce at minimum a disclaimer 1826f3cdf0SGordon Ross * substantially similar to the "NO WARRANTY" disclaimer below 1926f3cdf0SGordon Ross * ("Disclaimer") and any redistribution must be conditioned upon 2026f3cdf0SGordon Ross * including a substantially similar Disclaimer requirement for further 2126f3cdf0SGordon Ross * binary redistribution. 2226f3cdf0SGordon Ross * 3. Neither the names of the above-listed copyright holders nor the names 2326f3cdf0SGordon Ross * of any contributors may be used to endorse or promote products derived 2426f3cdf0SGordon Ross * from this software without specific prior written permission. 257c478bd9Sstevel@tonic-gate * 2626f3cdf0SGordon Ross * Alternatively, this software may be distributed under the terms of the 2726f3cdf0SGordon Ross * GNU General Public License ("GPL") version 2 as published by the Free 2826f3cdf0SGordon Ross * Software Foundation. 297c478bd9Sstevel@tonic-gate * 3026f3cdf0SGordon Ross * NO WARRANTY 3126f3cdf0SGordon Ross * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 3226f3cdf0SGordon Ross * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 3326f3cdf0SGordon Ross * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 3426f3cdf0SGordon Ross * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 3526f3cdf0SGordon Ross * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 3626f3cdf0SGordon Ross * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 3726f3cdf0SGordon Ross * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 3826f3cdf0SGordon Ross * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 3926f3cdf0SGordon Ross * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 4026f3cdf0SGordon Ross * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 4126f3cdf0SGordon Ross * POSSIBILITY OF SUCH DAMAGES. 4226f3cdf0SGordon Ross */ 437c478bd9Sstevel@tonic-gate 447c478bd9Sstevel@tonic-gate #ifndef __ACDEBUG_H__ 457c478bd9Sstevel@tonic-gate #define __ACDEBUG_H__ 467c478bd9Sstevel@tonic-gate 47*385cc6b4SJerry Jelinek /* The debugger is used in conjunction with the disassembler most of time */ 48*385cc6b4SJerry Jelinek 49*385cc6b4SJerry Jelinek #ifdef ACPI_DISASSEMBLER 50*385cc6b4SJerry Jelinek #include "acdisasm.h" 51*385cc6b4SJerry Jelinek #endif 52*385cc6b4SJerry Jelinek 537c478bd9Sstevel@tonic-gate 5426f3cdf0SGordon Ross #define ACPI_DEBUG_BUFFER_SIZE 0x4000 /* 16K buffer for return objects */ 557c478bd9Sstevel@tonic-gate 56*385cc6b4SJerry Jelinek typedef struct acpi_db_command_info 577c478bd9Sstevel@tonic-gate { 58*385cc6b4SJerry Jelinek const char *Name; /* Command Name */ 597c478bd9Sstevel@tonic-gate UINT8 MinArgs; /* Minimum arguments required */ 607c478bd9Sstevel@tonic-gate 61*385cc6b4SJerry Jelinek } ACPI_DB_COMMAND_INFO; 627c478bd9Sstevel@tonic-gate 63*385cc6b4SJerry Jelinek typedef struct acpi_db_command_help 647c478bd9Sstevel@tonic-gate { 65*385cc6b4SJerry Jelinek UINT8 LineCount; /* Number of help lines */ 66*385cc6b4SJerry Jelinek char *Invocation; /* Command Invocation */ 67*385cc6b4SJerry Jelinek char *Description; /* Command Description */ 687c478bd9Sstevel@tonic-gate 69*385cc6b4SJerry Jelinek } ACPI_DB_COMMAND_HELP; 707c478bd9Sstevel@tonic-gate 71*385cc6b4SJerry Jelinek typedef struct acpi_db_argument_info 72*385cc6b4SJerry Jelinek { 73*385cc6b4SJerry Jelinek const char *Name; /* Argument Name */ 74*385cc6b4SJerry Jelinek 75*385cc6b4SJerry Jelinek } ACPI_DB_ARGUMENT_INFO; 76*385cc6b4SJerry Jelinek 77*385cc6b4SJerry Jelinek typedef struct acpi_db_execute_walk 7857190917SDana Myers { 7957190917SDana Myers UINT32 Count; 8057190917SDana Myers UINT32 MaxCount; 8157190917SDana Myers 82*385cc6b4SJerry Jelinek } ACPI_DB_EXECUTE_WALK; 8357190917SDana Myers 847c478bd9Sstevel@tonic-gate 857c478bd9Sstevel@tonic-gate #define PARAM_LIST(pl) pl 867c478bd9Sstevel@tonic-gate 877c478bd9Sstevel@tonic-gate #define EX_NO_SINGLE_STEP 1 887c478bd9Sstevel@tonic-gate #define EX_SINGLE_STEP 2 897c478bd9Sstevel@tonic-gate 907c478bd9Sstevel@tonic-gate 917c478bd9Sstevel@tonic-gate /* 927c478bd9Sstevel@tonic-gate * dbxface - external debugger interfaces 937c478bd9Sstevel@tonic-gate */ 94*385cc6b4SJerry Jelinek ACPI_DBR_DEPENDENT_RETURN_OK ( 957c478bd9Sstevel@tonic-gate ACPI_STATUS 967c478bd9Sstevel@tonic-gate AcpiDbSingleStep ( 977c478bd9Sstevel@tonic-gate ACPI_WALK_STATE *WalkState, 987c478bd9Sstevel@tonic-gate ACPI_PARSE_OBJECT *Op, 99*385cc6b4SJerry Jelinek UINT32 OpType)) 100*385cc6b4SJerry Jelinek 101*385cc6b4SJerry Jelinek ACPI_DBR_DEPENDENT_RETURN_VOID ( 102*385cc6b4SJerry Jelinek void 103*385cc6b4SJerry Jelinek AcpiDbSignalBreakPoint ( 104*385cc6b4SJerry Jelinek ACPI_WALK_STATE *WalkState)) 1057c478bd9Sstevel@tonic-gate 1067c478bd9Sstevel@tonic-gate 1077c478bd9Sstevel@tonic-gate /* 1087c478bd9Sstevel@tonic-gate * dbcmds - debug commands and output routines 1097c478bd9Sstevel@tonic-gate */ 11026f3cdf0SGordon Ross ACPI_NAMESPACE_NODE * 11126f3cdf0SGordon Ross AcpiDbConvertToNode ( 11226f3cdf0SGordon Ross char *InString); 1137c478bd9Sstevel@tonic-gate 1147c478bd9Sstevel@tonic-gate void 1157c478bd9Sstevel@tonic-gate AcpiDbDisplayTableInfo ( 1167c478bd9Sstevel@tonic-gate char *TableArg); 1177c478bd9Sstevel@tonic-gate 1187c478bd9Sstevel@tonic-gate void 119*385cc6b4SJerry Jelinek AcpiDbDisplayTemplate ( 120*385cc6b4SJerry Jelinek char *BufferArg); 121*385cc6b4SJerry Jelinek 122*385cc6b4SJerry Jelinek void 1237c478bd9Sstevel@tonic-gate AcpiDbUnloadAcpiTable ( 124*385cc6b4SJerry Jelinek char *Name); 1257c478bd9Sstevel@tonic-gate 1267c478bd9Sstevel@tonic-gate void 1277c478bd9Sstevel@tonic-gate AcpiDbSendNotify ( 1287c478bd9Sstevel@tonic-gate char *Name, 1297c478bd9Sstevel@tonic-gate UINT32 Value); 1307c478bd9Sstevel@tonic-gate 1317c478bd9Sstevel@tonic-gate void 13226f3cdf0SGordon Ross AcpiDbDisplayInterfaces ( 13326f3cdf0SGordon Ross char *ActionArg, 13426f3cdf0SGordon Ross char *InterfaceNameArg); 1357c478bd9Sstevel@tonic-gate 1367c478bd9Sstevel@tonic-gate ACPI_STATUS 1377c478bd9Sstevel@tonic-gate AcpiDbSleep ( 1387c478bd9Sstevel@tonic-gate char *ObjectArg); 1397c478bd9Sstevel@tonic-gate 1407c478bd9Sstevel@tonic-gate void 141*385cc6b4SJerry Jelinek AcpiDbTrace ( 142*385cc6b4SJerry Jelinek char *EnableArg, 143*385cc6b4SJerry Jelinek char *MethodArg, 144*385cc6b4SJerry Jelinek char *OnceArg); 145*385cc6b4SJerry Jelinek 146*385cc6b4SJerry Jelinek void 1477c478bd9Sstevel@tonic-gate AcpiDbDisplayLocks ( 1487c478bd9Sstevel@tonic-gate void); 1497c478bd9Sstevel@tonic-gate 1507c478bd9Sstevel@tonic-gate void 1517c478bd9Sstevel@tonic-gate AcpiDbDisplayResources ( 1527c478bd9Sstevel@tonic-gate char *ObjectArg); 1537c478bd9Sstevel@tonic-gate 154*385cc6b4SJerry Jelinek ACPI_HW_DEPENDENT_RETURN_VOID ( 1557c478bd9Sstevel@tonic-gate void 1567c478bd9Sstevel@tonic-gate AcpiDbDisplayGpes ( 157*385cc6b4SJerry Jelinek void)) 1587c478bd9Sstevel@tonic-gate 1597c478bd9Sstevel@tonic-gate void 16026f3cdf0SGordon Ross AcpiDbDisplayHandlers ( 1617c478bd9Sstevel@tonic-gate void); 1627c478bd9Sstevel@tonic-gate 163*385cc6b4SJerry Jelinek ACPI_HW_DEPENDENT_RETURN_VOID ( 1647c478bd9Sstevel@tonic-gate void 1657c478bd9Sstevel@tonic-gate AcpiDbGenerateGpe ( 1667c478bd9Sstevel@tonic-gate char *GpeArg, 167*385cc6b4SJerry Jelinek char *BlockArg)) 168*385cc6b4SJerry Jelinek 169*385cc6b4SJerry Jelinek ACPI_HW_DEPENDENT_RETURN_VOID ( 170*385cc6b4SJerry Jelinek void 171*385cc6b4SJerry Jelinek AcpiDbGenerateSci ( 172*385cc6b4SJerry Jelinek void)) 173*385cc6b4SJerry Jelinek 174*385cc6b4SJerry Jelinek void 175*385cc6b4SJerry Jelinek AcpiDbExecuteTest ( 176*385cc6b4SJerry Jelinek char *TypeArg); 177*385cc6b4SJerry Jelinek 178*385cc6b4SJerry Jelinek 179*385cc6b4SJerry Jelinek /* 180*385cc6b4SJerry Jelinek * dbconvert - miscellaneous conversion routines 181*385cc6b4SJerry Jelinek */ 182*385cc6b4SJerry Jelinek ACPI_STATUS 183*385cc6b4SJerry Jelinek AcpiDbHexCharToValue ( 184*385cc6b4SJerry Jelinek int HexChar, 185*385cc6b4SJerry Jelinek UINT8 *ReturnValue); 186*385cc6b4SJerry Jelinek 187*385cc6b4SJerry Jelinek ACPI_STATUS 188*385cc6b4SJerry Jelinek AcpiDbConvertToPackage ( 189*385cc6b4SJerry Jelinek char *String, 190*385cc6b4SJerry Jelinek ACPI_OBJECT *Object); 191*385cc6b4SJerry Jelinek 192*385cc6b4SJerry Jelinek ACPI_STATUS 193*385cc6b4SJerry Jelinek AcpiDbConvertToObject ( 194*385cc6b4SJerry Jelinek ACPI_OBJECT_TYPE Type, 195*385cc6b4SJerry Jelinek char *String, 196*385cc6b4SJerry Jelinek ACPI_OBJECT *Object); 197*385cc6b4SJerry Jelinek 198*385cc6b4SJerry Jelinek UINT8 * 199*385cc6b4SJerry Jelinek AcpiDbEncodePldBuffer ( 200*385cc6b4SJerry Jelinek ACPI_PLD_INFO *PldInfo); 201*385cc6b4SJerry Jelinek 202*385cc6b4SJerry Jelinek void 203*385cc6b4SJerry Jelinek AcpiDbDumpPldBuffer ( 204*385cc6b4SJerry Jelinek ACPI_OBJECT *ObjDesc); 2057c478bd9Sstevel@tonic-gate 20626f3cdf0SGordon Ross 20726f3cdf0SGordon Ross /* 20826f3cdf0SGordon Ross * dbmethod - control method commands 20926f3cdf0SGordon Ross */ 210db2bae30SDana Myers void 21126f3cdf0SGordon Ross AcpiDbSetMethodBreakpoint ( 21226f3cdf0SGordon Ross char *Location, 21326f3cdf0SGordon Ross ACPI_WALK_STATE *WalkState, 21426f3cdf0SGordon Ross ACPI_PARSE_OBJECT *Op); 21526f3cdf0SGordon Ross 21626f3cdf0SGordon Ross void 21726f3cdf0SGordon Ross AcpiDbSetMethodCallBreakpoint ( 21826f3cdf0SGordon Ross ACPI_PARSE_OBJECT *Op); 21926f3cdf0SGordon Ross 22026f3cdf0SGordon Ross void 22126f3cdf0SGordon Ross AcpiDbSetMethodData ( 22226f3cdf0SGordon Ross char *TypeArg, 22326f3cdf0SGordon Ross char *IndexArg, 22426f3cdf0SGordon Ross char *ValueArg); 22526f3cdf0SGordon Ross 22626f3cdf0SGordon Ross ACPI_STATUS 22726f3cdf0SGordon Ross AcpiDbDisassembleMethod ( 22826f3cdf0SGordon Ross char *Name); 22926f3cdf0SGordon Ross 23026f3cdf0SGordon Ross void 23126f3cdf0SGordon Ross AcpiDbDisassembleAml ( 23226f3cdf0SGordon Ross char *Statements, 23326f3cdf0SGordon Ross ACPI_PARSE_OBJECT *Op); 234db2bae30SDana Myers 235db2bae30SDana Myers void 236db2bae30SDana Myers AcpiDbBatchExecute ( 23757190917SDana Myers char *CountArg); 2387c478bd9Sstevel@tonic-gate 23926f3cdf0SGordon Ross 24026f3cdf0SGordon Ross /* 24126f3cdf0SGordon Ross * dbnames - namespace commands 24226f3cdf0SGordon Ross */ 24326f3cdf0SGordon Ross void 24426f3cdf0SGordon Ross AcpiDbSetScope ( 24526f3cdf0SGordon Ross char *Name); 24626f3cdf0SGordon Ross 24726f3cdf0SGordon Ross void 24826f3cdf0SGordon Ross AcpiDbDumpNamespace ( 24926f3cdf0SGordon Ross char *StartArg, 25026f3cdf0SGordon Ross char *DepthArg); 25126f3cdf0SGordon Ross 25226f3cdf0SGordon Ross void 253*385cc6b4SJerry Jelinek AcpiDbDumpNamespacePaths ( 254*385cc6b4SJerry Jelinek void); 255*385cc6b4SJerry Jelinek 256*385cc6b4SJerry Jelinek void 25726f3cdf0SGordon Ross AcpiDbDumpNamespaceByOwner ( 25826f3cdf0SGordon Ross char *OwnerArg, 25926f3cdf0SGordon Ross char *DepthArg); 26026f3cdf0SGordon Ross 26126f3cdf0SGordon Ross ACPI_STATUS 26226f3cdf0SGordon Ross AcpiDbFindNameInNamespace ( 26326f3cdf0SGordon Ross char *NameArg); 26426f3cdf0SGordon Ross 26526f3cdf0SGordon Ross void 26626f3cdf0SGordon Ross AcpiDbCheckPredefinedNames ( 26726f3cdf0SGordon Ross void); 26826f3cdf0SGordon Ross 26926f3cdf0SGordon Ross ACPI_STATUS 27026f3cdf0SGordon Ross AcpiDbDisplayObjects ( 27126f3cdf0SGordon Ross char *ObjTypeArg, 27226f3cdf0SGordon Ross char *DisplayCountArg); 27326f3cdf0SGordon Ross 27426f3cdf0SGordon Ross void 27526f3cdf0SGordon Ross AcpiDbCheckIntegrity ( 27626f3cdf0SGordon Ross void); 27726f3cdf0SGordon Ross 27826f3cdf0SGordon Ross void 27926f3cdf0SGordon Ross AcpiDbFindReferences ( 28026f3cdf0SGordon Ross char *ObjectArg); 28126f3cdf0SGordon Ross 28226f3cdf0SGordon Ross void 28326f3cdf0SGordon Ross AcpiDbGetBusInfo ( 28426f3cdf0SGordon Ross void); 28526f3cdf0SGordon Ross 28626f3cdf0SGordon Ross 2877c478bd9Sstevel@tonic-gate /* 2887c478bd9Sstevel@tonic-gate * dbdisply - debug display commands 2897c478bd9Sstevel@tonic-gate */ 2907c478bd9Sstevel@tonic-gate void 2917c478bd9Sstevel@tonic-gate AcpiDbDisplayMethodInfo ( 2927c478bd9Sstevel@tonic-gate ACPI_PARSE_OBJECT *Op); 2937c478bd9Sstevel@tonic-gate 2947c478bd9Sstevel@tonic-gate void 2957c478bd9Sstevel@tonic-gate AcpiDbDecodeAndDisplayObject ( 2967c478bd9Sstevel@tonic-gate char *Target, 2977c478bd9Sstevel@tonic-gate char *OutputType); 2987c478bd9Sstevel@tonic-gate 299*385cc6b4SJerry Jelinek ACPI_DBR_DEPENDENT_RETURN_VOID ( 3007c478bd9Sstevel@tonic-gate void 3017c478bd9Sstevel@tonic-gate AcpiDbDisplayResultObject ( 3027c478bd9Sstevel@tonic-gate ACPI_OPERAND_OBJECT *ObjDesc, 303*385cc6b4SJerry Jelinek ACPI_WALK_STATE *WalkState)) 3047c478bd9Sstevel@tonic-gate 3057c478bd9Sstevel@tonic-gate ACPI_STATUS 3067c478bd9Sstevel@tonic-gate AcpiDbDisplayAllMethods ( 3077c478bd9Sstevel@tonic-gate char *DisplayCountArg); 3087c478bd9Sstevel@tonic-gate 3097c478bd9Sstevel@tonic-gate void 3107c478bd9Sstevel@tonic-gate AcpiDbDisplayArguments ( 3117c478bd9Sstevel@tonic-gate void); 3127c478bd9Sstevel@tonic-gate 3137c478bd9Sstevel@tonic-gate void 3147c478bd9Sstevel@tonic-gate AcpiDbDisplayLocals ( 3157c478bd9Sstevel@tonic-gate void); 3167c478bd9Sstevel@tonic-gate 3177c478bd9Sstevel@tonic-gate void 3187c478bd9Sstevel@tonic-gate AcpiDbDisplayResults ( 3197c478bd9Sstevel@tonic-gate void); 3207c478bd9Sstevel@tonic-gate 3217c478bd9Sstevel@tonic-gate void 3227c478bd9Sstevel@tonic-gate AcpiDbDisplayCallingTree ( 3237c478bd9Sstevel@tonic-gate void); 3247c478bd9Sstevel@tonic-gate 3257c478bd9Sstevel@tonic-gate void 3267c478bd9Sstevel@tonic-gate AcpiDbDisplayObjectType ( 3277c478bd9Sstevel@tonic-gate char *ObjectArg); 3287c478bd9Sstevel@tonic-gate 329*385cc6b4SJerry Jelinek ACPI_DBR_DEPENDENT_RETURN_VOID ( 3307c478bd9Sstevel@tonic-gate void 3317c478bd9Sstevel@tonic-gate AcpiDbDisplayArgumentObject ( 3327c478bd9Sstevel@tonic-gate ACPI_OPERAND_OBJECT *ObjDesc, 333*385cc6b4SJerry Jelinek ACPI_WALK_STATE *WalkState)) 3347c478bd9Sstevel@tonic-gate 3357c478bd9Sstevel@tonic-gate 3367c478bd9Sstevel@tonic-gate /* 3377c478bd9Sstevel@tonic-gate * dbexec - debugger control method execution 3387c478bd9Sstevel@tonic-gate */ 3397c478bd9Sstevel@tonic-gate void 3407c478bd9Sstevel@tonic-gate AcpiDbExecute ( 3417c478bd9Sstevel@tonic-gate char *Name, 3427c478bd9Sstevel@tonic-gate char **Args, 34326f3cdf0SGordon Ross ACPI_OBJECT_TYPE *Types, 3447c478bd9Sstevel@tonic-gate UINT32 Flags); 3457c478bd9Sstevel@tonic-gate 3467c478bd9Sstevel@tonic-gate void 3477c478bd9Sstevel@tonic-gate AcpiDbCreateExecutionThreads ( 3487c478bd9Sstevel@tonic-gate char *NumThreadsArg, 3497c478bd9Sstevel@tonic-gate char *NumLoopsArg, 3507c478bd9Sstevel@tonic-gate char *MethodNameArg); 3517c478bd9Sstevel@tonic-gate 352*385cc6b4SJerry Jelinek void 353*385cc6b4SJerry Jelinek AcpiDbDeleteObjects ( 354*385cc6b4SJerry Jelinek UINT32 Count, 355*385cc6b4SJerry Jelinek ACPI_OBJECT *Objects); 356*385cc6b4SJerry Jelinek 357db2bae30SDana Myers #ifdef ACPI_DBG_TRACK_ALLOCATIONS 358db2bae30SDana Myers UINT32 359db2bae30SDana Myers AcpiDbGetCacheInfo ( 360db2bae30SDana Myers ACPI_MEMORY_LIST *Cache); 361db2bae30SDana Myers #endif 362db2bae30SDana Myers 3637c478bd9Sstevel@tonic-gate 3647c478bd9Sstevel@tonic-gate /* 3657c478bd9Sstevel@tonic-gate * dbfileio - Debugger file I/O commands 3667c478bd9Sstevel@tonic-gate */ 3677c478bd9Sstevel@tonic-gate ACPI_OBJECT_TYPE 3687c478bd9Sstevel@tonic-gate AcpiDbMatchArgument ( 3697c478bd9Sstevel@tonic-gate char *UserArgument, 370*385cc6b4SJerry Jelinek ACPI_DB_ARGUMENT_INFO *Arguments); 3717c478bd9Sstevel@tonic-gate 3727c478bd9Sstevel@tonic-gate void 3737c478bd9Sstevel@tonic-gate AcpiDbCloseDebugFile ( 3747c478bd9Sstevel@tonic-gate void); 3757c478bd9Sstevel@tonic-gate 3767c478bd9Sstevel@tonic-gate void 3777c478bd9Sstevel@tonic-gate AcpiDbOpenDebugFile ( 3787c478bd9Sstevel@tonic-gate char *Name); 3797c478bd9Sstevel@tonic-gate 3807c478bd9Sstevel@tonic-gate ACPI_STATUS 3817c478bd9Sstevel@tonic-gate AcpiDbLoadAcpiTable ( 3827c478bd9Sstevel@tonic-gate char *Filename); 3837c478bd9Sstevel@tonic-gate 3847c478bd9Sstevel@tonic-gate ACPI_STATUS 385*385cc6b4SJerry Jelinek AcpiDbLoadTables ( 386*385cc6b4SJerry Jelinek ACPI_NEW_TABLE_DESC *ListHead); 3877c478bd9Sstevel@tonic-gate 3887c478bd9Sstevel@tonic-gate 3897c478bd9Sstevel@tonic-gate /* 3907c478bd9Sstevel@tonic-gate * dbhistry - debugger HISTORY command 3917c478bd9Sstevel@tonic-gate */ 3927c478bd9Sstevel@tonic-gate void 3937c478bd9Sstevel@tonic-gate AcpiDbAddToHistory ( 3947c478bd9Sstevel@tonic-gate char *CommandLine); 3957c478bd9Sstevel@tonic-gate 3967c478bd9Sstevel@tonic-gate void 3977c478bd9Sstevel@tonic-gate AcpiDbDisplayHistory ( 3987c478bd9Sstevel@tonic-gate void); 3997c478bd9Sstevel@tonic-gate 4007c478bd9Sstevel@tonic-gate char * 4017c478bd9Sstevel@tonic-gate AcpiDbGetFromHistory ( 4027c478bd9Sstevel@tonic-gate char *CommandNumArg); 4037c478bd9Sstevel@tonic-gate 404*385cc6b4SJerry Jelinek char * 405*385cc6b4SJerry Jelinek AcpiDbGetHistoryByIndex ( 406*385cc6b4SJerry Jelinek UINT32 CommanddNum); 407*385cc6b4SJerry Jelinek 4087c478bd9Sstevel@tonic-gate 4097c478bd9Sstevel@tonic-gate /* 4107c478bd9Sstevel@tonic-gate * dbinput - user front-end to the AML debugger 4117c478bd9Sstevel@tonic-gate */ 4127c478bd9Sstevel@tonic-gate ACPI_STATUS 4137c478bd9Sstevel@tonic-gate AcpiDbCommandDispatch ( 4147c478bd9Sstevel@tonic-gate char *InputBuffer, 4157c478bd9Sstevel@tonic-gate ACPI_WALK_STATE *WalkState, 4167c478bd9Sstevel@tonic-gate ACPI_PARSE_OBJECT *Op); 4177c478bd9Sstevel@tonic-gate 4187c478bd9Sstevel@tonic-gate void ACPI_SYSTEM_XFACE 4197c478bd9Sstevel@tonic-gate AcpiDbExecuteThread ( 4207c478bd9Sstevel@tonic-gate void *Context); 4217c478bd9Sstevel@tonic-gate 4227c478bd9Sstevel@tonic-gate ACPI_STATUS 4237c478bd9Sstevel@tonic-gate AcpiDbUserCommands ( 4247c478bd9Sstevel@tonic-gate char Prompt, 4257c478bd9Sstevel@tonic-gate ACPI_PARSE_OBJECT *Op); 4267c478bd9Sstevel@tonic-gate 42726f3cdf0SGordon Ross char * 42826f3cdf0SGordon Ross AcpiDbGetNextToken ( 42926f3cdf0SGordon Ross char *String, 43026f3cdf0SGordon Ross char **Next, 43126f3cdf0SGordon Ross ACPI_OBJECT_TYPE *ReturnType); 43226f3cdf0SGordon Ross 4337c478bd9Sstevel@tonic-gate 4347c478bd9Sstevel@tonic-gate /* 435*385cc6b4SJerry Jelinek * dbobject 436*385cc6b4SJerry Jelinek */ 437*385cc6b4SJerry Jelinek void 438*385cc6b4SJerry Jelinek AcpiDbDecodeInternalObject ( 439*385cc6b4SJerry Jelinek ACPI_OPERAND_OBJECT *ObjDesc); 440*385cc6b4SJerry Jelinek 441*385cc6b4SJerry Jelinek void 442*385cc6b4SJerry Jelinek AcpiDbDisplayInternalObject ( 443*385cc6b4SJerry Jelinek ACPI_OPERAND_OBJECT *ObjDesc, 444*385cc6b4SJerry Jelinek ACPI_WALK_STATE *WalkState); 445*385cc6b4SJerry Jelinek 446*385cc6b4SJerry Jelinek void 447*385cc6b4SJerry Jelinek AcpiDbDecodeArguments ( 448*385cc6b4SJerry Jelinek ACPI_WALK_STATE *WalkState); 449*385cc6b4SJerry Jelinek 450*385cc6b4SJerry Jelinek void 451*385cc6b4SJerry Jelinek AcpiDbDecodeLocals ( 452*385cc6b4SJerry Jelinek ACPI_WALK_STATE *WalkState); 453*385cc6b4SJerry Jelinek 454*385cc6b4SJerry Jelinek void 455*385cc6b4SJerry Jelinek AcpiDbDumpMethodInfo ( 456*385cc6b4SJerry Jelinek ACPI_STATUS Status, 457*385cc6b4SJerry Jelinek ACPI_WALK_STATE *WalkState); 458*385cc6b4SJerry Jelinek 459*385cc6b4SJerry Jelinek 460*385cc6b4SJerry Jelinek /* 4617c478bd9Sstevel@tonic-gate * dbstats - Generation and display of ACPI table statistics 4627c478bd9Sstevel@tonic-gate */ 4637c478bd9Sstevel@tonic-gate void 4647c478bd9Sstevel@tonic-gate AcpiDbGenerateStatistics ( 4657c478bd9Sstevel@tonic-gate ACPI_PARSE_OBJECT *Root, 4667c478bd9Sstevel@tonic-gate BOOLEAN IsMethod); 4677c478bd9Sstevel@tonic-gate 4687c478bd9Sstevel@tonic-gate ACPI_STATUS 4697c478bd9Sstevel@tonic-gate AcpiDbDisplayStatistics ( 4707c478bd9Sstevel@tonic-gate char *TypeArg); 4717c478bd9Sstevel@tonic-gate 4727c478bd9Sstevel@tonic-gate 4737c478bd9Sstevel@tonic-gate /* 4747c478bd9Sstevel@tonic-gate * dbutils - AML debugger utilities 4757c478bd9Sstevel@tonic-gate */ 4767c478bd9Sstevel@tonic-gate void 4777c478bd9Sstevel@tonic-gate AcpiDbSetOutputDestination ( 4787c478bd9Sstevel@tonic-gate UINT32 Where); 4797c478bd9Sstevel@tonic-gate 4807c478bd9Sstevel@tonic-gate void 481450d6964Smyers AcpiDbDumpExternalObject ( 4827c478bd9Sstevel@tonic-gate ACPI_OBJECT *ObjDesc, 4837c478bd9Sstevel@tonic-gate UINT32 Level); 4847c478bd9Sstevel@tonic-gate 4857c478bd9Sstevel@tonic-gate void 4867c478bd9Sstevel@tonic-gate AcpiDbPrepNamestring ( 4877c478bd9Sstevel@tonic-gate char *Name); 4887c478bd9Sstevel@tonic-gate 4897c478bd9Sstevel@tonic-gate ACPI_NAMESPACE_NODE * 4907c478bd9Sstevel@tonic-gate AcpiDbLocalNsLookup ( 4917c478bd9Sstevel@tonic-gate char *Name); 4927c478bd9Sstevel@tonic-gate 493db2bae30SDana Myers void 494*385cc6b4SJerry Jelinek AcpiDbUint32ToHexString ( 495db2bae30SDana Myers UINT32 Value, 496db2bae30SDana Myers char *Buffer); 497db2bae30SDana Myers 4987c478bd9Sstevel@tonic-gate #endif /* __ACDEBUG_H__ */ 499