mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-24 06:04:52 +02:00
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:
parent
05e107f8f2
commit
a56f6f455f
@ -23,6 +23,7 @@
|
|||||||
#include <Library/PeimEntryPoint.h>
|
#include <Library/PeimEntryPoint.h>
|
||||||
|
|
||||||
#pragma pack(1)
|
#pragma pack(1)
|
||||||
|
|
||||||
typedef union {
|
typedef union {
|
||||||
struct {
|
struct {
|
||||||
UINT32 LimitLow : 16;
|
UINT32 LimitLow : 16;
|
||||||
@ -41,6 +42,24 @@ typedef union {
|
|||||||
} Bits;
|
} Bits;
|
||||||
UINT64 Uint64;
|
UINT64 Uint64;
|
||||||
} IA32_GDT;
|
} 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()
|
#pragma pack()
|
||||||
/**
|
/**
|
||||||
Assembly code to load GDT table and update segment accordingly.
|
Assembly code to load GDT table and update segment accordingly.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user