From 661cab5d6a45308dcb7fb37c646e32efc1a087c4 Mon Sep 17 00:00:00 2001 From: rsun3 Date: Fri, 6 Jul 2012 05:49:53 +0000 Subject: [PATCH] UefiCpuPkg CpuDxe: Call UefiCpuLib.InitializeFloatingPointUnits () to initialize X87 FPU Control Word for BSP. For a platform tip with 32-bit PEI+64-bit DXE, InitializeFloatingPointUnits () should be called for BSP in the DXE phase. Signed-off-by: Sun Rui Reviewed-by: Fan Jeff git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13511 6f19259b-4bc3-4df7-8a09-765794883524 --- UefiCpuPkg/CpuDxe/CpuDxe.c | 2 ++ UefiCpuPkg/CpuDxe/CpuDxe.h | 1 + UefiCpuPkg/CpuDxe/CpuDxe.inf | 1 + UefiCpuPkg/UefiCpuPkg.dsc | 1 + 4 files changed, 5 insertions(+) diff --git a/UefiCpuPkg/CpuDxe/CpuDxe.c b/UefiCpuPkg/CpuDxe/CpuDxe.c index 17513e758f..c755d8a289 100644 --- a/UefiCpuPkg/CpuDxe/CpuDxe.c +++ b/UefiCpuPkg/CpuDxe/CpuDxe.c @@ -1247,6 +1247,8 @@ InitializeCpu ( EFI_STATUS Status; EFI_EVENT IdleLoopEvent; + InitializeFloatingPointUnits (); + // // Make sure interrupts are disabled // diff --git a/UefiCpuPkg/CpuDxe/CpuDxe.h b/UefiCpuPkg/CpuDxe/CpuDxe.h index 9baccb2565..a75ec0593f 100644 --- a/UefiCpuPkg/CpuDxe/CpuDxe.h +++ b/UefiCpuPkg/CpuDxe/CpuDxe.h @@ -29,6 +29,7 @@ #include #include #include +#include #include // diff --git a/UefiCpuPkg/CpuDxe/CpuDxe.inf b/UefiCpuPkg/CpuDxe/CpuDxe.inf index 3373efab16..b43506ef58 100644 --- a/UefiCpuPkg/CpuDxe/CpuDxe.inf +++ b/UefiCpuPkg/CpuDxe/CpuDxe.inf @@ -38,6 +38,7 @@ UefiBootServicesTableLib UefiDriverEntryPoint LocalApicLib + UefiCpuLib [Sources] CpuDxe.c diff --git a/UefiCpuPkg/UefiCpuPkg.dsc b/UefiCpuPkg/UefiCpuPkg.dsc index 73dbbaf3a2..505c69e4c8 100644 --- a/UefiCpuPkg/UefiCpuPkg.dsc +++ b/UefiCpuPkg/UefiCpuPkg.dsc @@ -34,6 +34,7 @@ DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf + UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf MtrrLib|UefiCpuPkg/Library/MtrrLib/MtrrLib.inf PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf -- 2.39.2