edk2/OvmfPkg/Library/PlatformInitLib
fanhuang 4e90b65e7b OvmfPkg/PlatformInitLib: Add SoftReserved memory type support
Add support for E820 Soft Reserved Memory regions in OVMF firmware.
This memory type is used by QEMU to expose Specific Purpose Memory (SPM).

Changes:
- Add EfiAcpiAddressRangeSoftReserved to EFI_ACPI_MEMORY_TYPE enum
- Handle SoftReserved in PlatformAddHobCB() by creating Resource HOBs
  with standard memory attributes plus EFI_RESOURCE_ATTRIBUTE_SPECIAL_PURPOSE

Background:
- E820_TYPE_SOFT_RESERVED (0xEFFFFFFF) is defined in Linux kernel:
  include/uapi/linux/e820.h
- SPM (Specific Purpose Memory) is defined in ACPI 6.4+ specification
- Use cases include High Bandwidth Memory (HBM) attached to accelerators/GPUs

The 0xEFFFFFFF value follows the E820 extension convention where values
above 0x7FFFFFFF are reserved for OEM/firmware-specific use. Linux kernel
adopted this value for "soft reserved" memory that should not be used by
the OS for general allocation but can be managed by device drivers.

Signed-off-by: FangSheng Huang <FangSheng.Huang@amd.com>
2026-03-11 13:19:53 +00:00
..
X64 OvmfPkg/PlatformInitLib: allow switching to 4-level paging 2024-08-30 22:13:44 +00:00
Cmos.c OvmfPkg: Create initial version of PlatformInitLib 2022-04-02 08:15:12 +00:00
Igvm.c OvmfPkg/PlatformInitLib: reserve igvm parameter area 2025-12-10 12:35:02 +00:00
IntelTdx.c OvmfPkg: Add the ResetVector in TDX MailBox 2025-06-20 10:23:42 +08:00
IntelTdxNull.c OvmfPkg: Refactor ProcessHobList 2023-02-04 03:38:15 +00:00
MemDetect.c OvmfPkg/PlatformInitLib: Add SoftReserved memory type support 2026-03-11 13:19:53 +00:00
Platform.c OvmfPkg/igvm: add PlatformIgvmVpCount 2025-09-29 14:28:23 +00:00
PlatformInitLib.inf OvmfPkg/PlatformInitLib: reserve igvm parameter area 2025-12-10 12:35:02 +00:00