Michael Kubacki
ee582858c4
.azurepipelines: Add NOOPT to all package builds
...
The NOOPT build target is used for host-based unit tests. This
change adds the NOOPT target for all packages to ensure that tests
are executed if present.
If the host-based DSC is not specified in the packages CI YAML file,
the host-based compiler plugin will be reported as a skipped test.
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Sean Brogan <sean.brogan@microsoft.com >
2022-04-22 14:59:40 +00:00
Li, Yi1
f4dfec6ca1
BaseTools: Move gPlatformFinalPcd to Datapipe and optimize size
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3828
This is a bugfix of
bf9230a9f3
.
1.In the current code, gPlatformFinalPcd will save all PCDs used at
whole compile process, which wastes runtime memory and is unnecessary.
This patch makes gPlatformFinalPcd save only the PCDes which are
assigned in the DSC file, and the PCD that has not been assigned will
use the default value in DEC.
2.During the compilation process, gPlatformFinalPcd may be lost, and
the current code cannot selectively assign PCD in DSC by specifying ARCH.
This patch moves gPlatformFinalPcd into datapipe and modifies the
assignment logicto fix this.
Cc: Bob Feng <bob.c.feng@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: yi1 li <yi1.li@intel.com >
Reviewed-by: Bob Feng <bob.c.feng@intel.com >
2022-04-22 13:55:16 +00:00
Tan, Dun
2306555bf9
UefiPayloadPkg: Fix IA32 entry build failure
...
The ObjCopyFlag and EntryOutputDir need to be modified when
building IA32 UniversalPayload Entry
Signed-off-by: Dun Tan <dun.tan@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Guo Dong <guo.dong@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
2022-04-22 02:13:36 +00:00
Bo Chang Ke
a85ae8d964
ShellPkg: Update smbiosview type 9 with SMBIOS 3.5 fields
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3896
update smbiosview type 9 related fileds.
Signed-off-by: Bo Chang Ke <bo-changx.ke@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Zhichao Gao <zhichao.gao@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Zhichao Gao <zhichao.gao@intel.com >
2022-04-22 01:48:09 +00:00
Bo Chang Ke
fdfbf1fdab
MdePkg: Update smbiosview type 9 with SMBIOS 3.5 fields
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3896
update smbiosview type 9 related fileds.
Signed-off-by: Bo Chang Ke <bo-changx.ke@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Zhichao Gao <zhichao.gao@intel.com >
Cc: Dandan Bi <dandan.bi@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2022-04-22 01:48:09 +00:00
Yi Li
b06a007b64
CryptoPkg: Declare PcdEcEnabled in Library consuming OpensslLib
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3679
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3828
Tls/Base/Pei/Smm/RuntimeCryptLib.inf will use OpensslLib,
and the opensslconf.h in openssllib will use PcdEcEnabled,
but it is not declared in the inf file now,
it will cause warnings in some compilers.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Signed-off-by: Yi Li <yi1.li@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-04-21 05:06:37 +00:00
Min Xu
892787fed5
OvmfPkg/OvmfPkgX64: Adjust load sequence of TdxDxe and AmdSevDxe driver
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3904
TdxDxe driver is introduced for Intel TDX feature. Unfortunately, this
driver also breaks boot process in SEV-ES guest. The root cause is in
the PciLib which is imported by TdxDxe driver.
In a SEV-ES guest the AmdSevDxe driver performs a
MemEncryptSevClearMmioPageEncMask() call against the
PcdPciExpressBaseAddress range to mark it shared/unencrypted. However,
the TdxDxe driver is loaded before the AmdSevDxe driver, and the PciLib
in TdxDxe is DxePciLibI440FxQ35 which will access the
PcdPciExpressBaseAddress range. Since the range has not been marked
shared/unencrypted, the #VC handler terminates the guest for trying to
do MMIO to an encrypted region.
Adjusting the load sequence of TdxDxe and AmdSevDxe can fix the issue.
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
SEV-Tested-by: Tom Lendacky <thomas.lendacky@amd.com >
TDX-Tested-by: Min Xu <min.m.xu@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-21 01:17:38 +00:00
Michael Kubacki
6d2baf9dfb
PrmPkg/DxePrmContextBufferLib: Fix unit test GCC compilation errors
...
https://bugzilla.tianocore.org/show_bug.cgi?id=3905
Fixes GCC compilation errors in DxePrmContextBufferLibUnitTest.c.
Cc: Michael Kubacki <mikuback@linux.microsoft.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Ankit Sinha <ankit.sinha@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Ankit Sinha <ankit.sinha@intel.com >
2022-04-20 18:24:32 +00:00
Gerd Hoffmann
532bd4ec38
CryptoPkg/Crt: fix strcpy build on older VS compilers
...
Drop 'restrict' keyword which older visual studio compiler
versions complain about.
Fixes: fab6285a73
("CryptoPkg/CrtLibSupport: fix strcpy")
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-04-20 10:56:03 +00:00
Min Xu
76fda1def3
OvmfPkg: Call CcProbe in SecMain.c instead of TsIsEnabled
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3902
TdIsEnabled() uses the CPUID instruction. At this point, exception
handling is not established and a CPUID instruction will generate
a #VC and cause the booting guest to crash.
CcProbe() checks Ovmf work area to return the guest type. So call
of CcProbe() instead of TdIsEnabled() to fix the above issue.
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-19 01:26:08 +00:00
Min Xu
7012cb73c4
MdePkg: Probe Cc guest in BaseIoLibIntrinsicSev
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3902
Bad IO performance in SEC phase is observed after TDX features was
introduced. (after commit b6b2de8848
- "MdePkg: Support mmio for
Tdx guest in BaseIoLibIntrinsic").
This is because IsTdxGuest() will be called in each MMIO operation.
It is trying to cache the result of the probe in the efi data segment.
However, that doesn't work in SEC, because the data segment is read only
(so the write seems to succeed but a read will always return the
original value), leading to us calling TdIsEnabled() check for every
mmio we do, which is causing the slowdown because it's very expensive.
This patch is to call CcProbe instead of TdIsEnabled in IsTdxGuest.
Null instance of CcProbe always returns CCGuestTypeNonEncrypted. Its
OvmfPkg version returns the guest type in Ovmf work area.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: James Bottomley <James.Bottomley@HansenPartnership.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-19 01:26:08 +00:00
Min Xu
2a7e1e890d
OvmfPkg: Add CcProbeLib in *.dsc
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3902
CcProbeLib is imported in BaseIoLibIntrinsicSev.
OvmfPkg/Library/CcProbeLib is the OvmfPkg version which checks
OvmfWorkArea to return the Cc guest type. It is included
in OvmfPkgX64.dsc and IntelTdx/IntelTdxX64.dsc.
Other .dsc include the MdePkg/Library/CcProbeLibNull because Cc guest
is not supported in those projects.
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: James Bottomley <James.Bottomley@HansenPartnership.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-19 01:26:08 +00:00
Min Xu
2f44d77c68
OvmfPkg: Add CcProbeLib
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3902
This is the OvmfPkg specific CcProbeLib. It checks the Ovmf WorkArea
(PcdOvmfWorkAreaBase) to return the guest type.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: James Bottomley <James.Bottomley@HansenPartnership.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-19 01:26:08 +00:00
Min Xu
74a3eb975d
MdePkg: Add CcProbeLibNull
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3902
CcProbeLib is used to probe the Confidential Computing guest type.
This library is designed to run on SEC / PEI / DXE phases. A null
instance of the library always returns CCGuestTypeNonEncrypted.
A platform specific CcProbeLib will be implemented, for example,
in OvmfPkg.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-19 01:26:08 +00:00
Min Xu
d020ac55b6
OvmfPkg: Replace GUEST_TYPE with CC_GUEST_TYPE
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3902
Replace GUEST_TYPE with CC_GUEST_TYPE which is defined in
MdePkg/Include/ConfidentialComputingGuestAttr.h.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-19 01:26:08 +00:00
Min Xu
3d97733f44
MdePkg: Add CC_GUEST_TYPE in ConfidentialComputingGuestAttr.h
...
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3902
The confidential computing guest type (GUEST_TYPE) was defined in
OvmfPkg/Include/WorkArea.h. Now it is to be moved to
MdePkg/Include/ConfidentialComputingGuestAttr.h and renamed as
CC_GUEST_TYPE.
There are 2 reasons for this change.
1. CC_GUEST_TYPE is a generic definition and will be used in CcProbeLib
which is defined in MdePkg.
2. Based on the latest edk2 coding style:
- First character should be upper case
- Must contain lower case characters
- No white space characters
- Global variable name must start with a 'g'
As the first step CC_GUEST_TYPE is defined in this patch. In the
next patch GUEST_TYPE will be deleted. This is to make sure the
bisect work correctly.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: James Bottomley <jejb@linux.ibm.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Gerd Hoffmann <kraxel@redhat.com >
Cc: Brijesh Singh <brijesh.singh@amd.com >
Cc: Erdem Aktas <erdemaktas@google.com >
Cc: Tom Lendacky <thomas.lendacky@amd.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com >
Signed-off-by: Min Xu <min.m.xu@intel.com >
2022-04-19 01:26:08 +00:00
Ted Kuo
91a03f78ba
IntelFsp2WrapperPkg: SecFspWrapperPlatformSecLibSample support for X64
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3893
1.Added SecFspWrapperPlatformSecLibSample support for X64.
2.Adopted FSPT_ARCH2_UPD in SecFspWrapperPlatformSecLibSample.
3.Moved Fsp.h up one level to be shared across IA32 and X64.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ted Kuo
86a2f3c439
IntelFsp2WrapperPkg: BaseFspWrapperApiLib support for X64
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893
Add Execute64BitCode to execute 64bit code from long mode directly
in PEI 64bit.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ted Kuo
4a6ed7e46a
IntelFsp2WrapperPkg: Adopt FSPM_UPD_COMMON_FSP24 for X64
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893
Adopt FSPM_UPD_COMMON_FSP24 in FspmWrapperPeim to support X64.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ted Kuo
6bec5a66ea
IntelFsp2Pkg: SecFspSecPlatformLibNull support for X64
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893
1.Added SecFspSecPlatformLibNull support for X64.
2.Added X64 support to IntelFsp2Pkg.dsc.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ted Kuo
00aa71ce20
IntelFsp2Pkg: FspSecCore support for X64
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893
1.Added FspSecCore support for X64.
2.Bumped FSP header revision to 7 to indicate FSP 64bit is supported.
3.Corrected few typos.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ted Kuo
d40965b987
IntelFsp2Pkg: Update FSP_GLOBAL_DATA and FSP_PLAT_DATA for X64
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893
Updated FSP_GLOBAL_DATA and FSP_PLAT_DATA structures to support
both IA32 and X64.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ted Kuo
6f219bef55
IntelFsp2Pkg: Add FSPx_ARCH2_UPD support for X64
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893
1.Added FSPx_ARCH2_UPD structures which support both IA32 and X64.
2.Added FSPx_UPD_COMMON_FSP24 structures.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ted Kuo
630df8c86e
IntelFsp2Pkg: X64 compatible changes to support PEI in 64bit
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3893
1.Added EFIAPI to FspNotifyPhasePeimEntryPoint, SwapStack and
PEI_CORE_ENTRY.
2.Treat both MAX_ADDRESS and MAX_UINT32 as invalid address for
FSP global data in FspApiCallingCheck().
3.Changed AsmReadEsp to AsmReadStackPointer.
4.Changed the type of the return value of AsmReadStackPointer
from UINT32 to UINTN.
5.Changed the type of TemporaryMemoryBase, PermenentMemoryBase
and BootLoaderStack from UINT32 to UINTN.
6.Some type casting to pointers are UINT32. Changed them to
UINTN to accommodate both IA32 and X64.
7.Corrected some typos.
Cc: Chasel Chiu <chasel.chiu@intel.com >
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Ashraf Ali S <ashraf.ali.s@intel.com >
Signed-off-by: Ted Kuo <ted.kuo@intel.com >
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com >
2022-04-16 00:18:14 +00:00
Ke, Bo-ChangX
9bf7291d63
ShellPkg: Update smbiosview type 41 with SMBIOS 3.5 fields
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3900
update smbiosview type 41 related fileds.
Signed-off-by: Bo Chang Ke <bo-changx.ke@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Zhichao Gao <zhichao.gao@intel.com >
Reviewed-by: Zhichao Gao <zhichao.gao@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
2022-04-15 03:06:02 +00:00
Guo Dong
4cfb28f12a
UefiPayloadPkg: Fix the build failure
...
When Quite parameter is not provided, its default value would
be "None" instead of "". So update its default value not to
impact the build.
Cc: Ray Ni <ray.ni@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Signed-off-by: Guo Dong <guo.dong@intel.com >
Acked-by: Dun Tan <dun.tan@intel.com >
2022-04-14 19:34:05 +00:00
Michael Kubacki
f3da13461c
CryptoPkg/TlsLibNull: Remove MU_CHANGE comment markers
...
MU_CHANGE tags are used in a different project (Project Mu) to
highlight deviations from Tianocore. Therefore, the comments are
not needed when the changes are present in a Tianocore repository.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-04-14 14:50:20 +00:00
yi1 li
0c901fcc20
CryptoPkg: Make EC source file config-able
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3679
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3828
Use PCD gEfiCryptoPkgTokenSpaceGuid.PcdEcEnabled to config-able
source files list in OpensslLib.inf and OpensslLibCrypto.inf.
If PcdEcEnabled equals to FALSE, this file will not be compiled.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Signed-off-by: yi1 li <yi1.li@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-04-14 03:16:59 +00:00
yi1 li
efc39e65e5
CryptoPkg: Reconfigure OpensslLib to add EC algorithms
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3679
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3828
Reconfigure OpensslLib to add elliptic curve cipher algorithms.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Signed-off-by: yi1 li <yi1.li@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-04-14 03:16:59 +00:00
yi1 li
1a49e2aa3c
CryptoPkg: Add instrinsics to support building ECC on IA32 windows
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3679
This dependency is needed to build openssl lib with ECC ciphers
under IA32 Windows and adds implementation for _allmul and _allshr
instrinsics.
It is taken from Project Mu:
microsoft/mu_basecore@b55b341
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Signed-off-by: yi1 li <yi1.li@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-04-14 03:16:59 +00:00
Michael D Kinney
8a5727c7a8
Maintainers.txt: Add Michael Kubacki as UnitTestFrameworkPkg maintainer
...
Cc: Michael Kubacki <mikuback@linux.microsoft.com >
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Michael Kubacki <mikuback@linux.microsoft.com >
2022-04-13 23:49:08 +00:00
Bob Feng
c411566fad
pip-requirements.txt: Update basetools version to 0.1.17
...
Synced the basetools patch from edk2 repo to
edk2-basetools repo. Update the basetools pip module version
to the latest.
Signed-off-by: Bob Feng <bob.c.feng@intel.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-04-13 00:02:47 +00:00
Gerd Hoffmann
f5508a91e3
CryptoPkg/UnitTest: fix DH testcase
...
openssl 3.0 wants at least 512 bytes, otherwise it throws an error:
error:0280007E:Diffie-Hellman routines::modulus too small
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Gerd Hoffmann
fab6285a73
CryptoPkg/CrtLibSupport: fix strcpy
...
strcpy() returns a pointer to the destination string, AsciiStrCpyS()
does not. So a simple #define does not work. Create a function
instead.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Gerd Hoffmann
03951e5645
CryptoPkg/CrtLibSupport: add off_t
...
Add typedef for off_t.
Will be needed by openssl 3.0.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Gerd Hoffmann
fd5f347c84
CryptoPkg/CrtLibSupport: add MODULESDIR
...
Add dummy MODULESDIR #define
Will be needed by openssl 3.0.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Gerd Hoffmann
2759e42fbc
CryptoPkg/CrtLibSupport: add UINT_MAX
...
Add define for UINT_MAX.
Will be needed by openssl 3.0.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Gerd Hoffmann
58771f4b2d
CryptoPkg/CrtLibSupport: add INT_MIN
...
Add #define for INT_MIN.
Will be needed by openssl 3.0.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Gerd Hoffmann
3b4b49cf00
CryptoPkg/CrtLibSupport: add strstr()
...
Add #define for strstr().
Will be needed by openssl 3.0.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Gerd Hoffmann
4352d115c4
CryptoPkg/CrtLibSupport: add fcntl.h
...
Add fcntl.h header file.
Will be needed by openssl 3.0.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-04-12 14:39:01 +00:00
Feng, Bob C
5576b17363
BaseTools: Fix DevicePath tool build failure issue
...
Fix the DevicePath tool build failure that was introduced by
the fixes: 22130dcd98
("Basetools: turn off gcc12 warning").
Failure cases are:
1. clang 13.1.6 on macOS
2. gcc5.4
Reported-by: Rebecca Cran <rebecca@bsdio.com >
Reported-by: Yuwei Chen <yuwei.chen@intel.com >
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Signed-off-by: Bob Feng <bob.c.feng@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Yuwei Chen <yuwei.chen@intel.com >
Cc: Rebecca Cran <rebecca@bsdio.com >
Reviewed-by: Yuwei Chen <yuwei.chen@intel.com >
2022-04-12 07:01:26 +00:00
Oliver Steffen
12a50c9ce1
NetworkPkg/HttpDxe: Detect HTTP/1.0 servers
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2720
Force connection close before the next request if
the server identifies as version 1.0.
Signed-off-by: Oliver Steffen <osteffen@redhat.com >
Reviewed-by: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com >
2022-04-11 15:12:46 +00:00
Oliver Steffen
753fd319e2
NetworkPkg/HttpDxe: Detect 'Connection: close' header
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2720
Force connection close before the next request if
the server sends the 'Connection: close' header.
Signed-off-by: Oliver Steffen <osteffen@redhat.com >
Reviewed-by: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com >
2022-04-11 15:12:46 +00:00
Oliver Steffen
c43ff5188d
NetworkPkg/HttpDxe: Add ConnectionClose flag fo HTTP_PROTOCOL
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2720
Add ConnectionClose flag to HTTP_PROTOCOL.
This boolean is FALSE by default. If set to TRUE, a reconfigure
of the Http instance is forced on the next request. The flag
is then reset.
Signed-off-by: Oliver Steffen <osteffen@redhat.com >
Reviewed-by: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com >
2022-04-11 15:12:46 +00:00
Oliver Steffen
3974aa539e
NetworkPkg/HttpDxe: Decofigure Tcp6 before reconfiguring
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2720
Check if the state of the HTTP instance is HTTP_STATE_TCP_CONNECTED, or
HTTP_STATE_TCP_CLOSED and de-configure the Tcp6 instance before
configuring it again.
Signed-off-by: Oliver Steffen <osteffen@redhat.com >
Reviewed-by: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com >
2022-04-11 15:12:46 +00:00
Oliver Steffen
38a9afd0fb
NetworkPkg/HttpDxe: Decofigure Tcp4 before reconfiguring
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2720
Check if the state of the HTTP instance is HTTP_STATE_TCP_CONNECTED, or
HTTP_STATE_TCP_CLOSED and de-configure the Tcp4 instance before
configuring it again.
Signed-off-by: Oliver Steffen <osteffen@redhat.com >
Reviewed-by: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com >
2022-04-11 15:12:46 +00:00
Heng Luo
35a4b63247
NetworkPkg: Add PCDs for HTTP DNS RetryCount and RetryInterval
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3889
Currently the HTTP DNS Retry Interval is 2 second and no retry attempt.
If DNS response can't arrive in 2 second, the DNS request is failed,
and then HTTP boot is failed.
In order to resolve this issue, Add PCDs to support RetryCount
and RetryInterval configured in Platform.
Cc: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Cc: Fu Siyuan <siyuan.fu@intel.com >
Cc: Wu Jiaxin <jiaxin.wu@intel.com >
Signed-off-by: Heng Luo <heng.luo@intel.com >
Reviewed-by: Maciej Rabeda <maciej.rabeda@linux.intel.com >
2022-04-11 15:12:46 +00:00
Guo Dong
dab96cf02e
UefiPayloadPkg: Add --quiet argument to Universal Payload build script
...
Signed-off-by: Sean Rhodes <sean@starlabs.systems >
Reviewed-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
2022-04-10 21:00:54 +00:00
Li, Zhihao
63e155f24d
UefiPayloadPkg: Add dependency of VariableSmm driver.
...
REF? https://bugzilla.tianocore.org/show_bug.cgi?id=3882
UefiCpuPkg define a new Protocol with the new services
SmmWaitForAllProcessor(), which can be used by SMI handler
to optionally wait for other APs to complete SMM rendezvous in
relaxed AP mode.
VariableSmm driver need use SmmCpuRendezvousLib, So add
SmmCpuRendezvousLib dependency in UefiPayloadPkg which use
VariableSmm driver.
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Cc: Siyuan Fu <siyuan.fu@intel.com >
Signed-off-by: Zhihao Li <zhihao.li@intel.com >
Reviewed-by: Guo Dong <guo.dong@intel.com >
2022-04-10 20:33:27 +00:00
Guo Dong
676084303d
UefiPayloadPkg: Support IA32 Build
...
The payload entry module should support to build as IA32 image
beside X64 image so that it could work with 32bit bootloaders.
This patch adds a option build parameter for arch selection.
Cc: Ray Ni <ray.ni@intel.com >
Cc: Benjamin You <benjamin.you@intel.com >
Cc: Sean Rhodes <sean@starlabs.systems >
Signed-off-by: Guo Dong <guo.dong@intel.com >
Reviewed-by: Sean Rhodes <sean@starlabs.systems >
2022-04-10 19:36:44 +00:00