]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCommand.h
MdeModulePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdeModulePkg / Universal / EbcDxe / EbcDebugger / EdbCommand.h
1 /** @file
2
3 Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
4 SPDX-License-Identifier: BSD-2-Clause-Patent
5
6
7 **/
8
9 #ifndef _EFI_EDB_COMMAND_H_
10 #define _EFI_EDB_COMMAND_H_
11
12 typedef enum {
13 EdbWidthUint8,
14 EdbWidthUint16,
15 EdbWidthUint32,
16 EdbWidthUint64,
17 EdbWidthMax
18 } EDB_DATA_WIDTH;
19
20 /**
21
22 Find the command according to name.
23
24 @param CommandName - Command Name
25 @param CommandArg - Command Argument
26
27 @return Not NULL - The DebuggerCommand is found successfully
28 @return NULL - not found
29
30 **/
31 EFI_DEBUGGER_COMMAND
32 MatchDebuggerCommand (
33 IN CHAR16 *CommandName,
34 IN CHAR16 **CommandArg
35 );
36
37 /**
38
39 Find the command name according to the function key.
40
41 @param CommandKey - Command Function Key
42
43 @return Not NULL - The DebuggerName is found successfully
44 @return NULL - not found
45
46 **/
47 CHAR16 *
48 GetCommandNameByKey (
49 IN EFI_INPUT_KEY CommandKey
50 );
51
52 //
53 // Definition for Command Table
54 //
55 #define EDB_COMMAND_DEFINE(func) \
56 EFI_DEBUG_STATUS \
57 func ( \
58 IN CHAR16 *CommandArg, \
59 IN EFI_DEBUGGER_PRIVATE_DATA *DebuggerPrivate, \
60 IN EFI_EXCEPTION_TYPE ExceptionType, \
61 IN OUT EFI_SYSTEM_CONTEXT SystemContext \
62 )
63
64 EDB_COMMAND_DEFINE (DebuggerCallStack);
65 EDB_COMMAND_DEFINE (DebuggerInstructionBranch);
66 EDB_COMMAND_DEFINE (DebuggerBreakOnCALL);
67 EDB_COMMAND_DEFINE (DebuggerBreakOnCALLEX);
68 EDB_COMMAND_DEFINE (DebuggerBreakOnRET);
69 EDB_COMMAND_DEFINE (DebuggerBreakOnEntrypoint);
70 EDB_COMMAND_DEFINE (DebuggerBreakOnThunk);
71 EDB_COMMAND_DEFINE (DebuggerBreakOnKey);
72 EDB_COMMAND_DEFINE (DebuggerBreakpointList);
73 EDB_COMMAND_DEFINE (DebuggerBreakpointSet);
74 EDB_COMMAND_DEFINE (DebuggerBreakpointClear);
75 EDB_COMMAND_DEFINE (DebuggerBreakpointDisable);
76 EDB_COMMAND_DEFINE (DebuggerBreakpointEnable);
77 EDB_COMMAND_DEFINE (DebuggerGo);
78 EDB_COMMAND_DEFINE (DebuggerHelp);
79 EDB_COMMAND_DEFINE (DebuggerMemoryDB);
80 EDB_COMMAND_DEFINE (DebuggerMemoryDW);
81 EDB_COMMAND_DEFINE (DebuggerMemoryDD);
82 EDB_COMMAND_DEFINE (DebuggerMemoryDQ);
83 EDB_COMMAND_DEFINE (DebuggerMemoryEB);
84 EDB_COMMAND_DEFINE (DebuggerMemoryEW);
85 EDB_COMMAND_DEFINE (DebuggerMemoryED);
86 EDB_COMMAND_DEFINE (DebuggerMemoryEQ);
87 EDB_COMMAND_DEFINE (DebuggerQuit);
88 EDB_COMMAND_DEFINE (DebuggerRegister);
89 EDB_COMMAND_DEFINE (DebuggerScope);
90 EDB_COMMAND_DEFINE (DebuggerList);
91 EDB_COMMAND_DEFINE (DebuggerStepInto);
92 EDB_COMMAND_DEFINE (DebuggerStepOver);
93 EDB_COMMAND_DEFINE (DebuggerStepOut);
94 EDB_COMMAND_DEFINE (DebuggerListSymbol);
95 EDB_COMMAND_DEFINE (DebuggerLoadSymbol);
96 EDB_COMMAND_DEFINE (DebuggerUnloadSymbol);
97 EDB_COMMAND_DEFINE (DebuggerDisplaySymbol);
98 EDB_COMMAND_DEFINE (DebuggerLoadCode);
99 EDB_COMMAND_DEFINE (DebuggerUnloadCode);
100 EDB_COMMAND_DEFINE (DebuggerDisplayCode);
101 EDB_COMMAND_DEFINE (DebuggerExtIoIB);
102 EDB_COMMAND_DEFINE (DebuggerExtIoIW);
103 EDB_COMMAND_DEFINE (DebuggerExtIoID);
104 EDB_COMMAND_DEFINE (DebuggerExtIoOB);
105 EDB_COMMAND_DEFINE (DebuggerExtIoOW);
106 EDB_COMMAND_DEFINE (DebuggerExtIoOD);
107 EDB_COMMAND_DEFINE (DebuggerExtPciPCIL);
108 EDB_COMMAND_DEFINE (DebuggerExtPciPCID);
109 EDB_COMMAND_DEFINE (DebuggerExtPciCFGB);
110 EDB_COMMAND_DEFINE (DebuggerExtPciCFGW);
111 EDB_COMMAND_DEFINE (DebuggerExtPciCFGD);
112
113 extern EFI_DEBUGGER_COMMAND_SET mDebuggerCommandSet[];
114
115 #endif