From: Yu Pu <yu.pu@intel.com>
To: devel@edk2.groups.io
Cc: Yu Pu <yu.pu@intel.com>
Subject: [PATCH v1 00/15] Merge UefiCpuLib to CpuLib
Date: Tue, 29 Mar 2022 14:36:48 +0800 [thread overview]
Message-ID: <20220329063703.549-1-yu.pu@intel.com> (raw)
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3394
Today lots of duplicated code call CPUID and calculates the address
mask. Adding an API named GetPhysicalAddressBits in UefiCpuLib can
solve this problem, but at the same time cause MdeModulePkg depend
on UefiCpuPkg which does not meet the design spec. So merge UefiCpuLib
to CpuLib is a good way to sovle these problems. To minimize the impact,
this operation is divided into four steps.
Yu Pu (15):
IntelFsp2Pkg: Add CpuLib to module INFs that depend on UefiCpuLib
IntelFsp2WrapperPkg: Add CpuLib to module INFs that depend on
UefiCpuLib.
MdePkg: Add CpuLib to module INFs that depend on UefiCpuLib.
OvmfPkg: Add CpuLib to module INFs that depend on UefiCpuLib.
UefiCpuPkg: Add CpuLib to module INFs that depend on UefiCpuLib.
UefiPayloadPkg: Add CpuLib to module INFs that depend on UefiCpuLib.
MdePkg: Move API and implementation from UefiCpuLib to CpuLib
UefiCpuPkg: Move API and implementation from UefiCpuLib to CpuLib
IntelFsp2Pkg: Remove UefiCpuLib from module INFs.
OvmfPkg: Remove UefiCpuLib from module INFs.
PcAtChipsetPkg: Remove UefiCpuLib from module INFs.
SourceLevelDebugPkg: Remove UefiCpuLib from module INFs.
UefiCpuPkg: Remove UefiCpuLib from module INFs.
UefiPayloadPkg: Remove UefiCpuLib from module INFs.
UefiCpuLib: Remove UefiCpuLib.
MdePkg/Library/BaseCpuLib/X86BaseCpuLib.c | 122 ++++++++++++++++++++
OvmfPkg/Sec/SecMain.c | 2 +-
UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.c | 81 -------------
UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c | 2 +-
UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.c | 2 +-
IntelFsp2Pkg/FspSecCore/FspSecCoreM.inf | 2 +-
IntelFsp2Pkg/FspSecCore/SecMain.h | 2 +-
IntelFsp2Pkg/IntelFsp2Pkg.dsc | 1 -
IntelFsp2Pkg/Tools/Tests/QemuFspPkg.dsc | 1 -
IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.inf | 2 +-
IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.inf | 2 +-
IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dsc | 1 -
MdePkg/Include/Library/CpuLib.h | 65 +++++++++++
MdePkg/Library/BaseCpuLib/BaseCpuLib.inf | 6 +
{UefiCpuPkg/Library/BaseUefiCpuLib => MdePkg/Library/BaseCpuLib}/Ia32/InitializeFpu.nasm | 0
{UefiCpuPkg/Library/BaseUefiCpuLib => MdePkg/Library/BaseCpuLib}/X64/InitializeFpu.nasm | 0
MdePkg/MdeLibs.dsc.inc | 1 +
OvmfPkg/AmdSev/AmdSevX64.dsc | 1 -
OvmfPkg/Bhyve/BhyveX64.dsc | 1 -
OvmfPkg/CloudHv/CloudHvX64.dsc | 1 -
OvmfPkg/Microvm/MicrovmX64.dsc | 1 -
OvmfPkg/OvmfPkgIa32.dsc | 1 -
OvmfPkg/OvmfPkgIa32X64.dsc | 1 -
OvmfPkg/OvmfPkgX64.dsc | 1 -
OvmfPkg/OvmfXen.dsc | 1 -
OvmfPkg/Sec/SecMain.inf | 2 +-
PcAtChipsetPkg/PcAtChipsetPkg.dsc | 1 -
SourceLevelDebugPkg/SourceLevelDebugPkg.dsc | 1 -
UefiCpuPkg/CpuDxe/CpuDxe.h | 1 -
UefiCpuPkg/CpuDxe/CpuDxe.inf | 1 -
UefiCpuPkg/Include/Library/UefiCpuLib.h | 65 -----------
UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf | 41 -------
UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.uni | 16 ---
UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.inf | 2 +-
UefiCpuPkg/Library/BaseXApicX2ApicLib/BaseXApicX2ApicLib.inf | 2 +-
UefiCpuPkg/Library/MpInitLib/DxeMpInitLib.inf | 1 -
UefiCpuPkg/Library/MpInitLib/MpLib.h | 1 -
UefiCpuPkg/Library/MpInitLib/PeiMpInitLib.inf | 1 -
UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 2 +-
UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 1 -
UefiCpuPkg/PiSmmCpuDxeSmm/SmmProfileInternal.h | 1 -
UefiCpuPkg/SecCore/SecCore.inf | 2 +-
UefiCpuPkg/SecCore/SecCoreNative.inf | 2 +-
UefiCpuPkg/SecCore/SecMain.h | 2 +-
UefiCpuPkg/UefiCpuPkg.dec | 5 -
UefiCpuPkg/UefiCpuPkg.dsc | 2 -
UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.h | 2 +-
UefiPayloadPkg/UefiPayloadEntry/UefiPayloadEntry.inf | 2 +-
UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.inf | 2 +-
UefiPayloadPkg/UefiPayloadPkg.dsc | 1 -
50 files changed, 211 insertions(+), 248 deletions(-)
create mode 100644 MdePkg/Library/BaseCpuLib/X86BaseCpuLib.c
delete mode 100644 UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.c
rename {UefiCpuPkg/Library/BaseUefiCpuLib => MdePkg/Library/BaseCpuLib}/Ia32/InitializeFpu.nasm (100%)
rename {UefiCpuPkg/Library/BaseUefiCpuLib => MdePkg/Library/BaseCpuLib}/X64/InitializeFpu.nasm (100%)
delete mode 100644 UefiCpuPkg/Include/Library/UefiCpuLib.h
delete mode 100644 UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
delete mode 100644 UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.uni
--
2.30.0.windows.2
next reply other threads:[~2022-03-29 6:37 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-29 6:36 Yu Pu [this message]
2022-03-29 6:36 ` [PATCH v1 01/15] IntelFsp2Pkg: Add CpuLib to module INFs that depend on UefiCpuLib Yu Pu
2022-03-29 6:36 ` [PATCH v1 02/15] IntelFsp2WrapperPkg: " Yu Pu
2022-03-29 6:36 ` [PATCH v1 03/15] MdePkg: " Yu Pu
2022-03-29 6:36 ` [PATCH v1 04/15] OvmfPkg: " Yu Pu
2022-03-29 6:36 ` [PATCH v1 05/15] UefiCpuPkg: " Yu Pu
2022-03-29 6:36 ` [PATCH v1 06/15] UefiPayloadPkg: " Yu Pu
2022-03-29 6:36 ` [PATCH v1 07/15] MdePkg: Move API and implementation from UefiCpuLib to CpuLib Yu Pu
2022-03-29 6:36 ` [PATCH v1 08/15] UefiCpuPkg: " Yu Pu
2022-03-29 6:36 ` [PATCH v1 09/15] IntelFsp2Pkg: Remove UefiCpuLib from module INFs Yu Pu
2022-03-29 6:36 ` [PATCH v1 10/15] OvmfPkg: " Yu Pu
2022-03-29 6:36 ` [PATCH v1 11/15] PcAtChipsetPkg: " Yu Pu
2022-03-29 6:37 ` [PATCH v1 12/15] SourceLevelDebugPkg: " Yu Pu
2022-03-29 6:37 ` [PATCH v1 13/15] UefiCpuPkg: " Yu Pu
2022-03-29 6:37 ` [PATCH v1 14/15] UefiPayloadPkg: " Yu Pu
2022-03-29 6:37 ` [PATCH v1 15/15] UefiCpuLib: Remove UefiCpuLib Yu Pu
2022-03-31 0:51 ` 回复: [edk2-devel] [PATCH v1 00/15] Merge UefiCpuLib to CpuLib gaoliming
2022-04-01 13:45 ` Abner Chang
[not found] ` <16E1C9BAAD925E7E.30116@groups.io>
2022-04-19 6:50 ` Abner Chang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220329063703.549-1-yu.pu@intel.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox