TianoCore EDK2 master
VmgExitLib.h
Go to the documentation of this file.
1
12#ifndef __VMG_EXIT_LIB_H__
13#define __VMG_EXIT_LIB_H__
14
16#include <Register/Amd/Ghcb.h>
17
18#define VE_EXCEPTION 20
19
39UINT64
40EFIAPI
41VmgExit (
42 IN OUT GHCB *Ghcb,
43 IN UINT64 ExitCode,
44 IN UINT64 ExitInfo1,
45 IN UINT64 ExitInfo2
46 );
47
59VOID
60EFIAPI
61VmgInit (
62 IN OUT GHCB *Ghcb,
63 IN OUT BOOLEAN *InterruptState
64 );
65
77VOID
78EFIAPI
79VmgDone (
80 IN OUT GHCB *Ghcb,
81 IN BOOLEAN InterruptState
82 );
83
94VOID
95EFIAPI
97 IN OUT GHCB *Ghcb,
98 IN GHCB_REGISTER Offset
99 );
100
114BOOLEAN
115EFIAPI
117 IN GHCB *Ghcb,
118 IN GHCB_REGISTER Offset
119 );
120
141EFIAPI
143 IN OUT EFI_EXCEPTION_TYPE *ExceptionType,
144 IN OUT EFI_SYSTEM_CONTEXT SystemContext
145 );
146
167EFIAPI
169 IN OUT EFI_EXCEPTION_TYPE *ExceptionType,
170 IN OUT EFI_SYSTEM_CONTEXT SystemContext
171 );
172
173#endif
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
INTN EFI_EXCEPTION_TYPE
Definition: DebugSupport.h:35
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:28
VOID EFIAPI VmgSetOffsetValid(IN OUT GHCB *Ghcb, IN GHCB_REGISTER Offset)
Definition: VmgExitLib.c:197
BOOLEAN EFIAPI VmgIsOffsetValid(IN GHCB *Ghcb, IN GHCB_REGISTER Offset)
Definition: VmgExitLib.c:226
UINT64 EFIAPI VmgExit(IN OUT GHCB *Ghcb, IN UINT64 ExitCode, IN UINT64 ExitInfo1, IN UINT64 ExitInfo2)
Definition: VmgExitLib.c:105
EFI_STATUS EFIAPI VmTdExitHandleVe(IN OUT EFI_EXCEPTION_TYPE *ExceptionType, IN OUT EFI_SYSTEM_CONTEXT SystemContext)
VOID EFIAPI VmgInit(IN OUT GHCB *Ghcb, IN OUT BOOLEAN *InterruptState)
Definition: VmgExitLib.c:145
VOID EFIAPI VmgDone(IN OUT GHCB *Ghcb, IN BOOLEAN InterruptState)
Definition: VmgExitLib.c:175
EFI_STATUS EFIAPI VmgExitHandleVc(IN OUT EFI_EXCEPTION_TYPE *ExceptionType, IN OUT EFI_SYSTEM_CONTEXT SystemContext)