TianoCore EDK2 master
Loading...
Searching...
No Matches
CpuMpPei.h
Go to the documentation of this file.
1
9#ifndef _CPU_MP_PEI_H_
10#define _CPU_MP_PEI_H_
11
12#include <PiPei.h>
13
14#include <Ppi/MpServices.h>
17#include <Ppi/EndOfPeiPhase.h>
18#include <Ppi/MpServices2.h>
19
20#include <Library/BaseLib.h>
21#include <Library/DebugLib.h>
22#include <Library/HobLib.h>
28#include <Library/MpInitLib.h>
32
33#include <Guid/MpInformation2.h>
34
35#include <Register/Cpuid.h>
36
37extern EFI_PEI_PPI_DESCRIPTOR mPeiCpuMpPpiDesc;
38
74EFIAPI
76 IN CONST EFI_PEI_SERVICES **PeiServices,
78 OUT UINTN *NumberOfProcessors,
79 OUT UINTN *NumberOfEnabledProcessors
80 );
81
109EFIAPI
111 IN CONST EFI_PEI_SERVICES **PeiServices,
113 IN UINTN ProcessorNumber,
114 OUT EFI_PROCESSOR_INFORMATION *ProcessorInfoBuffer
115 );
116
181EFIAPI
183 IN CONST EFI_PEI_SERVICES **PeiServices,
185 IN EFI_AP_PROCEDURE Procedure,
186 IN BOOLEAN SingleThread,
187 IN UINTN TimeoutInMicroSeconds,
188 IN VOID *ProcedureArgument OPTIONAL
189 );
190
238EFIAPI
240 IN CONST EFI_PEI_SERVICES **PeiServices,
242 IN EFI_AP_PROCEDURE Procedure,
243 IN UINTN ProcessorNumber,
244 IN UINTN TimeoutInMicroseconds,
245 IN VOID *ProcedureArgument OPTIONAL
246 );
247
283EFIAPI
285 IN CONST EFI_PEI_SERVICES **PeiServices,
287 IN UINTN ProcessorNumber,
288 IN BOOLEAN EnableOldBSP
289 );
290
331EFIAPI
333 IN CONST EFI_PEI_SERVICES **PeiServices,
335 IN UINTN ProcessorNumber,
336 IN BOOLEAN EnableAP,
337 IN UINT32 *HealthFlag OPTIONAL
338 );
339
365EFIAPI
366PeiWhoAmI (
367 IN CONST EFI_PEI_SERVICES **PeiServices,
369 OUT UINTN *ProcessorNumber
370 );
371
381VOID
383 IN CONST EFI_PEI_SERVICES **PeiServices
384 );
385
399EFIAPI
401 IN CONST EFI_PEI_SERVICES **PeiServices,
402 IN OUT UINT64 *StructureSize,
403 OUT EFI_SEC_PLATFORM_INFORMATION_RECORD2 *PlatformInformationRecord2
404 );
405
415 VOID
416 );
417
429 IN CONST EFI_PEI_SERVICES **PeiServices
430 );
431
446EFIAPI
448 IN EFI_PEI_SERVICES **PeiServices,
449 IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor,
450 IN VOID *Ppi
451 );
452
453extern EFI_PEI_NOTIFY_DESCRIPTOR mPostMemNotifyList[];
454
455#endif
UINT64 UINTN
EFI_STATUS MigrateGdt(VOID)
Definition: SecMain.c:46
EFI_STATUS EFIAPI PeiGetProcessorInfo(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_MP_SERVICES_PPI *This, IN UINTN ProcessorNumber, OUT EFI_PROCESSOR_INFORMATION *ProcessorInfoBuffer)
Definition: CpuMpPei.c:120
EFI_STATUS EFIAPI MemoryDiscoveredPpiNotifyCallback(IN EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor, IN VOID *Ppi)
Definition: CpuPaging.c:372
EFI_STATUS EFIAPI PeiWhoAmI(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_MP_SERVICES_PPI *This, OUT UINTN *ProcessorNumber)
Definition: CpuMpPei.c:405
EFI_STATUS EFIAPI PeiStartupAllAPs(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_MP_SERVICES_PPI *This, IN EFI_AP_PROCEDURE Procedure, IN BOOLEAN SingleThread, IN UINTN TimeoutInMicroSeconds, IN VOID *ProcedureArgument OPTIONAL)
Definition: CpuMpPei.c:195
EFI_STATUS EFIAPI PeiEnableDisableAP(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_MP_SERVICES_PPI *This, IN UINTN ProcessorNumber, IN BOOLEAN EnableAP, IN UINT32 *HealthFlag OPTIONAL)
Definition: CpuMpPei.c:368
EFI_STATUS EFIAPI SecPlatformInformation2(IN CONST EFI_PEI_SERVICES **PeiServices, IN OUT UINT64 *StructureSize, OUT EFI_SEC_PLATFORM_INFORMATION_RECORD2 *PlatformInformationRecord2)
Definition: CpuBist.c:35
EFI_STATUS EFIAPI PeiSwitchBSP(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_MP_SERVICES_PPI *This, IN UINTN ProcessorNumber, IN BOOLEAN EnableOldBSP)
Definition: CpuMpPei.c:317
VOID CollectBistDataFromPpi(IN CONST EFI_PEI_SERVICES **PeiServices)
Definition: CpuBist.c:157
EFI_STATUS InitializeCpuMpWorker(IN CONST EFI_PEI_SERVICES **PeiServices)
Definition: CpuMpPei.c:711
EFI_STATUS EFIAPI PeiStartupThisAP(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_MP_SERVICES_PPI *This, IN EFI_AP_PROCEDURE Procedure, IN UINTN ProcessorNumber, IN UINTN TimeoutInMicroseconds, IN VOID *ProcedureArgument OPTIONAL)
Definition: CpuMpPei.c:262
EFI_STATUS EFIAPI PeiGetNumberOfProcessors(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_MP_SERVICES_PPI *This, OUT UINTN *NumberOfProcessors, OUT UINTN *NumberOfEnabledProcessors)
Definition: CpuMpPei.c:75
#define CONST
Definition: Base.h:259
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
VOID(EFIAPI * EFI_AP_PROCEDURE)(IN OUT VOID *Buffer)
Definition: PiMultiPhase.h:198
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29