From a56f6f455f88fd9cc532bdc085163095c0022a5f Mon Sep 17 00:00:00 2001 From: Jeff Fan Date: Wed, 15 Jul 2015 03:30:01 +0000 Subject: UefiCpuPkg/CpuMpPei: Add MP exchange structure definition Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jeff Fan Reviewed-by: Feng Tian Reviewed-by: Jiewen Yao git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17990 6f19259b-4bc3-4df7-8a09-765794883524 --- UefiCpuPkg/CpuMpPei/CpuMpPei.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPei.h b/UefiCpuPkg/CpuMpPei/CpuMpPei.h index da01fdac87..3f4fa92fc1 100644 --- a/UefiCpuPkg/CpuMpPei/CpuMpPei.h +++ b/UefiCpuPkg/CpuMpPei/CpuMpPei.h @@ -23,6 +23,7 @@ #include #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. -- cgit v1.2.3