From 003973d98cf1ef84ab810cb4f3870acd3a7f40a6 Mon Sep 17 00:00:00 2001 From: Chen Fan Date: Thu, 13 Nov 2014 18:26:13 +0000 Subject: [PATCH] UefiCpuPkg/CpuDxe: introduce EFI_MP_SERVICES_PROTOCOL Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Chen Fan Reviewed-by: Jeff Fan git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16352 6f19259b-4bc3-4df7-8a09-765794883524 --- UefiCpuPkg/CpuDxe/CpuDxe.inf | 1 + UefiCpuPkg/CpuDxe/CpuMp.c | 10 ++++++++++ UefiCpuPkg/CpuDxe/CpuMp.h | 2 ++ 3 files changed, 13 insertions(+) diff --git a/UefiCpuPkg/CpuDxe/CpuDxe.inf b/UefiCpuPkg/CpuDxe/CpuDxe.inf index 0e53651edb..aa37269de7 100644 --- a/UefiCpuPkg/CpuDxe/CpuDxe.inf +++ b/UefiCpuPkg/CpuDxe/CpuDxe.inf @@ -70,6 +70,7 @@ [Protocols] gEfiCpuArchProtocolGuid ## PRODUCES + gEfiMpServiceProtocolGuid ## SOMETIMES_PRODUCES [Guids] gIdleLoopEventGuid ## CONSUMES ## Event diff --git a/UefiCpuPkg/CpuDxe/CpuMp.c b/UefiCpuPkg/CpuDxe/CpuMp.c index a87d67f180..e3734c2790 100644 --- a/UefiCpuPkg/CpuDxe/CpuMp.c +++ b/UefiCpuPkg/CpuDxe/CpuMp.c @@ -24,6 +24,16 @@ VOID *mApStackStart = 0; volatile UINTN mNumberOfProcessors; +EFI_MP_SERVICES_PROTOCOL mMpServicesTemplate = { + NULL, // GetNumberOfProcessors, + NULL, // GetProcessorInfo, + NULL, // StartupAllAPs, + NULL, // StartupThisAP, + NULL, // SwitchBSP, + NULL, // EnableDisableAP, + NULL // WhoAmI +}; + /** Application Processors do loop routine after switch to its own stack. diff --git a/UefiCpuPkg/CpuDxe/CpuMp.h b/UefiCpuPkg/CpuDxe/CpuMp.h index e28f162f53..157ac36c48 100644 --- a/UefiCpuPkg/CpuDxe/CpuMp.h +++ b/UefiCpuPkg/CpuDxe/CpuMp.h @@ -15,6 +15,8 @@ #ifndef _CPU_MP_H_ #define _CPU_MP_H_ +#include + /** Initialize Multi-processor support. -- 2.39.2