From 4c43209a740d4b38094f9495ce85219421a938af Mon Sep 17 00:00:00 2001 From: Michael D Kinney Date: Tue, 23 Jan 2024 14:49:42 -0800 Subject: MdePkg/Library/BaseCpuLibNull: Add missing X86 specific services * 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 Cc: Zhiguang Liu Cc: Laszlo Ersek Cc: Qing Huang Signed-off-by: Michael D Kinney Reviewed-by: Liming Gao Reviewed-by: Laszlo Ersek --- MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c | 17 +----- MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.inf | 3 ++ MdePkg/Library/BaseCpuLibNull/X86BaseCpuLibNull.c | 64 +++++++++++++++++++++++ 3 files changed, 69 insertions(+), 15 deletions(-) create mode 100644 MdePkg/Library/BaseCpuLibNull/X86BaseCpuLibNull.c (limited to 'MdePkg') diff --git a/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c b/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c index 3542cf6921..0080022b94 100644 --- a/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c +++ b/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.c @@ -6,6 +6,8 @@ **/ +#include + /** 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 a9e8399038..9f20d6833f 100644 --- a/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.inf +++ b/MdePkg/Library/BaseCpuLibNull/BaseCpuLibNull.inf @@ -22,5 +22,8 @@ [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 0000000000..4469bcc767 --- /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.
+ SPDX-License-Identifier: BSD-2-Clause-Patent + +**/ + +#include + +/** + 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; +} -- cgit v1.2.3