mirror of https://github.com/acidanthera/audk.git
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>
This commit is contained in:
parent
a81abf1616
commit
9bedfb2f5b
|
@ -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 ();
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
Definitions to install Multiple Processor PPI.
|
||||
|
||||
Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -21,6 +21,7 @@
|
|||
#include <Ppi/SecPlatformInformation.h>
|
||||
#include <Ppi/SecPlatformInformation2.h>
|
||||
#include <Ppi/EndOfPeiPhase.h>
|
||||
#include <Ppi/VectorHandoffInfo.h>
|
||||
|
||||
#include <Register/Cpuid.h>
|
||||
#include <Register/LocalApic.h>
|
||||
|
@ -39,6 +40,7 @@
|
|||
#include <Library/TimerLib.h>
|
||||
#include <Library/UefiCpuLib.h>
|
||||
#include <Library/CpuLib.h>
|
||||
#include <Library/CpuExceptionHandlerLib.h>
|
||||
|
||||
#include "Microcode.h"
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
## @file
|
||||
# CPU driver installs CPU PI Multi-processor PPI.
|
||||
#
|
||||
# Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions of the BSD License
|
||||
# which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -50,6 +50,7 @@
|
|||
|
||||
[Packages]
|
||||
MdePkg/MdePkg.dec
|
||||
MdeModulePkg/MdeModulePkg.dec
|
||||
UefiCpuPkg/UefiCpuPkg.dec
|
||||
|
||||
[LibraryClasses]
|
||||
|
@ -67,6 +68,7 @@
|
|||
TimerLib
|
||||
UefiCpuLib
|
||||
CpuLib
|
||||
CpuExceptionHandlerLib
|
||||
|
||||
[Ppis]
|
||||
gEfiPeiMpServicesPpiGuid ## PRODUCES
|
||||
|
@ -75,6 +77,7 @@
|
|||
## SOMETIMES_CONSUMES
|
||||
## SOMETIMES_PRODUCES
|
||||
gEfiSecPlatformInformation2PpiGuid
|
||||
gEfiVectorHandoffInfoPpiGuid ## SOMETIMES_CONSUMES
|
||||
|
||||
[Pcd]
|
||||
gUefiCpuPkgTokenSpaceGuid.PcdCpuMaxLogicalProcessorNumber ## CONSUMES
|
||||
|
|
Loading…
Reference in New Issue