--- /dev/null
+/*++\r
+\r
+Copyright (c) 2007, Intel Corporation\r
+All rights reserved. This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution. The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+Module Name:\r
+\r
+ EdbCommand.h\r
+\r
+Abstract:\r
+\r
+\r
+--*/\r
+\r
+#ifndef _EFI_EDB_COMMAND_H_\r
+#define _EFI_EDB_COMMAND_H_\r
+\r
+typedef enum {\r
+ EdbWidthUint8,\r
+ EdbWidthUint16,\r
+ EdbWidthUint32,\r
+ EdbWidthUint64,\r
+ EdbWidthMax\r
+} EDB_DATA_WIDTH;\r
+\r
+EFI_DEBUGGER_COMMAND\r
+MatchDebuggerCommand (\r
+ IN CHAR16 *CommandName,\r
+ IN CHAR16 **CommandArg\r
+ );\r
+\r
+CHAR16 *\r
+GetCommandNameByKey (\r
+ IN EFI_INPUT_KEY CommandKey\r
+ );\r
+\r
+//\r
+// Definition for Command Table\r
+//\r
+#define EDB_COMMAND_DEFINE(func) \\r
+EFI_DEBUG_STATUS \\r
+func ( \\r
+ IN CHAR16 *CommandArg, \\r
+ IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, \\r
+ IN EFI_EXCEPTION_TYPE ExceptionType, \\r
+ IN OUT EFI_SYSTEM_CONTEXT SystemContext \\r
+ )\r
+\r
+EDB_COMMAND_DEFINE (DebuggerCallStack);\r
+EDB_COMMAND_DEFINE (DebuggerInstructionBranch);\r
+EDB_COMMAND_DEFINE (DebuggerBreakOnCALL);\r
+EDB_COMMAND_DEFINE (DebuggerBreakOnCALLEX);\r
+EDB_COMMAND_DEFINE (DebuggerBreakOnRET);\r
+EDB_COMMAND_DEFINE (DebuggerBreakOnEntrypoint);\r
+EDB_COMMAND_DEFINE (DebuggerBreakOnThunk);\r
+EDB_COMMAND_DEFINE (DebuggerBreakOnKey);\r
+EDB_COMMAND_DEFINE (DebuggerBreakpointList);\r
+EDB_COMMAND_DEFINE (DebuggerBreakpointSet);\r
+EDB_COMMAND_DEFINE (DebuggerBreakpointClear);\r
+EDB_COMMAND_DEFINE (DebuggerBreakpointDisable);\r
+EDB_COMMAND_DEFINE (DebuggerBreakpointEnable);\r
+EDB_COMMAND_DEFINE (DebuggerGo);\r
+EDB_COMMAND_DEFINE (DebuggerHelp);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryDB);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryDW);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryDD);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryDQ);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryEB);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryEW);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryED);\r
+EDB_COMMAND_DEFINE (DebuggerMemoryEQ);\r
+EDB_COMMAND_DEFINE (DebuggerQuit);\r
+EDB_COMMAND_DEFINE (DebuggerRegister);\r
+EDB_COMMAND_DEFINE (DebuggerScope);\r
+EDB_COMMAND_DEFINE (DebuggerList);\r
+EDB_COMMAND_DEFINE (DebuggerStepInto);\r
+EDB_COMMAND_DEFINE (DebuggerStepOver);\r
+EDB_COMMAND_DEFINE (DebuggerStepOut);\r
+EDB_COMMAND_DEFINE (DebuggerListSymbol);\r
+EDB_COMMAND_DEFINE (DebuggerLoadSymbol);\r
+EDB_COMMAND_DEFINE (DebuggerUnloadSymbol);\r
+EDB_COMMAND_DEFINE (DebuggerDisplaySymbol);\r
+EDB_COMMAND_DEFINE (DebuggerLoadCode);\r
+EDB_COMMAND_DEFINE (DebuggerUnloadCode);\r
+EDB_COMMAND_DEFINE (DebuggerDisplayCode);\r
+EDB_COMMAND_DEFINE (DebuggerExtIoIB);\r
+EDB_COMMAND_DEFINE (DebuggerExtIoIW);\r
+EDB_COMMAND_DEFINE (DebuggerExtIoID);\r
+EDB_COMMAND_DEFINE (DebuggerExtIoOB);\r
+EDB_COMMAND_DEFINE (DebuggerExtIoOW);\r
+EDB_COMMAND_DEFINE (DebuggerExtIoOD);\r
+EDB_COMMAND_DEFINE (DebuggerExtPciPCIL);\r
+EDB_COMMAND_DEFINE (DebuggerExtPciPCID);\r
+EDB_COMMAND_DEFINE (DebuggerExtPciCFGB);\r
+EDB_COMMAND_DEFINE (DebuggerExtPciCFGW);\r
+EDB_COMMAND_DEFINE (DebuggerExtPciCFGD);\r
+\r
+extern EFI_DEBUGGER_COMMAND_SET mDebuggerCommandSet[];\r
+\r
+#endif\r