summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* StandaloneMmPkg/MmIpl: Create standalone MM foundation related HOBsHongbin1 Zhang2024-08-284-1/+494
| | | | | | | | | | | | | | | | Create the HobList which included the HOBs Standalone MM foundation needed, it included communication buffer HOB, StandaloneMm Core module HOB and StandaloneMm Core FV HOB Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
* StandaloneMmPkg/MmIpl: Dispatch StandaloneMm drivers in MMHongbin1 Zhang2024-08-282-0/+44
| | | | | | | | | | | | | | | MmIpl will issue a SWSMI by MM communicate to call gEventMmDispatchGuid handler to dispatch all StandaloneMm drivers Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
* StandaloneMmPkg/MmIpl: Install end of PEI notify PPIHongbin1 Zhang2024-08-283-0/+76
| | | | | | | | | | | | | | | Install end of PEI notify PPI for issue gEfiMmEndOfPeiProtocol Handler in MM Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
* StandaloneMmPkg/MmIpl: Install MmCommunicationPpiHongbin1 Zhang2024-08-283-1/+148
| | | | | | | | | | | | | | | Install MmCommunicationPpi under PEI stage, PEIM could use this PPI to communicate with MM handler Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
* StandaloneMmPkg/MmIpl: load MM Core and execute MM Core in MM RAMHongbin1 Zhang2024-08-284-0/+350
| | | | | | | | | | | | | | | StandaloneMmIplPei will search the MM Core driver in all FV and relocate it to MM RAM, and enter MM Core entrypoint to run MM Core. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
* StandaloneMmPkg/MmIpl: build MM communication buffer HOBHongbin1 Zhang2024-08-284-0/+83
| | | | | | | | | | | | | | | MM communication buffer HOB data is for StandaloneMm Core and MM communicate DXE driver. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
* StandaloneMmPkg/MmIpl: StandaloneMmIplPei driver entrypointHongbin1 Zhang2024-08-284-0/+92
| | | | | | | | | | | | | | | StandaloneMmIplPei driver entrypoint for adding StandaloneMm Ipl feature code under PEI stage. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
* MdeModulePkg/SmmCommunicationBufferDxe: Re-use FixedCommBufferZhang Hongbin2024-08-282-4/+20
| | | | | | | | | | | SmmCommunicationBufferDxe need to re-use FixedCommBuffer from MmCommBuffer HOB which created under PEI stage. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com>
* StandaloneMmPkg: Create some notification of protocol and EventDun Tan2024-08-283-11/+301
| | | | | | | | | | | | Create the notifications of some protocols and event that the Standalone Mm requires in MmCommunicationDxe: gEfiDxeMmReadyToLockProtocolGuid gEfiEventExitBootServicesGuid gEfiEventVirtualAddressChangeGuid gEfiEndOfDxeEventGroupGuid gEfiEventReadyToBootGuid Signed-off-by: Dun Tan <dun.tan@intel.com>
* StandaloneMmPkg: Install gEfiMmCommunicationProtocolGuidDun Tan2024-08-283-1/+83
| | | | | | | Install gEfiMmCommunicationProtocolGuid instance in the MmCommunicationDxe driver. Signed-off-by: Dun Tan <dun.tan@intel.com>
* StandaloneMmPkg: Install gEfiMmCommunication2ProtocolGuidDun Tan2024-08-283-0/+260
| | | | | | | Install gEfiMmCommunication2ProtocolGuid in the MmCommunicationDxe driver. Signed-off-by: Dun Tan <dun.tan@intel.com>
* StandaloneMmPkg: Add a new MmCommunicationDxe driverDun Tan2024-08-284-0/+89
| | | | | | | | | | Add a new MmCommunicationDxe driver. The driver is to: 1.Install gEfiMmCommunication2ProtocolGuid 2.Install gEfiMmCommunicationProtocolGuid 3.Create the notifications of some protocols and event that the Standalone Mm requires Signed-off-by: Dun Tan <dun.tan@intel.com>
* StandaloneMmPkg: Create null instance for MmPlatformHobProducerLibDun Tan2024-08-283-0/+96
| | | | | | | Create null instance MmPlatformHobProducerLibNull.inf for MmPlatformHobProducerLib. Signed-off-by: Dun Tan <dun.tan@intel.com>
* UefiCpuPkg: Enable MmUnblockMemoryLibxieyuanh2024-08-281-0/+1
| | | | | | | | | | | | | Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Signed-off-by: Yuanhao Xie <yuanhao.xie@intel.com>
* UefiCpuPkg: Add MM Unblock Page Libraryxieyuanh2024-08-282-0/+128
| | | | | | | | | | | | | | | | | | | | | | | | This library provides an interface to request non-MMRAM pages to be mapped/unblocked from inside MM environment. For MM modules that need to access areas outside of MMRAMs, the agents responsible for setting up these regions must use this API to enable access to these memory areas from within MM. During the IPL, when RestrictedMemoryAccess is enabled, this unblocked memory is specifically used to create a BuildResourceHob, which allocates storage for the SMM accessible DRAM (non-MMIO) range. Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Signed-off-by: Yuanhao Xie <yuanhao.xie@intel.com>
* StandaloneMmPkg/StandaloneMmPkg.ci.yaml: Add UefiCpuPkg dependencyJiaxin Wu2024-08-281-1/+3
| | | | | | | | | | | | | | | | StandaloneMmPkg need to use header file defined under UefiCpuPkg to support StandaloneMm features. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Star Zeng <star.zeng@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com> Acked-by: Jiaxin Wu <jiaxin.wu@intel.com>
* StandaloneMmPkg/StandaloneMmPkg.dec: Add gEventMmDispatchGuidJiaxin Wu2024-08-281-0/+3
| | | | | | | | | | | | | | | | | MmIpl shall use gEventMmDispatchGuid to initialize EFI_MM_COMMUNICATE_HEADER structure, and then communicate with MmCore to dispatch all StandaloneMm drivers in SMM environment. Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Co-authored-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Co-Authored-by: Ray Ni <ray.ni@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Star Zeng <star.zeng@intel.com> Co-Authored-by: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* StandaloneMmPkg: Add MmPlatformHobProducerLib library classDun Tan2024-08-282-0/+57
| | | | | | | | | | | | | | | | | CreateMmPlatformHob() is defined in the MmPlatformHobProducerLib library class. The function is for StandaloneMm IPL to create all Platform specific HOBs that required by the Standalone MM env. Signed-off-by: Dun Tan <dun.tan@intel.com> Co-authored-by: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Co-authored-by: Ray Ni <ray.ni@intel.com> Cc: Sami Mujawar <sami.mujawar@arm.com> Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Star Zeng <star.zeng@intel.com> Cc: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* UefiCpuPkg: Add ACPI S3 Enable HOB definitionJiaxin Wu2024-08-282-0/+37
| | | | | | | | | | | | | | | This HOB indicates to x86 standalone MM whether S3 is enabled. The value shall match with the PcdAcpiS3Enable. Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Co-Authored-by: Ray Ni <ray.ni@intel.com> Cc: Rahul Kumar <rahul1.kumar@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* UefiCpuPkg: Add MM CPU Sync Config definitionsJiaxin Wu2024-08-282-0/+56
| | | | | | | | | | | | | | | MM CPU Sync Config controls how BSP synchronizes with APs in x86 SMM environment. Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Co-authored-by: Ray Ni <ray.ni@intel.com> Cc: Rahul Kumar <rahul1.kumar@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* UefiCpuPkg: Add MM Profile related definitionsJiaxin Wu2024-08-282-0/+38
| | | | | | | | | | | | Signed-off-by: Jiaxin Wu <jiaxin.wu@intel.com> Co-authored-by: Ray Ni <ray.ni@intel.com> Cc: Rahul Kumar <rahul1.kumar@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* UefiCpuPkg: Add Unblock Region HOB definitionYuanhao Xie2024-08-282-0/+45
| | | | | | | | | | | | | | | Add Unblock Region HOB which defines the GUIDed HOB that describes the memory region to be unblocked in MM environment. Signed-off-by: Yuanhao Xie <yuanhao.xie@intel.com> Co-authored-by: Jiaxin Wu <jiaxin.wu@intel.com> Co-authored-by: Ray Ni <ray.ni@intel.com> Cc: Rahul Kumar <rahul1.kumar@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com>
* MdeModulePkg/MdeModulePkg.dec: Add PcdMmCommBufferPages PCDHongbin1 Zhang2024-08-281-0/+4
| | | | | | | | | | | | | | PcdMmCommBufferPages is to specify the page count allocated for the MM communication buffer. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Co-authored-by: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Co-authored-by: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* MdeModulePkg: Add MM Communication Buffer definitionHongbin1 Zhang2024-08-282-0/+66
| | | | | | | | | | | | | | | | | | | | | The MM communicate buffer facilitates data sharing between non-MM and MM code. The MM IPL code allocates a "fixed" runtime type memory as the MM communication buffer, and communicates its address and size to MM Core via MmCommBuffer GUIDed HOB. Here, "fixed" implies that the buffer's location remains constant throughout the boot process. Data is exchanged between the MM Communication PPI/Protocol and a software MMI handler using this fixed MM communication buffer. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Co-authored-by: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Co-authored-by: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* MdePkg/MdePkg.dec: Add gEfiMmEndOfPeiProtocol definitionJiaxin Wu2024-08-281-0/+4
| | | | | | | | | | | | | | | | | | | This protocol is defined at PI Spec, Vol 4, section 4. It's a MM Protocol published by a standalone MM Foundation code if MM Foundation is loaded in PEI phase. This protocol should be installed immediately after DXE IPL installs EFI_PEI_END_OF_PEI_PHASE_PPI. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Co-authored-by: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang.liu@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Wei6 Xu <wei6.xu@intel.com> Cc: Dun Tan <dun.tan@intel.com> Cc: Yuanhao Xie <yuanhao.xie@intel.com>
* IntelFsp2Pkg: Align FSP global data pointer for X64 buildHongbin1 Zhang2024-08-282-9/+9
| | | | | | | | | | | | | When it used 32 bits for set FSP global data pointer under X64 build, it should get FSP global data pointer with 32 bits data under X64 build. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Chasel Chiu <chasel.chiu@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Duggapu Chinni B <chinni.b.duggapu@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Ted Kuo <ted.kuo@intel.com> Cc: Ashraf Ali S <ashraf.ali.s@intel.com>
* UefiPayloadPkg: Update UefiPayload driver for FDT support.Linus Liu2024-08-289-258/+325
| | | | | | | | | | REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4786 Add FDT detection and comsume FDT when needed. Move some x86 specific function in the x86 folder. Create HandOffHob via FDT memory node. Signed-off-by: Linus Liu <linus.liu@intel.com>
* UefiPayloadPkg: Update PayloadLoader to suport FDT.Linus Liu2024-08-286-29/+855
| | | | | | | | | REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4786 Create FDT nodes (reserved-memory, serial, pci-rb, options) in FdtPpiNotifyCallback function right after gEfiEndOfPeiSignalPpiGuid. Signed-off-by: Linus Liu <linus.liu@intel.com>
* UefiPayloadPkg: Add FDT Paser relative LIBs.Linus Liu2024-08-2811-0/+2622
| | | | | | | | | REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4786 Add FDTParser and CustomFdtNodePaser to retrive all FDT node and create the relate hobs. Signed-off-by: Linus Liu <linus.liu@intel.com>
* UefiPayloadPkg: Support Debug function when Hob was not available.Linus Liu2024-08-288-8/+97
| | | | | | | | | REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4786 Initialize mUartInfo with PCD for debug message when Hob was not available. Signed-off-by: Linus Liu <linus.liu@intel.com>
* UefiPayloadPkg: Addd header files for FDT structure and function.Linus Liu2024-08-287-0/+251
| | | | | | | | REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4786 Add Library header, DeviceTree hob header and PCD definitions. Signed-off-by: Linus Liu <linus.liu@intel.com>
* MdePkg: Fix build error after enable FDT support.Linus Liu2024-08-281-2/+5
| | | | | | | | | REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4786 Disable some compiling warnings caused by submodule code. Those can be removed later once issues fixed by submodule owner. Signed-off-by: Linus Liu <linus.liu@intel.com>
* MdePkg/BaseFdtLib: Add FdtNodeOffsetByCompatible()Nhi Pham2024-08-282-0/+37
| | | | | | | This adds FdtNodeOffsetByCompatible() to support finding the offset of the first node with a given 'compatible' value after an offset. Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com>
* OvmfPkg/LoongArchVirt: Clear the PGD series registersChao Li2024-08-281-0/+6
| | | | | | | | | | | | Since the PGD series registers are in an unknown state when reset, some simulators will hang when restarting if these registers are not cleared, so they are cleared in this patch. Cc: Ard Biesheuvel <ardb+tianocore@kernel.org> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Bibo Mao <maobibo@loongson.cn> Signed-off-by: Chao Li <lichao@loongson.cn>
* Maintainers.txt: Cleanup inactive maintainers.Nate DeSimone2024-08-281-35/+0
| | | | | | | | | | | | | | The following individuals are no longer active maintainers: - Wenxing Hou - Zhichao Gao - Chan Laura - Catharine West Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Andrew Fish <afish@apple.com> Cc: Leif Lindholm <quic_llindhol@quicinc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com>
* ArmPlatformPkg: Initialize Serial Port Before WritingOliver Smith-Denny2024-08-282-0/+8
| | | | | | | | | | | | | | | | | PrePeiCore and Sec directly write the firmware version to the serial port. They relies on another component to initialize the serial port, however in certain configurations (such as release builds that don't use a DebugLib that initializes the serial port), the serial port can be uninitialized at this point, causing a crash when SerialPortWrite is called here. This patch updates PrePeiCore and Sec to call SerialPortInitialize before calling SerialPortWrite directly, which follows the pattern of other serial port writes. It is accepted to call the initialization routine multiple times, it is supposed to dump out if the serial port is already initialized. Signed-off-by: Oliver Smith-Denny <osde@linux.microsoft.com>
* Maintainers.txt: Remove Susovan MohapatraNate DeSimone2024-08-281-2/+0
| | | | | | | | | Susovan is no longer an active contributor. Signed-off-by: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Andrew Fish <afish@apple.com> Cc: Leif Lindholm <quic_llindhol@quicinc.com> Cc: Michael D Kinney <michael.d.kinney@intel.com>
* IntelFsp2Pkg: Correcting Data Region Length of MCUD sectionAravind P R2024-08-272-11/+10
| | | | | | | | | | | | | REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4793 MCUD Data Region Length(DATA_LEN_OF_MCUD) pushed to stack is incorrect for 64-bit. The Data occupied by MCUD section is 32 bytes in 64-bit instead of 16 bytes in 32-bit. This commit inputs the correct the Data Region Length for the MCUD Section and also corrects the code that retrieves this data. Signed-off-by: Aravind P R <aravind.p.r@intel.com>
* GitHub Action: Bump github/issue-labeler from 3.1 to 3.4dependabot[bot]2024-08-271-1/+1
| | | | | | | | | | | | | | Bumps [github/issue-labeler](https://github.com/github/issue-labeler) from 3.1 to 3.4. - [Release notes](https://github.com/github/issue-labeler/releases) - [Commits](https://github.com/github/issue-labeler/compare/v3.1...v3.4) --- updated-dependencies: - dependency-name: github/issue-labeler dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
* UefiCpuPkg: CpuPageTableLibTestHost: Disable Random Test SuiteOliver Smith-Denny2024-08-271-7/+8
| | | | | | | | | | | | | Commit 2f499c36db51980ad43fc6b578c7678a1720bd9c commented out the RandomTestCase tests in CpuPageTableLibTestHost, but it left the test suite being registered without any tests. This causes a failure for tools that check to ensure tests are being registered with test suites. This patch comments out the test suite in addition to the tests being added to it. Signed-off-by: Oliver Smith-Denny <osde@linux.microsoft.com>
* OvmfPkg/TdTcg2Dxe: Fix the SeparatorEvent issue in RTMRsMin M Xu2024-08-271-3/+9
| | | | | | | | | | | | | | | | | | | | According to the TCG EFI platform specification, the firmware must measure the EV_SEPARATOR event into PCRs 0-7. As PCR[1] and PCR[7] map to RTMR[0], and PCRs [2-6] map to RTMR[1], it is necessary to measure one EV_SEPARATOR event into RTMR[0] and another one into RTMR[1]. An issue is found in TdTcg2Dxe that 2 EV_SEPARATOR events are measured to RTMR[0] but no EV_SEPARATOR event is measured to RTMR[1]. This patch fixes the above issue. Cc: Erdem Aktas <erdemaktas@google.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Gerd Hoffmann <kraxel@redhat.com> Cc: Qinkun Bao <qinkun@google.com> Cc: Tom Lendacky <thomas.lendacky@amd.com> Cc: Michael Roth <michael.roth@amd.com> Signed-off-by: Min Xu <min.m.xu@intel.com>
* MdePkg: Define BrainpoolP512r1Michael G.A. Holland2024-08-271-9/+10
| | | | | | | | REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4837 Add BrainpoolP512R1 definition to TPM20.h Signed-off-by: Michael G.A. Holland <michael.holland@intel.com>
* SecurityPkg: Allocate EfiACPIMemoryNVS buffer for TCG2Dun Tan2024-08-271-5/+9
| | | | | | | | | | | | | | | | | | | Allocate EfiACPIMemoryNVS buffer for TCG2 related usage in Tcg2ConfigPeim. The buffer will be used in Tcg2Acpi driver to retrive information from SMM environment. Previously, the buffer used in Tcg2Acpi driver is AcpiNvs type. But I mistakenly thought the Runtime Data type buffer should also work. So I used API AllocateRuntimePages() to allocate buffer in 9a76c7945b7 and consume the buffer in e939ecf6c1. Recently we found that if the buffer type is Runtime Data instead of AcpiNvs, BSOD issue happened after boot into OS. So this commit is to Allocate EfiACPIMemoryNVS buffer for TCG2 usage in SMM to align with the initial code logic. Signed-off-by: Dun Tan <dun.tan@intel.com>
* SecurityPkg: Correct Pages for TCG2 communication bufferDun Tan2024-08-271-1/+1
| | | | | | | | The value of the Pages for TCG2 communication buffer should be EFI_SIZE_TO_PAGES(sizeof(TCG_NVS)) instead of sizeof(TCG_NVS). Signed-off-by: Dun Tan <dun.tan@intel.com>
* NetworkPkg: Improve GetBootFile() code flowSaloni Kasbekar2024-08-272-60/+122
| | | | | | | | Introduce state machine to improve the code flow in GetBootFile() to make it more readable. Allows new states to be easily added without adding further nested ifs. Signed-off-by: Saloni Kasbekar <saloni.kasbekar@intel.com>
* .mergify: Fix pull_request_rules deprecationMichael Kubacki2024-08-261-2/+2
| | | | | | | | | | | | | | | | | | The following message is visible on mergify runs: "The configuration uses the deprecated merge_method attribute of the queue action in one or more pull_request_rules. It must now be used under the queue_rules configuration." With the following warning: "A brownout is planned on August 26th, 2024. This option will be removed on September 23rd, 2024." This change updates the configuration file to comply with the new format. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
* MdeModulePkg/RamDiskDxe: fix memory leak on error path.Mike Maslenkin2024-08-261-2/+7
| | | | | | | | This patch fixes a leak of memory allocated for the RAM disk in cases when an error occurred while reading contents of a file from disk or RamDiskRegister() returned some error condition. Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com>
* EmulatorPkg: VS2022 Support on WinHost.edk2-stable202408Ashraf Ali2024-08-131-0/+2
| | | | | | | Currently EDK2 is supporting VS2022, with VS2022 EmulatorPkg build is failing, this patch is to add the VS2022 support for WinHost Signed-off-by: Ashraf Ali <ashraf.ali.s@intel.com>
* DynamicTablesPkg: Add parser for Tpm2 CM objectDat Mach2024-08-081-0/+13
| | | | | | | Update the CM Object parser to add support for parsing the CM_ARM_TPM2_INTERFACE_INFO object. Signed-off-by: Dat Mach <dmach@nvidia.com>
* DynamicTablesPkg: Add HexDump for CM Object parserDat Mach2024-08-082-81/+53
| | | | | | | | | Add helper function HexDump for printing hex dump of CM Object fields. Also merge multiple flavors of PrintCharX into one function PrintChars by using the field length. Signed-off-by: Dat Mach <dmach@nvidia.com>