1 /** @file
2 
3 Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution.  The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8 
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11 
12 
13 **/
14 
15 #ifndef _EFI_EDB_H_
16 #define _EFI_EDB_H_
17 
18 #include "EdbCommon.h"
19 
20 #define EBC_DEBUGGER_MAJOR_VERSION   1
21 #define EBC_DEBUGGER_MINOR_VERSION   0
22 
23 #define EFI_DEBUG_RETURN    1
24 #define EFI_DEBUG_BREAK     2
25 #define EFI_DEBUG_CONTINUE  3
26 
27 /**
28   Driver Entry point.
29 
30   @param  ImageHandle  ImageHandle of the loaded driver.
31   @param  SystemTable  Pointer to the EFI System Table.
32 
33 **/
34 EFI_STATUS
35 EfiDebuggerEntrypoint (
36   IN EFI_HANDLE                     ImageHandle,
37   IN EFI_SYSTEM_TABLE               *SystemTable
38   );
39 
40 /**
41 
42   The default Exception Callback for the VM interpreter.
43   In this function, we report status code, and print debug information
44   about EBC_CONTEXT, then dead loop.
45 
46   @param ExceptionType    Exception type.
47   @param SystemContext    EBC system context.
48 
49 **/
50 VOID
51 EFIAPI
52 EdbExceptionHandler (
53   IN     EFI_EXCEPTION_TYPE   ExceptionType,
54   IN OUT EFI_SYSTEM_CONTEXT   SystemContext
55   );
56 
57 extern EFI_DEBUGGER_PRIVATE_DATA mDebuggerPrivate;
58 
59 #include "EdbSupport.h"
60 #include "EdbCommand.h"
61 #include "EdbDisasm.h"
62 #include "EdbDisasmSupport.h"
63 #include "EdbSymbol.h"
64 #include "EdbHook.h"
65 
66 #endif
67