Chao Li
76bf716a7a
MdePkg: Add LoongArch LOONGARCH64 binding
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 sections in MdePkg.dec and LOONGARCH64 ProcessorBind.h
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Co-authored-by: Baoqi Zhang <zhangbaoqi@loongson.cn >
Co-authored-by: Dongyan Qian <qiandongyan@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
b1b5177a0c
.pytool: Add LoongArch64 architecture on LoongArch64 EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LoongArch64 architecture on LoongArch64 EDK2 CI testing.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
ab9768cd46
.azurepipelines: Add LoongArch64 architecture on LoongArch64 EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LoongArch64 architecture on LoongArch64 EDK2 CI.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
bcdafe1179
BaseTools: Enable LoongArch64 architecture for LoongArch64 EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
EDK CI for LoongArch64 architecture
Enable LoongArch64 architecture for LoongArch64 EDK2 CI testing.
Cc: Bob Feng <bob.c.feng@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Yuwei Chen <yuwei.chen@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
114e6075b6
BaseTools: Add LoongArch64 binding.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LoongArch64 ProcessorBin.h and add LoongArch to Makefiles.
Cc: Bob Feng <bob.c.feng@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Yuwei Chen <yuwei.chen@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Co-authored-by: Baoqi Zhang <zhangbaoqi@loongson.cn >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2022-10-14 02:16:33 +00:00
Chao Li
c53807cb7b
BaseTools: Updated build tools to support new LoongArch.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Python code changes for building EDK2 LoongArch platform.
Cc: Bob Feng <bob.c.feng@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Yuwei Chen <yuwei.chen@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Co-authored-by: Baoqi Zhang <zhangbaoqi@loongson.cn >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2022-10-14 02:16:33 +00:00
Chao Li
cb4f1dfcc1
BaseTools: Updated for GCC5 tool chain for LoongArch platfrom.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
BaseTools define template files changes for building EDK2 LoongArch
platform.
Cc: Bob Feng <bob.c.feng@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Yuwei Chen <yuwei.chen@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Co-authored-by: Dongyan Qian <qiandongyan@loongson.cn >
Co-authored-by: Baoqi Zhang <zhangbaoqi@loongson.cn >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2022-10-14 02:16:33 +00:00
Chao Li
1aa311d175
BaseTools: Update GenFw/GenFv to support LoongArch platform.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
C code changes for building EDK2 LoongArch platform.
For definitions of PE/COFF and LOONGARCH relocation types, see the
"Machine Types" and "Basic Relocation Types" sections of this URL for
LOONGARCH values:
https://docs.microsoft.com/en-us/windows/win32/debug/pe-format
Cc: Bob Feng <bob.c.feng@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Yuwei Chen <yuwei.chen@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Co-authored-by: Dongyan Qian <qiandongyan@loongson.cn >
Co-authored-by: Baoqi Zhang <zhangbaoqi@loongson.cn >
Co-authored-by: Yang Zhou <zhouyang@loongson.cn >
Co-authored-by: Xiaotian Wu <wuxiaotian@loongson.cn >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2022-10-14 02:16:33 +00:00
Chao Li
082b563fc4
.python/SpellCheck: Add "Loongson" and "LOONGARCH" to "words" section
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add Loongson and LOONGARCH to "words" section in cspell.base.yaml file
to avoid spelling check error.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
10daf3ee24
MdeModulePkg: Use LockBoxNullLib for LOONGARCH64
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
LoongArch doesn't have SMM by now.
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
23d873f4cf
MdePkg/DxeServicesLib: Add LOONGARCH64 architecture
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture to MdePkg/DxeServiceLib.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
6e1ddbab8d
UnitTestFrameworkPkg: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture to UnitTestFramworkPkg for LOONGARCH64 EDK2
CI.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
78b081334e
ShellPkg: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture to ShellPkg for EDK2 CI testing.
Cc: Ray Ni <ray.ni@intel.com >
Cc: Zhichao Gao <zhichao.gao@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Zhichao Gao <zhichao.gao@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
711ee4103a
SecurityPkg: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture to SecurityPkg for EDK2 CI testing.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
d2c0d52ed6
MdePkg/Include: Add LOONGARCH related definitions EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
HTTP/PXE boot LOONGARCH64 related definitions for EDK2 CI.
For the LOONGARCH values, please seeing following URL section
"Processor Architecture Types":
https://www.iana.org/assignments/dhcpv6-parameters/dhcpv6-parameters.xhtml
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
c5f4b4fd03
CryptoPkg: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture for EDK2 CI testing.
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: Chao Li <lichao@loongson.cn >
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
ee2ea7868a
NetworkPkg/HttpBootDxe: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH architecture for EDK2 CI testing.
Cc: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Cc: Jiaxin Wu <jiaxin.wu@intel.com >
Cc: Siyuan Fu <siyuan.fu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Jiaxin Wu <jiaxin.wu@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
ad8f2b7251
NetworkPkg: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture for EDK2 CI testing.
Cc: Maciej Rabeda <maciej.rabeda@linux.intel.com >
Cc: Jiaxin Wu <jiaxin.wu@intel.com >
Cc: Siyuan Fu <siyuan.fu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Jiaxin Wu <jiaxin.wu@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
2067672ded
FmpDevicePkg: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture for EDK2 CI testing.
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Cc: Wei6 Xu <wei6.xu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2022-10-14 02:16:33 +00:00
Chao Li
d8c073c89b
FatPkg: Add LOONGARCH64 architecture for EDK2 CI.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
Add LOONGARCH64 architecture for EDK2 CI testing.
Cc: Ray Ni <ray.ni@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2022-10-14 02:16:33 +00:00
Chao Li
e25963d458
MdePkg: Added LoongArch jump buffer register definition to MdePkg.ci.yaml
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
If the new Arch register is defined in BaseLib.h when running
the CI tests, it will give an ECC check error. Add the
LoongArch register defined in the ExceptionList field to make
the CI ECC check pass.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Chao Li
0371178d0b
MdePkg: Added file of DebugSupport.h to MdePkg.ci.yaml
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4053
DebugSupport.h is all defined by UEFI Spec, most of the code
doesn't fit EDKII coding style, add it to IgnoreFiles field to
make CI ECC check pass.
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Signed-off-by: Chao Li <lichao@loongson.cn >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-14 02:16:33 +00:00
Gua Guo
5bd2dbc698
UefiPayloadPkg: Remove deprecate Crypto Service
...
REF : https://bugzilla.tianocore.org/show_bug.cgi?id=4096
TDES and ARC4 services are deprecated so set it as disable.
Cc: Guo Dong <guo.dong@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Reviewed-by: James Lu <james.lu@intel.com >
Signed-off-by: Gua Guo <gua.guo@intel.com >
2022-10-13 10:43:52 +08:00
Qi Zhang
e7d7f02c8e
CryptoPkg: add Unit Test for X509 new function.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4082
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: Qi Zhang <qi1.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-12 06:38:15 +00:00
Qi Zhang
22745df666
CryptoPkg: add new X509 function to Crypto Service.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4082
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: Qi Zhang <qi1.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-12 06:38:15 +00:00
Qi Zhang
8ecae3d641
CryptoPkg: add new X509 function.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4082
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: Qi Zhang <qi1.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-12 06:38:15 +00:00
Qi Zhang
190f77f8f4
CryptoPkg: add new X509 function definition.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4082
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: Qi Zhang <qi1.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-12 06:38:15 +00:00
Qi Zhang
0371032289
CryptoPkg: add unit test for EC key interface.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4102
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: Qi Zhang <qi1.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-12 05:56:00 +00:00
Qi Zhang
69a50a249b
CryptoPkg: Add EC key interface to DXE and protocol
...
The implementation provide EC key interface for EFI
driver nad EFI BaseCrypt protocol.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4102
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: Qi Zhang <qi1.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-12 05:56:00 +00:00
Qi Zhang
f21a1d48fe
CryptoPkg: Add EC key retrieving and signature interface.
...
This patch is used to retrieve EC key from PEM and X509 and
carry out the EC-DSA signature and verify it.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4102
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: Qi Zhang <qi1.zhang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-12 05:56:00 +00:00
Dimitrije Pavlov
f80580f56b
OvmfPkg/VirtioNetDxe: Check ChildHandle argument in GetControllerName
...
Per the UEFI specification, a device driver implementation should return
EFI_UNSUPPORTED if the ChildHandle argument in
EFI_COMPONENT_NAME2_PROTOCOL.GetControllerName() is not NULL.
Signed-off-by: Dimitrije Pavlov <Dimitrije.Pavlov@arm.com >
Reviewed-by: Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com >
Reviewed-by: Sunny Wang <sunny.wang@arm.com >
2022-10-10 10:17:11 +00:00
Yi Li
8db4e9f9a0
CryptoPkg: Add new Tls APIs to DXE and protocol
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3892
The implementation provides new Tls library functions
for Crypto EFI Driver and Protocol.
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: Yi Li <yi1.li@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-10 06:29:51 +00:00
Yi Li
bb78d969b7
CryptoPkg: Extend Tls function library
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3892
1. TlsSetSignatureAlgoList(): Configure the list of TLS signature algorithms
that should be used as part of the TLS session establishment.
This is needed for some WLAN Supplicant connection establishment flows
that allow only specific TLS signature algorithms to be used, e.g.,
Authenticate and Key Managmenet (AKM) suites that are SUITE-B compliant.
2. TlsSetEcCurve(): Configure the Elliptic Curve that should be used for
TLS flows the use cipher suite with EC,
e.g., TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384.
This is needed for some WLAN Supplicant connection establishment flows
that allow only specific TLS signature algorithms to be used,
e.g., Authenticate and Key Managmenet (AKM) suites that are SUITE-B compliant.
3. TlsShutdown():
Shutdown the TLS connection without releasing the resources,
meaning a new connection can be started without calling TlsNew() and
without setting certificates etc.
4. TlsGetExportKey(): Derive keying material from a TLS connection using the
mechanism described in RFC 5705 and export the key material (needed
by EAP methods such as EAP-TTLS and EAP-PEAP).
5. TlsSetHostPrivateKeyEx(): This function adds the local private key
(PEM-encoded or PKCS#8 or DER-encoded private key) into the specified
TLS object for TLS negotiation. There is already a similar function
TlsSetHostPrivateKey(), the new Ex function introduces a new parameter
Password, set Password to NULL when useless.
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: Yi Li <yi1.li@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-10 06:29:51 +00:00
Yi Li
cafc573ac0
MdePkg: Add Tls configuration related define
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3892
Consumed by TlsSetEcCurve and TlsSetSignatureAlgoList.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Signed-off-by: Yi Li <yi1.li@intel.com >
Acked-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-10 06:29:51 +00:00
Yuan Yu
3c9e2f239a
CryptoPkg: Fix integer overflow
...
SECSPERDAY is 86400 which exceeds the limit of a UINT16 which is 65536.
Therefore DayRemainder cannot use UINT16. This patch makes it UINT32.
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org >
Cc: Jordan Justen <jordan.l.justen@intel.com >
Cc: Laszlo Ersek <lersek@redhat.com >
Cc: Anthony Perard <anthony.perard@citrix.com >
Cc: Julien Grall <julien@xen.org >
Signed-off-by: Yuan Yu <yuanyu@google.com >
Reviewed-by: Ard Biesheuvel <ardb+tianocore@kernel.org >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2022-10-10 00:58:26 +00:00
Foster Nong
de103f1981
MdeModulePkg: Handle InitialVFs=0 case for SR-IOV
...
Per the section 3.3.5 SR-IOV spec v1.1, InitialVFs (0ch).
InitialVFs indicates to SR-PCIM the number of VFs that are initially associated with the PF.
The minimum value of InitialVFs is 0.
Below code is used to calculate SR-IOV reserved bus number,
if InitialVFs =0, it maybe calculate the wrong bus number in this case.
LastVF = PFRid + FirstVFOffset + (PciIoDevice->InitialVFs - 1) * VFStride
we can fix it with below code:
if (PciIoDevice->InitialVFs == 0) {
PciIoDevice->ReservedBusNum = 0;
} else {
PFRid = EFI_PCI_RID (Bus, Device, Func);
LastVF = PFRid + FirstVFOffset + (PciIoDevice->InitialVFs - 1) * VFStride;
//
// Calculate ReservedBusNum for this PF
//
PciIoDevice->ReservedBusNum = (UINT16)(EFI_PCI_BUS_OF_RID (LastVF) - Bus + 1);
//
// Calculate ReservedBusNum for this PF
//
PciIoDevice->ReservedBusNum = (UINT16)(EFI_PCI_BUS_OF_RID (LastVF) - Bus + 1);
}
https://bugzilla.tianocore.org/show_bug.cgi?id=4069
Signed-off-by: Foster Nong <foster.nong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
2022-10-08 08:58:05 +00:00
Zhihao Li
4364d66168
UefiCpuPkg: Reset a parameter when BSP Exit in CPU relaxed mode.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4083
In CPU relaxed mode, it doesn't reset the value of
mSmmMpSyncData->AllApArrivedWithException when BSP exit smm mode.
So this patch will reset this variable.
Cc: Eric Dong <eric.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Signed-off-by: Zhihao Li <zhihao.li@intel.com >
Reviewed-by: Abner Chang <abner.chang@amd.com >
2022-10-08 06:55:46 +00:00
Tan, Dun
a670f12a74
UefiCpuPkg/CpuExceptionHandlerLib: Code optimization to allow bigger stack
...
This commit is a code optimization to allow bigger seperate stack size in
ArchSetupExceptionStack. In previous code logic, CPU_STACK_ALIGNMENT bytes
will be wasted if StackTop is already CPU_STACK_ALIGNMENT aligned.
Signed-off-by: Dun Tan <dun.tan@intel.com >
Cc: Eric Dong <eric.dong@intel.com >
Reviewed-by: Ray Ni <ray.ni@intel.com >
Cc: Rahul Kumar <rahul1.kumar@intel.com >
Reviewed-by: Abner Chang <abner.chang@amd.com >
2022-10-08 05:45:22 +00:00
Gerd Hoffmann
406ad0582a
OvmfPkg: rename QemuBootOrderNNNN to VMMBootOrderNNNN
...
While the actual implementation (using qemu fw_cfg) is qemu-specific,
the idea to store the boot order as configured by the VMM in EFI
variables is not. So lets give the variables a more neutral name while
we still can (i.e. no stable tag yet with the new feature).
While being at it also fix the NNNN format (use %x instead of %d for
consistency with BootNNNN).
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Ard Biesheuvel <ardb@kernel.org >
2022-10-07 18:14:05 +00:00
Gerd Hoffmann
3361336607
Revert "OvmfPkg/Microvm: no secure boot"
...
This reverts commit 60d55c4156
.
Now that we have stateless secure boot support (which doesn't
need SMM) in OVMF we can enable the build option for MicroVM.
Bring it back by reverting the commit removing it.
Also add the new PlatformPKProtectionLib.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Ard Biesheuvel <ardb@kernel.org >
2022-10-07 18:14:05 +00:00
Gerd Hoffmann
8916a4f67f
OvmfPkg/Microvm: add SECURE_BOOT_FEATURE_ENABLED
...
Compiler flag is needed to make (stateless) secure boot be actually
secure, i.e. restore EFI variables from ROM on reset.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Ard Biesheuvel <ardb@kernel.org >
2022-10-07 18:14:05 +00:00
Gerd Hoffmann
9e6b552b4c
OvmfPkg/PciHotPlugInitDxe: reserve more mmio space
...
In case the 64-bit pci mmio window is larger than the default size
of 32G be generous and hand out larger chunks of address space for
prefetchable mmio bridge windows.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Ard Biesheuvel <ardb@kernel.org >
Reviewed-by: Laszlo Ersek <lersek@redhat.com >
2022-10-07 18:14:05 +00:00
Gerd Hoffmann
ecb778d0ac
OvmfPkg/PlatformInitLib: dynamic mmio window size
...
In case we have a reliable PhysMemAddressWidth use that to dynamically
size the 64bit address window. Allocate 1/8 of the physical address
space and place the window at the upper end of the address space.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Ard Biesheuvel <ardb@kernel.org >
2022-10-07 18:14:05 +00:00
Gerd Hoffmann
bbda386d25
OvmfPkg/PlatformInitLib: detect physical address space
...
Try detect physical address space, when successful use it.
Otherwise go continue using the current guesswork code path.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Ard Biesheuvel <ardb@kernel.org >
2022-10-07 18:14:05 +00:00
Gerd Hoffmann
8f9ef9c9a0
OvmfPkg/PlatformInitLib: qemu cpuid physbits detection
...
Add some qemu specific quirks to PlatformAddressWidthFromCpuid()
to figure whenever the PhysBits value returned by CPUID is
something real we can work with or not.
See the source code comment for details on the logic.
Also apply some limits to the address space we are going to use:
* Place a hard cap at 47 PhysBits (128 TB) to avoid using addresses
which require 5-level paging support.
* Cap at 40 PhysBits (1 TB) in case the CPU has no support for
gigabyte pages, to avoid excessive amounts of pages being
used for page tables.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Reviewed-by: Ard Biesheuvel <ardb@kernel.org >
2022-10-07 18:14:05 +00:00
Jeff Brasen
5ff7d712d4
MdeModulePkg/UefiBootManagerLib: Add Disk Info support for Ufs
...
Add support for getting disk info from UFS devices.
Signed-off-by: Jeff Brasen <jbrasen@nvidia.com >
Reviewed-by: Zhichao Gao <zhichao.gao@intel.com >
2022-10-06 17:38:41 +00:00
Michael Kubacki
710f83b79d
.azurepipelines: Add SourceLevelDebugPkg to CI
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4091
Adds SourceLevelDebugPkg to the "OTHER" CI matrix job so it is built
in edk2 CI.
Cc: Sean Brogan <sean.brogan@microsoft.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Hao A Wu <hao.a.wu@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Hao A Wu <hao.a.wu@intel.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-06 02:09:28 +00:00
Michael Kubacki
cf01fdd5d7
SourceLevelDebugPkg: Add package CI YAML file
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4091
Adds the package as a supported package to .pytool/CISettings.py
and adds a CI YAML for the package so it can be run in CI.
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Hao A Wu <hao.a.wu@intel.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-06 02:09:28 +00:00
Michael Kubacki
d6d4a81f8a
SourceLevelDebugPkg: Fix spelling errors
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4091
Fixes spelling errors in the package so the SpellCheck CI plugin can
be enabled.
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Hao A Wu <hao.a.wu@intel.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2022-10-06 02:09:28 +00:00
Chasel Chiu
1bd2ff1866
IntelFsp2WrapperPkg: Remove CI exception of PlatformMultiPhaseLib.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4092
Duplicate library class header issue will be resolved and CI
exception for FspWrapperPlatformMultiPhaseLib should be removed too.
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com >
Cc: Star Zeng <star.zeng@intel.com >
Cc: Michael Kubacki <michael.kubacki@microsoft.com >
Signed-off-by: Chasel Chiu <chasel.chiu@intel.com >
Reviewed-by: Michael Kubacki <michael.kubacki@microsoft.com >
2022-10-05 04:13:53 +00:00