summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
9 daysOvmfPkg/PlatformBootManagerCommonLib: Introduce OvmfFindLoadOptionLuigi Leonardi1-1/+43
OvmfFindLoadOption behaves like EfiBootManagerFindLoadOption, it searches for an entry in the array: an entry is found if the two paths are equal. This removes possible duplicates in the boot entries: two entries with the same path and different attributes are not detected as equal by EfiBootManagerFindLoadOption. In this case, the old entry is deleted and replaced by the new one. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
9 daysOvmfPkg: Add duplicate exception for gUiAppFileGuidLuigi Leonardi1-1/+1
gUiAppFileGuid, which is used to register EFI Firmware Config as a boot option, has the same value as UiApp guid. This would trigger a duplicate guid error from the CI pipeline, but because these two guids are necessary, this commit adds a duplicate exception. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
9 daysOvmfPkg/PlatformBootManagerLib: Register UiApp as an optional boot optionGerd Hoffmann3-0/+19
Introduce gUiAppFileGuid: it has the same value of UiApp guid defined in the .inf file. This is used to register UiApp as a boot entry in the BootManagerMenu. This registration is done in PlatformBootManagerBeforeConsole because it must be done before the hotkeys are registered. This is because in a system with hotkeys still bound to UiApp, but with firmware disabled, you can still boot into the latter by hitting ESC or F2 during boot. UiApp can be enabled/disabled using fw_cfg option FirmwareSetupSupport Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
9 daysOvmfPkg/PlatformBootManagerLib: Disable autoboot for EFI ShellGerd Hoffmann1-1/+1
Setting the LOAD_OPTION_CATEGORY_APP flag for EFI Shell prevents the boot loader from using it as a fallback if all other entries fail to boot. With a boot manager menu available, it can be annoying to enter the EFI Shell directly, because from the menu, the user can try to boot again (e.g. temporary network problem) or enter the shell/firmware config only if necessary. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
9 daysOvmfPkg: use BootManagerMenuApp as BootManagerMenuGerd Hoffmann8-16/+16
This is part of the effort to enable/disable firmware configuration (UiApp) from the QEMU CLI. Because the UiApp can be disabled at runtime and it's currently the default BootManagerMenu, change the default from UiApp to BootManagerMenuApp. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
9 daysOvmfPkg: add BootManagerMenuApp to dependencies.Gerd Hoffmann16-0/+16
Add BootManagerMenuApp to all OvmfPkg dependencies. To make UiApp optional, switch from UiApp to BootManagerMenuApp as default BootManagerMenu. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
9 daysIntelFsp2WrapperPkg: Bootloader need to recover fs and gsHongbin1 Zhang1-2/+6
When enter FSP, bootloader need to save fs and gs, when back to bootloader, bootloader need to restore fs and gs, so it could avoid bootloader access wrong data segment when usging fs and gs. 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> Cc: Ray Ni <ray.ni@intel.com>
11 daysMdeModulePkg/DxeCapsuleLibFmp: Check for NULL in IsValidCapsuleHeaderChristopher Zurcher1-0/+4
Signed-off-by: Christopher Zurcher <christopher.zurcher@microsoft.com>
11 daysCryptoPkg: Add sleep function to BaseCryptLibMbedTls TimerwrapperHema Anmisha1-0/+9
Add sleep() function to BaseCryptLibMbedTls library in Timerwrapper.c Encountering an unresolved external symbol error for sleep while using the BaseCryptLibMbedTls library in RuntimeDxe Signed-off-by: Hema Anmisha <hema.anmisha.kalavakolanu@intel.com>
12 daysSecurityPkg: fix possible out of bond array access in debug tracesMike Maslenkin2-2/+2
This patch fixes https://github.com/tianocore/edk2/issues/10533 Bugzilla #4834 Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com>
12 daysMdeModulePkg/TerminalDxe: Support multiple modes for SetMode functionPhil Noh3-4/+34
When the terminal driver is active, currently terminals available through SetMode function are limited to mode 0 (80x25) despite multiple modes are configured as MaxMode value (e.g. 3 modes in mTerminalConsoleModeData list). Improve the function to support multiple modes based on the value. Additionally add more modes that match with the GraphicsConsoleDxe driver. This update is expected to help the symptom that the Setup or Shell screen becomes smaller due to the text mode. Signed-off-by: Phil Noh <Phil.Noh@amd.com>
2025-02-28CI: Install a fresh python virtual env every time (Linux)Oliver Steffen2-2/+12
Install a fresh python virtual environment every time to ensure correct permissions and compatibility of the packages. This is more robust than relying on being able to upgrade an existing one. Signed-off-by: Oliver Steffen <osteffen@redhat.com>
2025-02-28MdeModulePkg/HiiDatabaseDxe: Prevent linker errorMichael Kubacki1-55/+60
Prevent an issue where `memcpy()` instrinsic is being used after recent MSVC linker update in windows-2022 VM image from 14.31.31103 to 14.32.31326. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-02-28MdePkg/BaseMemoryLib: Prevent potential VS2022 linker failureMichael Kubacki1-3/+3
After updating between various VS2022 versions such as 17.4 to 17.5, , linker failures began to appear in several modules because `memset` is an unresolved symbol. The following functions in BaseMemoryLib/MemLibGeneric.c have their loop pattern replaced with the `memset` intrinsic function: - `InternalMemSetMem16()` - `InternalMemSetMem32()` - `InternalMemSetMem64()` An example of an error related to `InternalMemSetMem64()` in VariableSmmRuntimeDxe is shown below: ``` INFO - BaseMemoryLib.lib(MemLibGeneric.obj) : error LNK2001: unresolved external symbol memset INFO - <...>\VariableSmmRuntimeDxe.dll : fatal error LNK1120: 1 unresolved externals ``` This was reproduced in several environments including: - Public VM image: https://github.com/actions/runner-images/blob/win22/20230226.1/images/win/Windows2022-Readme.md - Locally when updating from 17.4.4 to 17.5.1 > Note: This image (with 17.4) does not have this issue https://github.com/actions/runner-images/blob/win22/20230219.1/images/win/Windows2022-Readme.md This change updates the type cast for the destination buffer to be a pointer to `volatile` data to prevent this optimization with a relatively minimum delta to prior implementation. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-02-28ArmVirtPkg: Add support for fw_cfg for EFI ShellLuigi Leonardi1-1/+11
Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28OvmfPkg: Make PlatformBootManagerLibLight use PlatformBootManagerCommonLibLuigi Leonardi2-213/+4
Delete functions that are available in the PlatformBootManagerCommonLib and add this Lib to dependencies in .inf file. This is to reduce code duplication, because many functions have the same implementation in PlatformBootManagerLib and PlatformBootManagerLibLight. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28OvmfPkg: Make PlatformBootManagerLib use PlatformBootManagerCommonLibLuigi Leonardi3-259/+2
Delete functions that are available in the PlatformBootManagerCommonLib and add this Lib to dependencies in .inf file. This is to reduce code duplication, because many functions have the same implementation in PlatformBootManagerLib and PlatformBootManagerLibLight. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28OvmfPkg: add PlatformBootManagerCommonLib to dependenciesLuigi Leonardi10-0/+13
Add PlatformBootManagerCommonLib to all target that use PlatformBootManagerLib. This is part of the effort to remove code present in both PlatformBootManagerLib and PlatformBootManagerLibLight. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28ArmVirtPkg: add PlatformBootManagerCommonLib to dependenciesLuigi Leonardi2-0/+2
Add PlatformBootManagerCommonLib to ArmVirtQemu and ArmVirtQemuKernel in ArmVirtPkg. This is part of the effort to remove code present in both PlatformBootManagerLib and PlatformBootManagerLibLight. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28OvmfPkg: Introduce PlatformBootManagerCommonLibLuigi Leonardi3-0/+357
Many function present in PlatformBootManagerLib and PlatformBootManagerLibLight have the same implementation. The idea of this new Library is to collect them to enable code reuse. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28ArmVirtPkg: move USB drivers to UsbComponents.dsc.incLuigi Leonardi2-18/+2
Use `UsbComponents.dsc.inc` for the USB driver configuration to simplify changes across all DSC files. This also allows selective enabling or disabling of `UsbMassStorage` through `fw_cfg`. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28ArmVirtPkg: move network configuration to NetworkComponents.dsc.incLuigi Leonardi2-32/+2
Use `NetworkComponents.dsc.inc` for the network driver configuration to simplify changes across all DSC files. This also allows selective enabling or disabling the support for IPv4, IPv6, VirtioNet and ISCSI through `fw_cfg`. Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
2025-02-28RedfishPkg: Correct %g arguments in DEBUG callsJake Garver1-3/+3
In formatted strings, %g expects a Guid*, not a Guid. These are found in DEBUG_MANAGEABILITY, so this was only an issue when DEBUG_MANAGEABILITY logs were enabled. Signed-off-by: Jake Garver <jake@nvidia.com> Reviewed-by: Nickle Wang <nicklew@nvidia.com>
2025-02-27IntelFsp2Pkg : Set FSP-I upd data pointer to NULL as defaultHongbin1 Zhang1-0/+1
FSP-I upd data pointer should be set NULL as default, it could avoid other code to use it before it was set with correct pointer. Signed-off-by: Hongbin1 Zhang <hongbin1.zhang@intel.com> Cc: Chasel Chiu <chasel.chiu@intel.com> Cc: Ray Ni <ray.ni@intel.com> Cc: Star Zeng <star.zeng@intel.com> Cc: Jiaxin Wu <jiaxin.wu@intel.com> Cc: Duggapu Chinni B <chinni.b.duggapu@intel.com> Cc: Ted Kuo <ted.kuo@intel.com> Cc: Ashraf Ali S <ashraf.ali.s@intel.com> Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
2025-02-27MdeModulePkg/UefiBootManagerLib: Apply var policy to HDDPMichael Kubacki4-3/+80
Applies variable policy to the "HDDP" UEFI variable in the mBmHardDriveBootVariableGuid vendor namespace to ensure a minimum allowed size and expected attributes are present. A protocol notify is used to handle different platform scenarios where this instance of UefiBootManagerLib may be linked. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-02-26ArmPkg: ArmFfaSvc: Adding missing FF-A definitionsKun Qin1-0/+37
This change added missing FF-A definitions for certain FF-A function IDs. The `ARM_FFA_NOTIFICATION_*` and `ARM_FFA_FEATURE_*` definitions are based on FF-A spec v1.3 ALP1. The `ARM_FFA_MEM_PERM_RESERVED_MASK` definition is based on FF-A memory protocol spec v1.3 ALP1. Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2025-02-26DynamicTablesPkg: AcpiMadtLibArm: Correct value of GICC.GICRBaseAddressSarah Walker1-8/+18
From the ACPI 6.5 specification (https://uefi.org/specs/ACPI/6.5/05_ACPI_Software_Programming_Model.html#gic-cpu-interface-gicc-structure) : "If all of the GIC Redistributors are in the always-on power domain, GICR structures should be used to describe the Redistributors instead, and this field must be set to 0." To comply with this statement, zero GICC.GICRBaseAddress when GICR structures are present in the MADT. Signed-off-by: Sarah Walker <Sarah.Walker2@arm.com>
2025-02-26CryptoPkg: Update generated files based on openssl 3.4.1Li Yi4-9/+10
FIX: https://github.com/tianocore/edk2/issues/10664 Signed-off-by: Li Yi <yi1.li@intel.com>
2025-02-26CryptoPkg: Update openssl submodule to 3.4.1Yi Li1-0/+0
FIX: https://github.com/tianocore/edk2/issues/10664 CVE-2024-13176 affects ECDSA Sign of NIST P-521 implementation of EDK2. Fix it by updating openssl to 3.4.1. Signed-off-by: Yi Li <yi1.li@intel.com>
2025-02-26StandaloneMmPkg/MmIpl : Add EFI_HOB_HANDOFF_INFO_TABLE to MM HOB listHongbin1 Zhang3-5/+58
GetBootModeHob function need to add EFI_HOB_HANDOFF_INFO_TABLE in MM hob data base. 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>
2025-02-25MdeModulePkg/Variable: Init var policy after SMM variable is readyMichael Kubacki2-9/+14
On a MM system, the main UEFI variable logic resides in MMRAM. In that case, the variable policy logic in `VarCheckPolicyLib`, such as `VarCheckPolicyLibStandaloneMm` is linked against the MM driver also in that case `VariableStandaloneMm`. The MM variable driver indicates its presence to the RT DXE driver via `gEfiSmmVariableProtocolGuid` to indicate variable read support is available from MM. This triggers installation of the variable architectural protocol in DXE. Today, variable policy is initialized by calling `VariablePolicySmmDxeMain()` in `VariableSmmRuntimeInitialize()`. In turn, this installs `gEdkiiVariablePolicyProtocolGuid`. Functions in `gEdkiiVariablePolicyProtocolGuid` may trigger MMIs. However, it is possible that the MM variable driver which is linked against the code with the variable policy MMI handlers (i.e. `VarCheckPolicyLib`) is not loaded yet. Therefore, this change moves invocation of `VariablePolicySmmDxeMain()` to `SmmVariableReady()` which is called on installation of `gEfiSmmVariableProtocolGuid` indicating variable MM services are ready. `gEdkiiVariablePolicyProtocolGuid` is still installed prior to the variable architectural protocol being installed. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-02-25DynamicTablesPkg: Add _STA method to CPU objectAbdul Lateef Attar5-1/+78
Implement the _STA method for the CPU object based on the value provided by the configuration manager. Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25MdePkg/IndustryStandard: Add _STA bit definitionsAbdul Lateef Attar1-0/+9
Adds _STA device status bit definitions. Reference: ACPI 6.5 specification, section 6.3.7 Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25DynamicTablesPkg: Add _PSD and _CPC support for X64Abdul Lateef Attar5-93/+233
Introduce _PSD and _CPC ACPI objects for X64 platforms. Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25DynamicTablesPkg: Add _CST, _CSD, _PCT, and _PSS objectsAbdul Lateef Attar4-20/+716
This patch adds several ACPI objects to the X64 CPU SSDT table to enhance power and performance management. The new objects include: - _CST: Defines CPU idle states for power saving. - _CSD: Specifies dependencies between CPU idle states. - _PCT: Provides an interface for controlling CPU performance states. - _PSS: Lists supported CPU performance states. - _PPC: Indicates current CPU performance capabilities. These additions help improve power efficiency and thermal management in X64 systems. Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25DynamicTablesPkg: Adds C-state and P-state namespace objectsAbdul Lateef Attar3-1/+140
This update adds new configuration manager objects for C-State and P-State. The C-State objects manage processor idle states, while the P-State objects handle processor performance states. This enhancement improves power management and performance tuning within the DynamicTablesPkg. Changes include: - Added C-State and P-State namespace objects in ArchCommonNameSpaceObjects.h. - Updated ConfigurationManagerObjectParser.c to support the new objects. - Revised Readme.md to document these changes. Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25DynamicTablesPkg/AmlLib: Implement C-State and P-State ACPI objectAbdul Lateef Attar3-2/+993
This commit introduces a set of functions designed to facilitate the creation and management of C-State (_CST, _CSD) and P-State (_PCT, _PSS) ACPI objects. Detailed Summary: 1) AmlCreateCstNode(): This function is responsible for creating a _CST (C-State) node, which is essential for defining processor idle states. 2) AmlAddCstState(): This function adds a C-State package to an existing CST node, allowing for the specification of individual C-State entries. 3) AmlCreateCsdNode(): This function creates a _CSD (C-State Dependency) node, which is used to describe dependencies between different C-States. 4) AmlCreatePctNode(): This function generates a _PCT (Performance Control) node, complete with PCT packages, to manage performance state transitions. 5) AmlCreatePssNode(): This function creates a _PSS (Performance Supported States) node, which lists the supported performance states for a processor. Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25MdePkg/IndustryStandard: Add _CSD version definitionAbdul Lateef Attar10-0/+110
Add _CSD version and number of entries definition. These were introduced in the ACPI 3.0 specification. Reference: ACPI 6.5 specification, section 8.4.1.2, Table 8.3: C-State Dependency Package Values. Signed-off-by: Abdul Lateef Attar <AbdulLateef.Attar@amd.com>
2025-02-25StandaloneMmPkg: Produce StandaloneMM Entry/Exit Notify Protocol.Diat Siah Yap3-2/+40
Produce StandaloneMM Entry/Exit Notify Protocol for PlatformHook. This replaces the SMM core platform hook implementation in the traditional SMM (Edk2\MdeModulePkg\Include\Library\SmmCorePlatformHookLib.h). Unlike traditional SMM, Standalone MM prefers a more generic method to perform platform-specific tasks before and after the SMI handler. Therefore, it introduces the gMmEntryNotifyProtocolGuid and gMmExitNotifyProtocolGuid protocols to notify the SMM entry and exit. This approach is more flexible for the platform, eliminating the need to place all tasks in PlatformHookBeforeSmmDispatch() and PlatformHookAfterSmmDispatch(), thus platform code can depend on the protocol notification to perform platform-specific tasks. Signed-off-by: Diat Siah Yap <diat.siah.yap@intel.com>
2025-02-25IntelFsp2Pkg/FspSecCore: Update FSP global data in FSP-S/I entryRay Ni1-4/+19
Today when FspSiliconInit/FspSmmInit is called, the corresponding FSP-S/I UPD pointer is saved in FSP_GLOBAL_DATA by gen-specific code. Such code might be duplicated between different gens of FSP implementation. The change is to update FspSecCore module to set the UPD pointer in FSP_GLOBAL_DATA for all API calls: * FspMemoryInit * FspSiliconInit * FspSmmInit This can eliminate the gen-specific code. Signed-off-by: Ray Ni <ray.ni@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>
2025-02-25MdeModulePkg: Add the EFI_RESOURCE_ATTRIBUTE_SPECIAL_PURPOSE attributePatrick Payne1-1/+8
Add the EFI_RESOURCE_ATTRIBUTE_SPECIAL_PURPOSE resource attribute as per the PI 1.8 spec. This flag is used to indicate that the memory should be treated as special purpose memory (SPM). Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Michael D Kinney <michael.d.kinney@intel.com> Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-02-24ArmPkg/ArmStandaloneMmCoreEntryPoint: Fix cast on clangMichael Kubacki1-2/+2
Compilation error: ``` ArmStandaloneMmCoreEntryPoint.c:1041:48: error: cast to smaller integer type 'unsigned long' from 'void *' [-Werror,-Wvoid-pointer-to-int-cast] 1041 | DEBUG ((DEBUG_INFO, "Start Dump Hob: %lx\n", (unsigned long)HobStart)); ``` The `%p` specifer is now used to print the pointers. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-02-24MdePkg/AArch64: fix AsmMacroLib signed value handling for MOV32/MOV64Leif Lindholm1-3/+3
MOV32 and MOV64, defined in AsmMacrolib.h, use a combination of movz and movk instructions to fill a register with an immediate value. With each instruction supplying 16 of the bits. CLANGPDB builds have been reported to fail on the current implementation when provided with negative values with: error: immediate must be an integer in range [0, 65535]. To resolve this, add a mask for the line filling the top 16 bits, like the other lines already had. Reported-by: Michael Kubacki <mikuback@linux.microsoft.com> Signed-off-by: Leif Lindholm <leif.lindholm@oss.qualcomm.com>
2025-02-24OvmfPkg: Add SmmCommunicationDxeMichael Kubacki8-0/+8
Adds the driver when SMM_REQUIRE is set to publish the gEdkiiPiSmmCommunicationRegionTableGuid config table. Some code now uses this table to find common communication buffers. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2025-02-24.azurepipelines: Introduce Build.Archlist for Azure GCC5 pipelineAjan Zhong1-2/+21
Azure Ubuntu GCC5 pipeline builds packages with all architectures. However, UefiPayloadPkg supports multiple architectures, including IA32, X64 and AARCH64. In this case, Azure pipeline builds modules for IA32, X64 and AARCH64 architectures, generates FD with same FDF file. It leads build system failed to locate which module should be integrated into Flash image. Add Build.Archlist to specify architectures to be build with, and separate TARGET_UEFIPAYLOAD to TARGET_UEFIPAYLOAD_IA32_X64 and TARGET_UEFIPAYLOAD_AARCH64 to cover all supported architectures for UefiPayloadPkg package. Signed-off-by: Ajan Zhong <ajan.zhong@newfw.com>
2025-02-24UefiPayloadPkg: Add AARCH64 supportAmos Bu13-49/+417
Add basic support for FIT image on the AARCH64 architecture, reuse exsitting DSC and FDF files for IA32, X64 and AARCH64 architectures. Introduce new PCD: PcdUseUniversalPayloadSerialPort to indicate which serial port module is used due to some serial port parameters are fixed for ARM SoC and Platform. Please use following command to build AARCH64 UPL FIT image: " export GCC5_AARCH64_PREFIX=aarch64-linux-gnu- python UefiPayloadPkg/UniversalPayloadBuild.py -a AARCH64 -t GCC5 -b DEBUG --Fit " Signed-off-by: Amos Bu <amos.bu@newfw.com> Signed-off-by: Ajan Zhong <ajan.zhong@newfw.com>
2025-02-24UefiPayloadPkg: Update logic of fetching Processor Physical Address sizeAjan Zhong4-12/+5
UefiPayloadEntry utilizes CPUID 0x80000008 leaf to retrieve the Processor's Physical Address size for X86 architecture. To enable support for multiple architectures, replace the direct implementation with an architecture-level function provided by the UefiCpuPkg library, abstracting the underlying details. Signed-off-by: Ajan Zhong <ajan.zhong@newfw.com>
2025-02-24UefiCpuPkg: Add common architecture level library supportAjan Zhong6-0/+121
Introduce fundamental architecture-level functionalities which should be implemented cross different architectures. Signed-off-by: Ajan Zhong <ajan.zhong@newfw.com>
2025-02-24EmulatorPkg/Unix/Host: Skip symbol unloading for stripped imagesanandhkrishnau1-2/+2
Skip symbol unloading for the PE/COFF images which dont have pdb area when it built in RELEASE MODE. Signed-off-by: Anandh krishna U <anandhkrishnau@ami.com>
2025-02-24StandaloneMmPkg/Core: dump HOB list in MMRAMDun Tan1-4/+4
This commit is to dump finaled HOB list in MMRAM. In previous commit, we verify the HOB list and initialize a new HOB list in MMRAM before we call the library constructor. Since we might migrate some memory allocation HOB into MMRAM, it's cleared to dump information in finaled HOB list. Signed-off-by: Dun Tan <dun.tan@intel.com>