UefiCpuPkg/CpuMpPei: Add MP exchange structure definition

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17990 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Jeff Fan 2015-07-15 03:30:01 +00:00 committed by vanjeff
parent 05e107f8f2
commit a56f6f455f
1 changed files with 19 additions and 0 deletions

View File

@ -23,6 +23,7 @@
#include <Library/PeimEntryPoint.h>
#pragma pack(1)
typedef union {
struct {
UINT32 LimitLow : 16;
@ -41,6 +42,24 @@ typedef union {
} Bits;
UINT64 Uint64;
} IA32_GDT;
//
// MP CPU exchange information for AP reset code
//
typedef struct {
UINTN Lock;
UINTN StackStart;
UINTN StackSize;
UINTN CFunction;
IA32_DESCRIPTOR GdtrProfile;
IA32_DESCRIPTOR IdtrProfile;
UINTN BufferStart;
UINTN PmodeOffset;
UINTN NumApsExecuting;
UINTN LmodeOffset;
UINTN Cr3;
} MP_CPU_EXCHANGE_INFO;
#pragma pack()
/**
Assembly code to load GDT table and update segment accordingly.