summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Fan <jeff.fan@intel.com>2017-04-21 11:21:00 +0800
committerGuo Mang <mang.guo@intel.com>2017-07-12 11:24:27 +0800
commite79c6af384a824b54542de058a01c43b107b1367 (patch)
treea58d4cdf7ff90ddad0dc3605b7a5c36561451b74
parent0e4475e59ecd2590230355c5994ac96e29a5132f (diff)
downloadedk2-platforms-e79c6af384a824b54542de058a01c43b107b1367.tar.xz
UefiCpuPkg: Move ProgramVirtualWireMode() to MpInitLib
In PEI phase, BSP did not program vitural wired mode while APs did. Move program virtual wired mode from CpuDxe to MpInitLib, thus it could benefit on both CpuDxe and CpuMpPei. https://bugzilla.tianocore.org/show_bug.cgi?id=496 Cc: Feng Tian <feng.tian@intel.com> Cc: Michael Kinney <michael.d.kinney@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 9d64a9fd9ee05f0b0228fc1f8b66398dac85e2c9)
-rw-r--r--Core/UefiCpuPkg/CpuDxe/CpuDxe.c5
-rw-r--r--Core/UefiCpuPkg/Library/MpInitLib/MpLib.c4
2 files changed, 4 insertions, 5 deletions
diff --git a/Core/UefiCpuPkg/CpuDxe/CpuDxe.c b/Core/UefiCpuPkg/CpuDxe/CpuDxe.c
index 4a5e282741..86806568a9 100644
--- a/Core/UefiCpuPkg/CpuDxe/CpuDxe.c
+++ b/Core/UefiCpuPkg/CpuDxe/CpuDxe.c
@@ -1136,11 +1136,6 @@ InitializeCpu (
InitInterruptDescriptorTable ();
//
- // Enable the local APIC for Virtual Wire Mode.
- //
- ProgramVirtualWireMode ();
-
- //
// Install CPU Architectural Protocol
//
Status = gBS->InstallMultipleProtocolInterfaces (
diff --git a/Core/UefiCpuPkg/Library/MpInitLib/MpLib.c b/Core/UefiCpuPkg/Library/MpInitLib/MpLib.c
index 03d6c2d89e..e5e211de8d 100644
--- a/Core/UefiCpuPkg/Library/MpInitLib/MpLib.c
+++ b/Core/UefiCpuPkg/Library/MpInitLib/MpLib.c
@@ -1364,6 +1364,10 @@ MpInitLibInitialize (
// Store BSP's MTRR setting
//
MtrrGetAllMtrrs (&CpuMpData->MtrrTable);
+ //
+ // Enable the local APIC for Virtual Wire Mode.
+ //
+ ProgramVirtualWireMode ();
if (OldCpuMpData == NULL) {
if (MaxLogicalProcessorNumber > 1) {