1433d6423SLionel Sambuc /****************************************************************************** 2433d6423SLionel Sambuc * 3433d6423SLionel Sambuc * Name: acdebug.h - ACPI/AML debugger 4433d6423SLionel Sambuc * 5433d6423SLionel Sambuc *****************************************************************************/ 6433d6423SLionel Sambuc 7*29492bb7SDavid van Moolenbroek /* 8*29492bb7SDavid van Moolenbroek * Copyright (C) 2000 - 2014, Intel Corp. 9433d6423SLionel Sambuc * All rights reserved. 10433d6423SLionel Sambuc * 11*29492bb7SDavid van Moolenbroek * Redistribution and use in source and binary forms, with or without 12*29492bb7SDavid van Moolenbroek * modification, are permitted provided that the following conditions 13*29492bb7SDavid van Moolenbroek * are met: 14*29492bb7SDavid van Moolenbroek * 1. Redistributions of source code must retain the above copyright 15*29492bb7SDavid van Moolenbroek * notice, this list of conditions, and the following disclaimer, 16*29492bb7SDavid van Moolenbroek * without modification. 17*29492bb7SDavid van Moolenbroek * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18*29492bb7SDavid van Moolenbroek * substantially similar to the "NO WARRANTY" disclaimer below 19*29492bb7SDavid van Moolenbroek * ("Disclaimer") and any redistribution must be conditioned upon 20*29492bb7SDavid van Moolenbroek * including a substantially similar Disclaimer requirement for further 21*29492bb7SDavid van Moolenbroek * binary redistribution. 22*29492bb7SDavid van Moolenbroek * 3. Neither the names of the above-listed copyright holders nor the names 23*29492bb7SDavid van Moolenbroek * of any contributors may be used to endorse or promote products derived 24*29492bb7SDavid van Moolenbroek * from this software without specific prior written permission. 25433d6423SLionel Sambuc * 26*29492bb7SDavid van Moolenbroek * Alternatively, this software may be distributed under the terms of the 27*29492bb7SDavid van Moolenbroek * GNU General Public License ("GPL") version 2 as published by the Free 28*29492bb7SDavid van Moolenbroek * Software Foundation. 29433d6423SLionel Sambuc * 30*29492bb7SDavid van Moolenbroek * NO WARRANTY 31*29492bb7SDavid van Moolenbroek * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32*29492bb7SDavid van Moolenbroek * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33*29492bb7SDavid van Moolenbroek * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 34*29492bb7SDavid van Moolenbroek * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35*29492bb7SDavid van Moolenbroek * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36*29492bb7SDavid van Moolenbroek * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37*29492bb7SDavid van Moolenbroek * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38*29492bb7SDavid van Moolenbroek * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39*29492bb7SDavid van Moolenbroek * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40*29492bb7SDavid van Moolenbroek * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41*29492bb7SDavid van Moolenbroek * POSSIBILITY OF SUCH DAMAGES. 42*29492bb7SDavid van Moolenbroek */ 43433d6423SLionel Sambuc 44433d6423SLionel Sambuc #ifndef __ACDEBUG_H__ 45433d6423SLionel Sambuc #define __ACDEBUG_H__ 46433d6423SLionel Sambuc 47433d6423SLionel Sambuc 48*29492bb7SDavid van Moolenbroek #define ACPI_DEBUG_BUFFER_SIZE 0x4000 /* 16K buffer for return objects */ 49433d6423SLionel Sambuc 50*29492bb7SDavid van Moolenbroek typedef struct acpi_db_command_info 51433d6423SLionel Sambuc { 52433d6423SLionel Sambuc char *Name; /* Command Name */ 53433d6423SLionel Sambuc UINT8 MinArgs; /* Minimum arguments required */ 54433d6423SLionel Sambuc 55*29492bb7SDavid van Moolenbroek } ACPI_DB_COMMAND_INFO; 56433d6423SLionel Sambuc 57*29492bb7SDavid van Moolenbroek typedef struct acpi_db_command_help 58*29492bb7SDavid van Moolenbroek { 59*29492bb7SDavid van Moolenbroek UINT8 LineCount; /* Number of help lines */ 60*29492bb7SDavid van Moolenbroek char *Invocation; /* Command Invocation */ 61*29492bb7SDavid van Moolenbroek char *Description; /* Command Description */ 62*29492bb7SDavid van Moolenbroek 63*29492bb7SDavid van Moolenbroek } ACPI_DB_COMMAND_HELP; 64*29492bb7SDavid van Moolenbroek 65*29492bb7SDavid van Moolenbroek typedef struct acpi_db_argument_info 66433d6423SLionel Sambuc { 67433d6423SLionel Sambuc char *Name; /* Argument Name */ 68433d6423SLionel Sambuc 69*29492bb7SDavid van Moolenbroek } ACPI_DB_ARGUMENT_INFO; 70433d6423SLionel Sambuc 71*29492bb7SDavid van Moolenbroek typedef struct acpi_db_execute_walk 72433d6423SLionel Sambuc { 73433d6423SLionel Sambuc UINT32 Count; 74433d6423SLionel Sambuc UINT32 MaxCount; 75433d6423SLionel Sambuc 76*29492bb7SDavid van Moolenbroek } ACPI_DB_EXECUTE_WALK; 77433d6423SLionel Sambuc 78433d6423SLionel Sambuc 79433d6423SLionel Sambuc #define PARAM_LIST(pl) pl 80433d6423SLionel Sambuc #define DBTEST_OUTPUT_LEVEL(lvl) if (AcpiGbl_DbOpt_verbose) 81433d6423SLionel Sambuc #define VERBOSE_PRINT(fp) DBTEST_OUTPUT_LEVEL(lvl) {\ 82433d6423SLionel Sambuc AcpiOsPrintf PARAM_LIST(fp);} 83433d6423SLionel Sambuc 84433d6423SLionel Sambuc #define EX_NO_SINGLE_STEP 1 85433d6423SLionel Sambuc #define EX_SINGLE_STEP 2 86433d6423SLionel Sambuc 87433d6423SLionel Sambuc 88433d6423SLionel Sambuc /* 89433d6423SLionel Sambuc * dbxface - external debugger interfaces 90433d6423SLionel Sambuc */ 91433d6423SLionel Sambuc ACPI_STATUS 92433d6423SLionel Sambuc AcpiDbInitialize ( 93433d6423SLionel Sambuc void); 94433d6423SLionel Sambuc 95433d6423SLionel Sambuc void 96433d6423SLionel Sambuc AcpiDbTerminate ( 97433d6423SLionel Sambuc void); 98433d6423SLionel Sambuc 99433d6423SLionel Sambuc ACPI_STATUS 100433d6423SLionel Sambuc AcpiDbSingleStep ( 101433d6423SLionel Sambuc ACPI_WALK_STATE *WalkState, 102433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Op, 103433d6423SLionel Sambuc UINT32 OpType); 104433d6423SLionel Sambuc 105433d6423SLionel Sambuc 106433d6423SLionel Sambuc /* 107433d6423SLionel Sambuc * dbcmds - debug commands and output routines 108433d6423SLionel Sambuc */ 109*29492bb7SDavid van Moolenbroek ACPI_NAMESPACE_NODE * 110*29492bb7SDavid van Moolenbroek AcpiDbConvertToNode ( 111*29492bb7SDavid van Moolenbroek char *InString); 112433d6423SLionel Sambuc 113433d6423SLionel Sambuc void 114433d6423SLionel Sambuc AcpiDbDisplayTableInfo ( 115433d6423SLionel Sambuc char *TableArg); 116433d6423SLionel Sambuc 117433d6423SLionel Sambuc void 118*29492bb7SDavid van Moolenbroek AcpiDbDisplayTemplate ( 119*29492bb7SDavid van Moolenbroek char *BufferArg); 120433d6423SLionel Sambuc 121433d6423SLionel Sambuc void 122*29492bb7SDavid van Moolenbroek AcpiDbUnloadAcpiTable ( 123*29492bb7SDavid van Moolenbroek char *Name); 124*29492bb7SDavid van Moolenbroek 125*29492bb7SDavid van Moolenbroek void 126*29492bb7SDavid van Moolenbroek AcpiDbSendNotify ( 127*29492bb7SDavid van Moolenbroek char *Name, 128*29492bb7SDavid van Moolenbroek UINT32 Value); 129*29492bb7SDavid van Moolenbroek 130*29492bb7SDavid van Moolenbroek void 131*29492bb7SDavid van Moolenbroek AcpiDbDisplayInterfaces ( 132*29492bb7SDavid van Moolenbroek char *ActionArg, 133*29492bb7SDavid van Moolenbroek char *InterfaceNameArg); 134*29492bb7SDavid van Moolenbroek 135*29492bb7SDavid van Moolenbroek ACPI_STATUS 136*29492bb7SDavid van Moolenbroek AcpiDbSleep ( 137*29492bb7SDavid van Moolenbroek char *ObjectArg); 138*29492bb7SDavid van Moolenbroek 139*29492bb7SDavid van Moolenbroek void 140*29492bb7SDavid van Moolenbroek AcpiDbDisplayLocks ( 141*29492bb7SDavid van Moolenbroek void); 142*29492bb7SDavid van Moolenbroek 143*29492bb7SDavid van Moolenbroek void 144*29492bb7SDavid van Moolenbroek AcpiDbDisplayResources ( 145*29492bb7SDavid van Moolenbroek char *ObjectArg); 146*29492bb7SDavid van Moolenbroek 147*29492bb7SDavid van Moolenbroek ACPI_HW_DEPENDENT_RETURN_VOID ( 148*29492bb7SDavid van Moolenbroek void 149*29492bb7SDavid van Moolenbroek AcpiDbDisplayGpes ( 150*29492bb7SDavid van Moolenbroek void)) 151*29492bb7SDavid van Moolenbroek 152*29492bb7SDavid van Moolenbroek void 153*29492bb7SDavid van Moolenbroek AcpiDbDisplayHandlers ( 154*29492bb7SDavid van Moolenbroek void); 155*29492bb7SDavid van Moolenbroek 156*29492bb7SDavid van Moolenbroek ACPI_HW_DEPENDENT_RETURN_VOID ( 157*29492bb7SDavid van Moolenbroek void 158*29492bb7SDavid van Moolenbroek AcpiDbGenerateGpe ( 159*29492bb7SDavid van Moolenbroek char *GpeArg, 160*29492bb7SDavid van Moolenbroek char *BlockArg)) 161*29492bb7SDavid van Moolenbroek 162*29492bb7SDavid van Moolenbroek ACPI_HW_DEPENDENT_RETURN_VOID ( 163*29492bb7SDavid van Moolenbroek void 164*29492bb7SDavid van Moolenbroek AcpiDbGenerateSci ( 165*29492bb7SDavid van Moolenbroek void)) 166*29492bb7SDavid van Moolenbroek 167*29492bb7SDavid van Moolenbroek void 168*29492bb7SDavid van Moolenbroek AcpiDbExecuteTest ( 169*29492bb7SDavid van Moolenbroek char *TypeArg); 170*29492bb7SDavid van Moolenbroek 171*29492bb7SDavid van Moolenbroek 172*29492bb7SDavid van Moolenbroek /* 173*29492bb7SDavid van Moolenbroek * dbconvert - miscellaneous conversion routines 174*29492bb7SDavid van Moolenbroek */ 175*29492bb7SDavid van Moolenbroek ACPI_STATUS 176*29492bb7SDavid van Moolenbroek AcpiDbHexCharToValue ( 177*29492bb7SDavid van Moolenbroek int HexChar, 178*29492bb7SDavid van Moolenbroek UINT8 *ReturnValue); 179*29492bb7SDavid van Moolenbroek 180*29492bb7SDavid van Moolenbroek ACPI_STATUS 181*29492bb7SDavid van Moolenbroek AcpiDbConvertToPackage ( 182*29492bb7SDavid van Moolenbroek char *String, 183*29492bb7SDavid van Moolenbroek ACPI_OBJECT *Object); 184*29492bb7SDavid van Moolenbroek 185*29492bb7SDavid van Moolenbroek ACPI_STATUS 186*29492bb7SDavid van Moolenbroek AcpiDbConvertToObject ( 187*29492bb7SDavid van Moolenbroek ACPI_OBJECT_TYPE Type, 188*29492bb7SDavid van Moolenbroek char *String, 189*29492bb7SDavid van Moolenbroek ACPI_OBJECT *Object); 190*29492bb7SDavid van Moolenbroek 191*29492bb7SDavid van Moolenbroek UINT8 * 192*29492bb7SDavid van Moolenbroek AcpiDbEncodePldBuffer ( 193*29492bb7SDavid van Moolenbroek ACPI_PLD_INFO *PldInfo); 194*29492bb7SDavid van Moolenbroek 195*29492bb7SDavid van Moolenbroek void 196*29492bb7SDavid van Moolenbroek AcpiDbDumpPldBuffer ( 197*29492bb7SDavid van Moolenbroek ACPI_OBJECT *ObjDesc); 198*29492bb7SDavid van Moolenbroek 199*29492bb7SDavid van Moolenbroek 200*29492bb7SDavid van Moolenbroek /* 201*29492bb7SDavid van Moolenbroek * dbmethod - control method commands 202*29492bb7SDavid van Moolenbroek */ 203*29492bb7SDavid van Moolenbroek void 204433d6423SLionel Sambuc AcpiDbSetMethodBreakpoint ( 205433d6423SLionel Sambuc char *Location, 206433d6423SLionel Sambuc ACPI_WALK_STATE *WalkState, 207433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Op); 208433d6423SLionel Sambuc 209433d6423SLionel Sambuc void 210433d6423SLionel Sambuc AcpiDbSetMethodCallBreakpoint ( 211433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Op); 212433d6423SLionel Sambuc 213433d6423SLionel Sambuc void 214*29492bb7SDavid van Moolenbroek AcpiDbSetMethodData ( 215*29492bb7SDavid van Moolenbroek char *TypeArg, 216*29492bb7SDavid van Moolenbroek char *IndexArg, 217*29492bb7SDavid van Moolenbroek char *ValueArg); 218*29492bb7SDavid van Moolenbroek 219*29492bb7SDavid van Moolenbroek ACPI_STATUS 220*29492bb7SDavid van Moolenbroek AcpiDbDisassembleMethod ( 221*29492bb7SDavid van Moolenbroek char *Name); 222433d6423SLionel Sambuc 223433d6423SLionel Sambuc void 224433d6423SLionel Sambuc AcpiDbDisassembleAml ( 225433d6423SLionel Sambuc char *Statements, 226433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Op); 227433d6423SLionel Sambuc 228433d6423SLionel Sambuc void 229*29492bb7SDavid van Moolenbroek AcpiDbBatchExecute ( 230*29492bb7SDavid van Moolenbroek char *CountArg); 231*29492bb7SDavid van Moolenbroek 232*29492bb7SDavid van Moolenbroek 233*29492bb7SDavid van Moolenbroek /* 234*29492bb7SDavid van Moolenbroek * dbnames - namespace commands 235*29492bb7SDavid van Moolenbroek */ 236*29492bb7SDavid van Moolenbroek void 237*29492bb7SDavid van Moolenbroek AcpiDbSetScope ( 238*29492bb7SDavid van Moolenbroek char *Name); 239*29492bb7SDavid van Moolenbroek 240*29492bb7SDavid van Moolenbroek void 241433d6423SLionel Sambuc AcpiDbDumpNamespace ( 242433d6423SLionel Sambuc char *StartArg, 243433d6423SLionel Sambuc char *DepthArg); 244433d6423SLionel Sambuc 245433d6423SLionel Sambuc void 246*29492bb7SDavid van Moolenbroek AcpiDbDumpNamespacePaths ( 247*29492bb7SDavid van Moolenbroek void); 248*29492bb7SDavid van Moolenbroek 249*29492bb7SDavid van Moolenbroek void 250433d6423SLionel Sambuc AcpiDbDumpNamespaceByOwner ( 251433d6423SLionel Sambuc char *OwnerArg, 252433d6423SLionel Sambuc char *DepthArg); 253433d6423SLionel Sambuc 254*29492bb7SDavid van Moolenbroek ACPI_STATUS 255*29492bb7SDavid van Moolenbroek AcpiDbFindNameInNamespace ( 256*29492bb7SDavid van Moolenbroek char *NameArg); 257433d6423SLionel Sambuc 258433d6423SLionel Sambuc void 259*29492bb7SDavid van Moolenbroek AcpiDbCheckPredefinedNames ( 260*29492bb7SDavid van Moolenbroek void); 261433d6423SLionel Sambuc 262433d6423SLionel Sambuc ACPI_STATUS 263433d6423SLionel Sambuc AcpiDbDisplayObjects ( 264433d6423SLionel Sambuc char *ObjTypeArg, 265433d6423SLionel Sambuc char *DisplayCountArg); 266433d6423SLionel Sambuc 267433d6423SLionel Sambuc void 268*29492bb7SDavid van Moolenbroek AcpiDbCheckIntegrity ( 269*29492bb7SDavid van Moolenbroek void); 270433d6423SLionel Sambuc 271433d6423SLionel Sambuc void 272433d6423SLionel Sambuc AcpiDbFindReferences ( 273433d6423SLionel Sambuc char *ObjectArg); 274433d6423SLionel Sambuc 275433d6423SLionel Sambuc void 276*29492bb7SDavid van Moolenbroek AcpiDbGetBusInfo ( 277433d6423SLionel Sambuc void); 278433d6423SLionel Sambuc 279433d6423SLionel Sambuc 280433d6423SLionel Sambuc /* 281433d6423SLionel Sambuc * dbdisply - debug display commands 282433d6423SLionel Sambuc */ 283433d6423SLionel Sambuc void 284433d6423SLionel Sambuc AcpiDbDisplayMethodInfo ( 285433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Op); 286433d6423SLionel Sambuc 287433d6423SLionel Sambuc void 288433d6423SLionel Sambuc AcpiDbDecodeAndDisplayObject ( 289433d6423SLionel Sambuc char *Target, 290433d6423SLionel Sambuc char *OutputType); 291433d6423SLionel Sambuc 292433d6423SLionel Sambuc void 293433d6423SLionel Sambuc AcpiDbDisplayResultObject ( 294433d6423SLionel Sambuc ACPI_OPERAND_OBJECT *ObjDesc, 295433d6423SLionel Sambuc ACPI_WALK_STATE *WalkState); 296433d6423SLionel Sambuc 297433d6423SLionel Sambuc ACPI_STATUS 298433d6423SLionel Sambuc AcpiDbDisplayAllMethods ( 299433d6423SLionel Sambuc char *DisplayCountArg); 300433d6423SLionel Sambuc 301433d6423SLionel Sambuc void 302433d6423SLionel Sambuc AcpiDbDisplayArguments ( 303433d6423SLionel Sambuc void); 304433d6423SLionel Sambuc 305433d6423SLionel Sambuc void 306433d6423SLionel Sambuc AcpiDbDisplayLocals ( 307433d6423SLionel Sambuc void); 308433d6423SLionel Sambuc 309433d6423SLionel Sambuc void 310433d6423SLionel Sambuc AcpiDbDisplayResults ( 311433d6423SLionel Sambuc void); 312433d6423SLionel Sambuc 313433d6423SLionel Sambuc void 314433d6423SLionel Sambuc AcpiDbDisplayCallingTree ( 315433d6423SLionel Sambuc void); 316433d6423SLionel Sambuc 317433d6423SLionel Sambuc void 318433d6423SLionel Sambuc AcpiDbDisplayObjectType ( 319433d6423SLionel Sambuc char *ObjectArg); 320433d6423SLionel Sambuc 321433d6423SLionel Sambuc void 322433d6423SLionel Sambuc AcpiDbDisplayArgumentObject ( 323433d6423SLionel Sambuc ACPI_OPERAND_OBJECT *ObjDesc, 324433d6423SLionel Sambuc ACPI_WALK_STATE *WalkState); 325433d6423SLionel Sambuc 326433d6423SLionel Sambuc 327433d6423SLionel Sambuc /* 328433d6423SLionel Sambuc * dbexec - debugger control method execution 329433d6423SLionel Sambuc */ 330433d6423SLionel Sambuc void 331433d6423SLionel Sambuc AcpiDbExecute ( 332433d6423SLionel Sambuc char *Name, 333433d6423SLionel Sambuc char **Args, 334*29492bb7SDavid van Moolenbroek ACPI_OBJECT_TYPE *Types, 335433d6423SLionel Sambuc UINT32 Flags); 336433d6423SLionel Sambuc 337433d6423SLionel Sambuc void 338433d6423SLionel Sambuc AcpiDbCreateExecutionThreads ( 339433d6423SLionel Sambuc char *NumThreadsArg, 340433d6423SLionel Sambuc char *NumLoopsArg, 341433d6423SLionel Sambuc char *MethodNameArg); 342433d6423SLionel Sambuc 343*29492bb7SDavid van Moolenbroek void 344*29492bb7SDavid van Moolenbroek AcpiDbDeleteObjects ( 345*29492bb7SDavid van Moolenbroek UINT32 Count, 346*29492bb7SDavid van Moolenbroek ACPI_OBJECT *Objects); 347*29492bb7SDavid van Moolenbroek 348433d6423SLionel Sambuc #ifdef ACPI_DBG_TRACK_ALLOCATIONS 349433d6423SLionel Sambuc UINT32 350433d6423SLionel Sambuc AcpiDbGetCacheInfo ( 351433d6423SLionel Sambuc ACPI_MEMORY_LIST *Cache); 352433d6423SLionel Sambuc #endif 353433d6423SLionel Sambuc 354433d6423SLionel Sambuc 355433d6423SLionel Sambuc /* 356433d6423SLionel Sambuc * dbfileio - Debugger file I/O commands 357433d6423SLionel Sambuc */ 358433d6423SLionel Sambuc ACPI_OBJECT_TYPE 359433d6423SLionel Sambuc AcpiDbMatchArgument ( 360433d6423SLionel Sambuc char *UserArgument, 361*29492bb7SDavid van Moolenbroek ACPI_DB_ARGUMENT_INFO *Arguments); 362433d6423SLionel Sambuc 363433d6423SLionel Sambuc void 364433d6423SLionel Sambuc AcpiDbCloseDebugFile ( 365433d6423SLionel Sambuc void); 366433d6423SLionel Sambuc 367433d6423SLionel Sambuc void 368433d6423SLionel Sambuc AcpiDbOpenDebugFile ( 369433d6423SLionel Sambuc char *Name); 370433d6423SLionel Sambuc 371433d6423SLionel Sambuc ACPI_STATUS 372433d6423SLionel Sambuc AcpiDbLoadAcpiTable ( 373433d6423SLionel Sambuc char *Filename); 374433d6423SLionel Sambuc 375433d6423SLionel Sambuc ACPI_STATUS 376433d6423SLionel Sambuc AcpiDbGetTableFromFile ( 377433d6423SLionel Sambuc char *Filename, 378433d6423SLionel Sambuc ACPI_TABLE_HEADER **Table); 379433d6423SLionel Sambuc 380433d6423SLionel Sambuc 381433d6423SLionel Sambuc /* 382433d6423SLionel Sambuc * dbhistry - debugger HISTORY command 383433d6423SLionel Sambuc */ 384433d6423SLionel Sambuc void 385433d6423SLionel Sambuc AcpiDbAddToHistory ( 386433d6423SLionel Sambuc char *CommandLine); 387433d6423SLionel Sambuc 388433d6423SLionel Sambuc void 389433d6423SLionel Sambuc AcpiDbDisplayHistory ( 390433d6423SLionel Sambuc void); 391433d6423SLionel Sambuc 392433d6423SLionel Sambuc char * 393433d6423SLionel Sambuc AcpiDbGetFromHistory ( 394433d6423SLionel Sambuc char *CommandNumArg); 395433d6423SLionel Sambuc 396*29492bb7SDavid van Moolenbroek char * 397*29492bb7SDavid van Moolenbroek AcpiDbGetHistoryByIndex ( 398*29492bb7SDavid van Moolenbroek UINT32 CommanddNum); 399*29492bb7SDavid van Moolenbroek 400433d6423SLionel Sambuc 401433d6423SLionel Sambuc /* 402433d6423SLionel Sambuc * dbinput - user front-end to the AML debugger 403433d6423SLionel Sambuc */ 404433d6423SLionel Sambuc ACPI_STATUS 405433d6423SLionel Sambuc AcpiDbCommandDispatch ( 406433d6423SLionel Sambuc char *InputBuffer, 407433d6423SLionel Sambuc ACPI_WALK_STATE *WalkState, 408433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Op); 409433d6423SLionel Sambuc 410433d6423SLionel Sambuc void ACPI_SYSTEM_XFACE 411433d6423SLionel Sambuc AcpiDbExecuteThread ( 412433d6423SLionel Sambuc void *Context); 413433d6423SLionel Sambuc 414433d6423SLionel Sambuc ACPI_STATUS 415433d6423SLionel Sambuc AcpiDbUserCommands ( 416433d6423SLionel Sambuc char Prompt, 417433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Op); 418433d6423SLionel Sambuc 419*29492bb7SDavid van Moolenbroek char * 420*29492bb7SDavid van Moolenbroek AcpiDbGetNextToken ( 421*29492bb7SDavid van Moolenbroek char *String, 422*29492bb7SDavid van Moolenbroek char **Next, 423*29492bb7SDavid van Moolenbroek ACPI_OBJECT_TYPE *ReturnType); 424*29492bb7SDavid van Moolenbroek 425433d6423SLionel Sambuc 426433d6423SLionel Sambuc /* 427433d6423SLionel Sambuc * dbstats - Generation and display of ACPI table statistics 428433d6423SLionel Sambuc */ 429433d6423SLionel Sambuc void 430433d6423SLionel Sambuc AcpiDbGenerateStatistics ( 431433d6423SLionel Sambuc ACPI_PARSE_OBJECT *Root, 432433d6423SLionel Sambuc BOOLEAN IsMethod); 433433d6423SLionel Sambuc 434433d6423SLionel Sambuc ACPI_STATUS 435433d6423SLionel Sambuc AcpiDbDisplayStatistics ( 436433d6423SLionel Sambuc char *TypeArg); 437433d6423SLionel Sambuc 438433d6423SLionel Sambuc 439433d6423SLionel Sambuc /* 440433d6423SLionel Sambuc * dbutils - AML debugger utilities 441433d6423SLionel Sambuc */ 442433d6423SLionel Sambuc void 443433d6423SLionel Sambuc AcpiDbSetOutputDestination ( 444433d6423SLionel Sambuc UINT32 Where); 445433d6423SLionel Sambuc 446433d6423SLionel Sambuc void 447433d6423SLionel Sambuc AcpiDbDumpExternalObject ( 448433d6423SLionel Sambuc ACPI_OBJECT *ObjDesc, 449433d6423SLionel Sambuc UINT32 Level); 450433d6423SLionel Sambuc 451433d6423SLionel Sambuc void 452433d6423SLionel Sambuc AcpiDbPrepNamestring ( 453433d6423SLionel Sambuc char *Name); 454433d6423SLionel Sambuc 455433d6423SLionel Sambuc ACPI_NAMESPACE_NODE * 456433d6423SLionel Sambuc AcpiDbLocalNsLookup ( 457433d6423SLionel Sambuc char *Name); 458433d6423SLionel Sambuc 459433d6423SLionel Sambuc void 460*29492bb7SDavid van Moolenbroek AcpiDbUint32ToHexString ( 461433d6423SLionel Sambuc UINT32 Value, 462433d6423SLionel Sambuc char *Buffer); 463433d6423SLionel Sambuc 464433d6423SLionel Sambuc #endif /* __ACDEBUG_H__ */ 465