diff options
author | Jeff Fan <jeff.fan@intel.com> | 2016-05-24 21:42:19 +0800 |
---|---|---|
committer | Hao Wu <hao.a.wu@intel.com> | 2016-07-14 15:51:05 +0800 |
commit | 65ab4e73b66b029b8a8ccdb5212c1bafe2539c53 (patch) | |
tree | 5ec8c579d0393cbc80fea0c26ed1775c8588f6c2 /UefiCpuPkg/CpuMpPei/CpuMpPei.c | |
parent | eb268a9bf855622db0423eb35701ab2bd7530508 (diff) | |
download | edk2-platforms-65ab4e73b66b029b8a8ccdb5212c1bafe2539c53.tar.xz |
UefiCpuPkg/CpuMpPei: Consume CpuExceptionHandlerLib
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
(cherry picked from commit 9bedfb2f5b23c68c600770a9f853092d01eab6d4)
Diffstat (limited to 'UefiCpuPkg/CpuMpPei/CpuMpPei.c')
-rw-r--r-- | UefiCpuPkg/CpuMpPei/CpuMpPei.c | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPei.c b/UefiCpuPkg/CpuMpPei/CpuMpPei.c index 9da1b64732..bccff24cc1 100644 --- a/UefiCpuPkg/CpuMpPei/CpuMpPei.c +++ b/UefiCpuPkg/CpuMpPei/CpuMpPei.c @@ -852,14 +852,31 @@ CpuMpPeimInit ( IN CONST EFI_PEI_SERVICES **PeiServices
)
{
- EFI_STATUS Status;
- PEI_CPU_MP_DATA *PeiCpuMpData;
+ EFI_STATUS Status;
+ PEI_CPU_MP_DATA *PeiCpuMpData;
+ EFI_VECTOR_HANDOFF_INFO *VectorInfo;
+ EFI_PEI_VECTOR_HANDOFF_INFO_PPI *VectorHandoffInfoPpi;
//
// Load new GDT table on BSP
//
AsmInitializeGdt (&mGdt);
//
+ // Get Vector Hand-off Info PPI
+ //
+ VectorInfo = NULL;
+ Status = PeiServicesLocatePpi (
+ &gEfiVectorHandoffInfoPpiGuid,
+ 0,
+ NULL,
+ (VOID **)&VectorHandoffInfoPpi
+ );
+ if (Status == EFI_SUCCESS) {
+ VectorInfo = VectorHandoffInfoPpi->Info;
+ }
+ Status = InitializeCpuExceptionHandlers (VectorInfo);
+ ASSERT_EFI_ERROR (Status);
+ //
// Get wakeup buffer and copy AP reset code in it
//
PeiCpuMpData = PrepareAPStartupVector ();
|