UefiCpuPkg/CpuMpPei: Wakeup APs and collect AP count
BSP will send broadcast INIT Startup IPI to all APs and collect APs count and BIST information. 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@17997 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -27,6 +27,8 @@
|
||||
#include <Library/PcdLib.h>
|
||||
#include <Library/PeimEntryPoint.h>
|
||||
#include <Library/PeiServicesLib.h>
|
||||
#include <Library/SynchronizationLib.h>
|
||||
#include <Library/TimerLib.h>
|
||||
#include <Library/UefiCpuLib.h>
|
||||
//
|
||||
// AP state
|
||||
@@ -85,6 +87,7 @@ typedef struct {
|
||||
UINTN NumApsExecuting;
|
||||
UINTN LmodeOffset;
|
||||
UINTN Cr3;
|
||||
PEI_CPU_MP_DATA *PeiCpuMpData;
|
||||
} MP_CPU_EXCHANGE_INFO;
|
||||
|
||||
#pragma pack()
|
||||
@@ -108,6 +111,10 @@ struct _PEI_CPU_MP_DATA {
|
||||
UINTN WakeupBuffer;
|
||||
UINTN BackupBuffer;
|
||||
UINTN BackupBufferSize;
|
||||
UINTN ApFunction;
|
||||
UINTN ApFunctionArgument;
|
||||
volatile UINT32 FinishedCount;
|
||||
BOOLEAN InitFlag;
|
||||
PEI_CPU_DATA *CpuData;
|
||||
volatile MP_CPU_EXCHANGE_INFO *MpCpuExchangeInfo;
|
||||
};
|
||||
|
Reference in New Issue
Block a user