* Add InitializeFloatingPointUnits() to x86 specific file * Add GetCpuFamilyModel() to x86 specific file * Add GetCpuSteppingId() to x86 specific file * Move StandardSignatureIsAuthenticAMD() to x86 specific file. * Add CpuLib library class include to all C files.
Cc: Liming Gao <gaolim...@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang....@intel.com> Cc: Laszlo Ersek <ler...@redhat.com> Cc: Qing Huang <qing.hu...@intel.com> Signed-off-by: Michael D Kinney <michael.d.kin...@intel.com> --- .../Library/BaseCpuLibNull/BaseCpuLibNull.c | 17 +---- .../Library/BaseCpuLibNull/BaseCpuLibNull.inf | 3 + .../BaseCpuLibNull/X86BaseCpuLibNull.c | 64 +++++++++++++++++++ 3 files changed, 69 insertions(+), 15 deletions(-) create mode 100644 MdePkg/Library/BaseCpuLibNull/X86BaseCpuLibNull.c diff --git a/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c b/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c index 3542cf6921f7..0080022b94ef 100644 --- a/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c +++ b/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c @@ -6,6 +6,8 @@ **/ +#include <Library/CpuLib.h> + /** Places the CPU in a sleep state until an interrupt is received. @@ -35,18 +37,3 @@ CpuFlushTlb ( ) { } - -/** - Determine if the standard CPU signature is "AuthenticAMD". - - @retval TRUE The CPU signature matches. - @retval FALSE The CPU signature does not match. -**/ -BOOLEAN -EFIAPI -StandardSignatureIsAuthenticAMD ( - VOID - ) -{ - return FALSE; -} diff --git a/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.inf b/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.inf index a9e8399038a6..9f20d6833f56 100644 --- a/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.inf +++ b/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.inf @@ -22,5 +22,8 @@ [Defines] [Sources] BaseCpuLibNull.c +[Sources.IA32, Sources.X64] + X86BaseCpuLibNull.c + [Packages] MdePkg/MdePkg.dec diff --git a/MdePkg/Library/BaseCpuLibNull/X86BaseCpuLibNull.c b/MdePkg/Library/BaseCpuLibNull/X86BaseCpuLibNull.c new file mode 100644 index 000000000000..4469bcc767cf --- /dev/null +++ b/MdePkg/Library/BaseCpuLibNull/X86BaseCpuLibNull.c @@ -0,0 +1,64 @@ +/** @file + Null instance of CPU Library for IA32/X64 specific services. + + Copyright (c) 2024, Intel Corporation. All rights reserved.<BR> + SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#include <Library/CpuLib.h> + +/** + Initializes floating point units for requirement of UEFI specification. + This function initializes floating-point control word to 0x027F (all exceptions + masked,double-precision, round-to-nearest) and multimedia-extensions control word + (if supported) to 0x1F80 (all exceptions masked, round-to-nearest, flush to zero + for masked underflow). +**/ +VOID +EFIAPI +InitializeFloatingPointUnits ( + VOID + ) +{ +} + +/** + Determine if the standard CPU signature is "AuthenticAMD". + @retval TRUE The CPU signature matches. + @retval FALSE The CPU signature does not match. +**/ +BOOLEAN +EFIAPI +StandardSignatureIsAuthenticAMD ( + VOID + ) +{ + return FALSE; +} + +/** + Return the 32bit CPU family and model value. + @return CPUID[01h].EAX with Processor Type and Stepping ID cleared. +**/ +UINT32 +EFIAPI +GetCpuFamilyModel ( + VOID + ) +{ + return 0; +} + +/** + Return the CPU stepping ID. + @return CPU stepping ID value in CPUID[01h].EAX. +**/ +UINT8 +EFIAPI +GetCpuSteppingId ( + VOID + ) +{ + return 0; +} -- 2.40.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#114236): https://edk2.groups.io/g/devel/message/114236 Mute This Topic: https://groups.io/mt/103921248/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/9847357/21656/1706620634/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-