summaryrefslogtreecommitdiffstats
path: root/EmulatorPkg/Include/Protocol/EmuThunk.h
diff options
context:
space:
mode:
Diffstat (limited to 'EmulatorPkg/Include/Protocol/EmuThunk.h')
-rw-r--r--EmulatorPkg/Include/Protocol/EmuThunk.h116
1 files changed, 52 insertions, 64 deletions
diff --git a/EmulatorPkg/Include/Protocol/EmuThunk.h b/EmulatorPkg/Include/Protocol/EmuThunk.h
index 0bb20651e5..b720023ac9 100644
--- a/EmulatorPkg/Include/Protocol/EmuThunk.h
+++ b/EmulatorPkg/Include/Protocol/EmuThunk.h
@@ -21,166 +21,156 @@
#include <Protocol/EmuIoThunk.h>
#include <Protocol/DevicePath.h>
-
typedef struct {
- VENDOR_DEVICE_PATH VendorDevicePath;
- UINT32 Instance;
+ VENDOR_DEVICE_PATH VendorDevicePath;
+ UINT32 Instance;
} EMU_VENDOR_DEVICE_PATH_NODE;
typedef struct {
- EMU_VENDOR_DEVICE_PATH_NODE Vendor;
- EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
+ EMU_VENDOR_DEVICE_PATH_NODE Vendor;
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
} EMU_THUNK_DEVICE_PATH;
-
-
-typedef struct _EMU_THUNK_PROTOCOL EMU_THUNK_PROTOCOL;
-
-
+typedef struct _EMU_THUNK_PROTOCOL EMU_THUNK_PROTOCOL;
typedef
UINTN
-(EFIAPI *EMU_WRITE_STD_ERROR) (
+(EFIAPI *EMU_WRITE_STD_ERROR)(
IN UINT8 *Buffer,
IN UINTN NumberOfBytes
);
typedef
EFI_STATUS
-(EFIAPI *EMU_CONFIG_STD_IN) (
+(EFIAPI *EMU_CONFIG_STD_IN)(
VOID
);
typedef
UINTN
-(EFIAPI *EMU_WRITE_STD_OUT) (
+(EFIAPI *EMU_WRITE_STD_OUT)(
IN UINT8 *Buffer,
IN UINTN NumberOfBytes
);
typedef
UINTN
-(EFIAPI *EMU_READ_STD_IN) (
+(EFIAPI *EMU_READ_STD_IN)(
OUT UINT8 *Buffer,
IN UINTN NumberOfBytes
);
typedef
BOOLEAN
-(EFIAPI *EMU_POLL_STD_IN) (
+(EFIAPI *EMU_POLL_STD_IN)(
VOID
);
-
typedef
VOID *
-(EFIAPI *EMU_OS_MALLOC) (
+(EFIAPI *EMU_OS_MALLOC)(
IN UINTN Size
);
typedef
VOID *
-(EFIAPI *EMU_OS_VMALLOC) (
+(EFIAPI *EMU_OS_VMALLOC)(
IN UINTN Size
);
typedef
BOOLEAN
-(EFIAPI *EMU_OS_FREE) (
+(EFIAPI *EMU_OS_FREE)(
IN VOID *Ptr
);
-
typedef
EFI_STATUS
-(EFIAPI *EMU_PE_COFF_GET_ENTRY_POINT) (
+(EFIAPI *EMU_PE_COFF_GET_ENTRY_POINT)(
IN VOID *Pe32Data,
IN OUT VOID **EntryPoint
);
typedef
VOID
-(EFIAPI *EMU_PE_COFF_RELOCATE_EXTRA_ACTION) (
+(EFIAPI *EMU_PE_COFF_RELOCATE_EXTRA_ACTION)(
IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
);
typedef
VOID
-(EFIAPI *EMU_PE_COFF_UNLOAD_EXTRA_ACTION) (
+(EFIAPI *EMU_PE_COFF_UNLOAD_EXTRA_ACTION)(
IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext
);
typedef
VOID
-(EFIAPI *EMU_ENABLE_INERRUPTS) (
+(EFIAPI *EMU_ENABLE_INERRUPTS)(
VOID
);
typedef
VOID
-(EFIAPI *EMU_DISABLE_INERRUPTS) (
+(EFIAPI *EMU_DISABLE_INERRUPTS)(
VOID
);
typedef
UINT64
-(EFIAPI *EMU_QUERY_PERFORMANCE_FREQENCY) (
+(EFIAPI *EMU_QUERY_PERFORMANCE_FREQENCY)(
VOID
);
typedef
UINT64
-(EFIAPI *EMU_QUERY_PERFORMANCE_COUNTER) (
+(EFIAPI *EMU_QUERY_PERFORMANCE_COUNTER)(
VOID
);
typedef
VOID
-(EFIAPI *EMU_SLEEP) (
+(EFIAPI *EMU_SLEEP)(
IN UINT64 Milliseconds
);
typedef
VOID
-(EFIAPI *EMU_CPU_SLEEP) (
+(EFIAPI *EMU_CPU_SLEEP)(
VOID
);
typedef
VOID
-(EFIAPI *EMU_EXIT) (
+(EFIAPI *EMU_EXIT)(
IN UINTN Status
);
typedef
VOID
-(EFIAPI *EMU_GET_TIME) (
+(EFIAPI *EMU_GET_TIME)(
OUT EFI_TIME *Time,
OUT EFI_TIME_CAPABILITIES *Capabilities OPTIONAL
);
typedef
VOID
-(EFIAPI *EMU_SET_TIME) (
+(EFIAPI *EMU_SET_TIME)(
IN EFI_TIME *Time
);
-
typedef
VOID
-(EFIAPI EMU_SET_TIMER_CALLBACK) (
+(EFIAPI EMU_SET_TIMER_CALLBACK)(
IN UINT64 DeltaMs
);
typedef
VOID
-(EFIAPI *EMU_SET_TIMER) (
+(EFIAPI *EMU_SET_TIMER)(
IN UINT64 PeriodMs,
IN EMU_SET_TIMER_CALLBACK CallBack
);
-
-
/**
Enumerates the current set of protocol instances that abstract OS services from EFI.
@@ -203,56 +193,54 @@ VOID
**/
typedef
EFI_STATUS
-(EFIAPI *EMU_GET_NEXT_PROTOCOL) (
+(EFIAPI *EMU_GET_NEXT_PROTOCOL)(
IN BOOLEAN EmuBusDriver,
OUT EMU_IO_THUNK_PROTOCOL **Instance OPTIONAL
);
-
struct _EMU_THUNK_PROTOCOL {
// Used for early debug printing
- EMU_WRITE_STD_ERROR WriteStdErr;
- EMU_CONFIG_STD_IN ConfigStdIn;
- EMU_WRITE_STD_OUT WriteStdOut;
- EMU_READ_STD_IN ReadStdIn;
- EMU_POLL_STD_IN PollStdIn;
+ EMU_WRITE_STD_ERROR WriteStdErr;
+ EMU_CONFIG_STD_IN ConfigStdIn;
+ EMU_WRITE_STD_OUT WriteStdOut;
+ EMU_READ_STD_IN ReadStdIn;
+ EMU_POLL_STD_IN PollStdIn;
//
// Map OS malloc/free so we can use OS based guard malloc
//
- EMU_OS_MALLOC Malloc;
- EMU_OS_VMALLOC Valloc;
- EMU_OS_FREE Free;
-
+ EMU_OS_MALLOC Malloc;
+ EMU_OS_VMALLOC Valloc;
+ EMU_OS_FREE Free;
///
/// PE/COFF loader hooks to get symbols loaded
///
- EMU_PE_COFF_GET_ENTRY_POINT PeCoffGetEntryPoint;
- EMU_PE_COFF_RELOCATE_EXTRA_ACTION PeCoffRelocateImageExtraAction;
- EMU_PE_COFF_UNLOAD_EXTRA_ACTION PeCoffUnloadImageExtraAction;
+ EMU_PE_COFF_GET_ENTRY_POINT PeCoffGetEntryPoint;
+ EMU_PE_COFF_RELOCATE_EXTRA_ACTION PeCoffRelocateImageExtraAction;
+ EMU_PE_COFF_UNLOAD_EXTRA_ACTION PeCoffUnloadImageExtraAction;
///
/// DXE Architecture Protocol Services
///
- EMU_ENABLE_INERRUPTS EnableInterrupt;
- EMU_DISABLE_INERRUPTS DisableInterrupt;
- EMU_QUERY_PERFORMANCE_FREQENCY QueryPerformanceFrequency;
- EMU_QUERY_PERFORMANCE_COUNTER QueryPerformanceCounter;
-
- EMU_SLEEP Sleep;
- EMU_CPU_SLEEP CpuSleep;
- EMU_EXIT Exit;
- EMU_GET_TIME GetTime;
- EMU_SET_TIME SetTime;
- EMU_SET_TIMER SetTimer;
+ EMU_ENABLE_INERRUPTS EnableInterrupt;
+ EMU_DISABLE_INERRUPTS DisableInterrupt;
+ EMU_QUERY_PERFORMANCE_FREQENCY QueryPerformanceFrequency;
+ EMU_QUERY_PERFORMANCE_COUNTER QueryPerformanceCounter;
+
+ EMU_SLEEP Sleep;
+ EMU_CPU_SLEEP CpuSleep;
+ EMU_EXIT Exit;
+ EMU_GET_TIME GetTime;
+ EMU_SET_TIME SetTime;
+ EMU_SET_TIMER SetTimer;
///
/// Generic System Services
///
- EMU_GET_NEXT_PROTOCOL GetNextProtocol;
+ EMU_GET_NEXT_PROTOCOL GetNextProtocol;
};
-extern EFI_GUID gEmuThunkProtocolGuid;
+extern EFI_GUID gEmuThunkProtocolGuid;
#endif