summaryrefslogtreecommitdiff
path: root/MdePkg/Include
AgeCommit message (Collapse)AuthorFilesLines
39 hoursMdePkg/AArch64: Add LPA2 upper address descriptor macrosSami Mujawar1-0/+5
With FEAT_LPA2, bits[9:8] of a translation table descriptor encode output address bits[51:50]. Add macros for extracting those upper IPA address bits and shifting them into the descriptor field. These macros will be used by code that needs to build or update AArch64 translation table descriptors for 52-bit IPA/output addresses. Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
2 daysMdePkg: Define the SPCR RISC-V interrupt typeDjordje Nedic1-0/+4
SPCR defines interrupt-type bit 4 for RISC-V PLIC/APLIC interrupts, but SerialPortConsoleRedirectionTable.h only defines bits 0 through 3. Add the missing symbolic constant for the standard RISC-V interrupt type. This is a header-only change with no change to table layout or runtime behavior. Reference: https://learn.microsoft.com/en-us/windows-hardware/drivers/bringup/serial-port-console-redirection-table Signed-off-by: Djordje Nedic <djordje.nedic@nextsilicon.com>
13 daysMdePkg: Add MemoryTypeLpDdr6 to MEMORY_DEVICE_TYPE enumAshraf Ali S1-1/+2
Signed-off-by: Ashraf Ali S <ashraf.ali.s@intel.com>
2026-09-15MdePkg/BaseLib: Add AsciiStrToUintn and AsciiStrToUint64Vishal Oliyil Kunnil1-0/+62
Add AsciiStrToUintn() and AsciiStrToUint64() to BaseLib. These are thin wrappers that dispatch to the existing AsciiStrHexToUintnS()/ AsciiStrDecimalToUintnS() (and UINT64 equivalents) based on Base, which must be 0 (auto-detect via a "0x"/"0X" prefix), 10, or 16. No new radix-parsing logic is introduced; the existing conversion routines already cover the bases actually used in practice. Signed-off-by: Vishal Oliyil Kunnil <vishalo@qti.qualcomm.com>
2026-09-15MdePkg/BaseLib: Add AsciiIsSpaceVishal Oliyil Kunnil1-0/+16
Add AsciiIsSpace() to BaseLib, which checks whether an ASCII character is a space character as defined by the ISO C isspace() function. This will be used to implement AsciiStrToUintn() and AsciiStrToUint64(). Signed-off-by: Vishal Oliyil Kunnil <vishalo@qti.qualcomm.com>
2026-09-15MdePkg/BaseLib: Add AsciiStrRChrVishal Oliyil Kunnil1-0/+30
Add AsciiStrRChr() to BaseLib, which returns the last occurrence of a character in a Null-terminated ASCII string. This mirrors the existing AsciiStrStr() API style and provides a reusable implementation for consumers that currently hand-roll this logic. Signed-off-by: Vishal Oliyil Kunnil <vishalo@qti.qualcomm.com>
2026-09-15DynamicTablesPkg,MdePkg: generate IORT table for GICv5Sarah Walker1-0/+13
Generate GICv5 related information in IORT table. Continuous-integration-options: PatchCheck.ignore-multi-package Co-Developed-by: Yeoreum Yun <yeoreum.yun@arm.com> Signed-off-by: Sarah Walker <Sarah.Walker2@arm.com>
2026-09-15DynamicTablesPkg,MdePkg: validate number of ItsGroupCount in IORTYeoreum Yun1-0/+1
Since the IORT specification version E.g[0], Number of ITS node (a.k.a ITS Group node) must be "1". To ensure compliance with the specification, add a sanity check for the number of ITS Group nodes. Link: https://developer.arm.com/documentation/den0049/latest [0] Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-09-15MdePkg/IndustryStandard: add and update GICv5 related structuresSarah Walker1-3/+68
This is preparatory patch to support GICv5. Add GICv5 related structures and update MADT with GICv5 related structures. Signed-off-by: Sarah Walker <Sarah.Walker2@arm.com>
2026-09-15MdePkg/IndustryStandard: Add ACPI 6.7 headerSarah Walker2-1/+3677
This is preparatory patch for GICv5 support. Create Acpi67.h, which is copied from Acpi66.h and replace all occurrences of "6.6/6_6" with "6.7/6_7". Signed-off-by: Sarah Walker <Sarah.Walker2@arm.com>
2026-09-07MdePkg/Pi: Add EFI_SW_DXE_BS_PC_BOOT_OPTION_COMPLETE Status CodeSachin Ganesh1-0/+1
PI 1.10 defines a new progress status code, EFI_SW_DXE_BS_PC_BOOT_OPTION_COMPLETE (EFI_SUBCLASS_SPECIFIC | 0x0A), reported when a boot option loads, executes, and returns success with control returned to firmware. Add the definition to PiStatusCode.h. Signed-off-by: Sachin Ganesh <sachinganesh@ami.com>
2026-09-06MdePkg: ArmFfaMemMgmtLib: Fix ECC check failuresKun Qin1-28/+23
This change fixes some ECC check failures around the usage of doxygen keywords. Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2026-09-01MdePkg: add MCHI MCTP headerYeoreum Yun1-0/+60
SMBIOS type 42 record defines its MCHI MCTP information from DSP0256 specification. To make DynamicTablesPkg generate SMBIOS type 42 record, add related header. Link: [0] https://www.dmtf.org/dsp/DSP0256 Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-09-01MdePkg: add MCHI newtork host interface headerYeoreum Yun1-0/+242
SMBIOS type 42 record defines its Network Host Interface information from DSP0270 specification. To make DynamicTablesPkg generate SMBIOS type 42 record, add related header. Link: [0] https://www.dmtf.org/dsp/DSP0270 Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-08-28MdePkg: Update LoongArch64 page table bit mapChao Li1-6/+10
The page table bitmap of LoongArch64 has been updated, adding present and writable bits. Signed-off-by: Chao Li <lichao@loongson.cn> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn>
2026-08-28MdePkg: Update LoongArch64 CpuCfg register definitionsChao Li1-34/+85
Updated the CpuCfg register definitions from V1.0 to V1.1. Ten extend words have been added to MdePkg.ci.yaml. Signed-off-by: Chao Li <lichao@loongson.cn> Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn>
2026-07-31MdePkg: Update AML _STA macrosPierre Gondois2-0/+46
Add a ACPI_AML_STA_DEVICE_STATUS_PRESENT macro without typo, the previous one should be removed ultimately. Introduce macros for _STA supported bits: - STA_BASE_SUPPORTED - STA_SUPPORTED Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
2026-07-25MdePkg,SecurityPkg: Fix TPM2 ACPI Tablerdiaz1-7/+67
Updated the ACPI code to fix an issue where the template was outdated and the revision was reporting V5 but the template was still using the V4 version of the Start Method specific parameters. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Raymond Diaz <raymonddiaz@microsoft.com>
2026-07-22MdePkg/Usb: Add BOS Descriptor to support SuperSpeed DevicesJared Pan2-0/+29
[Suggested Solution] Add the BOS descriptor structure and definition. Signed-off-by: Marlboro Chuang <marlboro.chuang@dell.com> Signed-off-by: Jared Pan <jared.pan@dell.com>
2026-07-20MdePkg,MdeModulePkg: ArmFfaLib: Expand to include first 4 registersKun Qin1-0/+10
The direct message arguments stripped off the header, making the underlying FF-A function interface to lose information when it comes to certain return code, i.e. FFA_YIELD and FFA_INTERRUPT. This change adds back the header field for this purpose so that the callers can decide how to act on the corresponding return codes. It then populates the header field for this purpose in FFA direct message functions so that the callers can decide how to act on the corresponding return codes. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2026-07-09MdePkg: SMBIOS: add RiscV processor specific block structureYeoreum Yun1-0/+20
Add definitions for RiscV processor specific block structure. Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-07-09MdePkg: SMBIOS: add x86(x64) processor specific block structureYeoreum Yun1-0/+19
Add definitions for x86 processor specific block structure. Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-07-09MdePkg: SMBIOS: add Arm processor specific block structuresYeoreum Yun1-0/+115
Add definitions for Arm processor specific block structure and related sub data structure. Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com>
2026-07-06MdePkg: Add constants for HMAT structures' fieldsOleksandr Tymoshenko3-0/+102
Add constants for HMAT table's SSLBI and ProximityDoman structures to industry standards headers for Acpi 6.4, 6.5, and 6.6. Co-authored-by: Sophia Wang <yodagump@google.com> Signed-off-by: Oleksandr Tymoshenko <ovt@google.com>
2026-07-03MdePkg: Add SHA-256 and SHA-512 measurement hash algorithm IDsSami Mujawar1-0/+2
The CCEL (CC Event Log) ACPI table records measurement logs for confidential computing platforms. Each measurement specifies the hash algorithm used, identified by a numeric constant. The edk2 Code First proposal "[Code First] Add supporting details of Arm Confidential Compute Architecture in UEFI spec" (#11383) https://github.com/tianocore/edk2/issues/11383 extends section 38.2 EFI_CC_MEASUREMENT_PROTOCOL to define algorithm IDs for: - SHA-256 (EFI_CC_BOOT_HASH_ALG_SHA256) - SHA-512 (EFI_CC_BOOT_HASH_ALG_SHA512) This enables CC types such as Arm CCA to record and interpret measurements using these hash algorithms. Add these definitions to the CC measurement header file to align with the updated specification. Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
2026-07-03MdePkg: Define CC Measurement register to Arm CCA REM mappingSami Mujawar1-0/+28
The edk2 Code First proposal "[Code First] Add supporting details of Arm Confidential Compute Architecture in UEFI spec" (#11383) https://github.com/tianocore/edk2/issues/11383 introduces a new section 38.4.3 'Arm Confidential Compute Architecture Extension' that defines the mapping between the TPM PCR indices, the CC event log measurement registers and the corresponding Arm CCA measurement registers where: - RIM means Realm Initial Measurement Register and - REM means Realm Extensible Measurement Register. TPM PCR Index | CC Measurement | Arm CCA-measurement | | Register Index | register | ------------------------------------------------------- 0 | 0 | RIM | 1, 7 | 1 | REM[0] | 2~6 | 2 | REM[1] | 8~15 | 3 | REM[2] | Therefore, add these definitions to the CC measurement header file to align with the updated specification. Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
2026-07-03MdePkg: Define CC type for Arm CCA in CCEL ACPI tableSami Mujawar2-8/+10
The following edk2 Code First proposals introduce support for Arm Confidential Compute Architecture (CCA) in ACPI and UEFI specifications: - [Code First] Add supporting details of Arm Confidential Compute Architecture in ACPI spec (#11384) https://github.com/tianocore/edk2/issues/11384 - [Code First] Add supporting details of Arm Confidential Compute Architecture in UEFI spec (#11383) https://github.com/tianocore/edk2/issues/11383 To support this, define a new CC type for Arm CCA so that CCEL event logs can be properly identified. Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
2026-07-03MdePkg, SecurityPkg, OvmfPkg: Move CCEL table defs to ACPI headerSami Mujawar3-28/+80
Although Table 5.5 "DESCRIPTION_HEADER Signatures for tables defined by ACPI" and the "Links to ACPI-Related Documents" still reference the "Virtual Firmware Confidential Computing Event Log Table," the CCEL table has now been formally included in the ACPI specification, see https://uefi.org/specs/ACPI/6.5/05_ACPI_Software_Programming_Model.html# description-header-signatures-for-tables-defined-by-acpi The CCEL (CC Event Log) table is defined in the ACPI 6.5 specification, section 5.2.34 "CC Event Log ACPI Table": https://uefi.org/specs/ACPI/6.5/05_ACPI_Software_Programming_Model.html# cc-event-log-acpi-table Therefore, move the CCEL table and related definitions to the standard ACPI header files and update the relevant code to reflect the structure and macro renaming. Also add the definitions to the ACPI 6.6 headers. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Sami Mujawar <sami.mujawar@arm.com>
2026-07-01MdePkg: Generalize VS15 warning comment in ProcessorBind.hMichael Kubacki2-4/+4
The Ia32 and X64 ProcessorBind.h files had comments about VS2015, but the warning is still relevant for newer VS versions, so update the comments to be more general since VS2015 support was removed from the repo recently. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
2026-06-13MdePkg: Update WSMT (Windows SMM Security Mitigation Table) DocsJon Kohler1-3/+47
The WSMT table ProtectionFlags represent a pinky promise from the firmware that it will implement various secure processes and features, but we should know what that pinky promise actually represents with in-code documentation. Revise the documentation for the Windows SMM Security Mitigation Table to include detailed descriptions of the Protection Flags, which are directly drawn from Microsoft's docs. Update the stable URL to the latest Microsoft docs for cross reference. Cc: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Jon Kohler <jon@nutanix.com>
2026-06-12MdePkg/Svsm: add SVSM_UEFI_MM_PROTOCOLGerd Hoffmann1-0/+6
The SVSM_UEFI_MM_PROTOCOL protocol allows to send MM communication buffers to the SVSM (instead of edk2 MM code) and let SVSM manage EFI variables that way. This patch adds protocol and call numbers to svsm include file. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2026-06-11MdePkg: Introduce DT_FIXUP protocolDmitrii Merkurev1-0/+42
Proposed by heinrich.schuchardt@canonical.com: https://github.com/U-Boot-EFI/EFI_DT_FIXUP_PROTOCOL Co-authored-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Signed-off-by: Dmitrii Merkurev <dimorinny@google.com>
2026-06-09MdePkg: Remove contructor from Mpxy LibraryHimanshu Chauhan1-0/+13
Cases when MPXY extension is not present or it fails, the system boot fails. This is easily reproducible with Qemu master branch. Remove the constructor and let RAS agent client initialize the MPXY library and fail graceully in case of errors but the boot process continue. Signed-off-by: Himanshu Chauhan <himanshu.chauhan@oss.qualcomm.com>
2026-06-09MdePkg: Improve description of BlockIo->LastBlockSean Brogan1-1/+2
Signed-off-by: Sean Brogan <sebrogan@microsoft.com>
2026-06-04MdePkg/BaseFdtLib: Add FdtStringListCount and FdtStringListSearch wrappersThamballi Sreelalitha1-0/+45
Add UEFI-native wrappers for libfdt string list count and search APIs. Signed-off-by: Thamballi Sreelalitha <sreelali@qti.qualcomm.com>
2026-05-28MdePkg MmUnblockMemoryLib.h: Add RETURN_OUT_OF_RESOURCES return valueStar Zeng1-0/+1
Signed-off-by: Star Zeng <star.zeng@intel.com>
2026-05-28.pytool, MdePkg: MSVC/CLANGPDB AARCH64 Use AAPCS64 ABI for VA_LISTArd Biesheuvel1-6/+19
MSVC AARCH64 and CLANGPDB AARCH64 currently use the MS ABI for variadics in edk2. However, this breaks the AAPCS64 ABI and interopability with GCC/CLANGDWARF built binaries. Because the architecture defines the single ABI, MSVC AARCH64 has little usage, and CLANGPDB AARCH64 is new to edk2, coerce these toolchains to use the AAPCS64 ABI instead of the MS ABI. This allows interopability between all supported AARCH64 toolchains in edk2 for variadics. Note that variadic functions themselves are unaffected by this change, e.g. functions that take ... as the last parameter. This affects the VA_LIST structure and the associated helpers to parse it. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-28MdePkg: StackCheckLib: Update __stack_chk_guard for GCC 17Oliver Smith-Denny1-1/+4
GCC 17 (upcoming release) is updating the type of __stack_chk_guard from a void * to a uintptr_t. This is only a type change, not a size change. However, it does cause the GCC 17 build to fail because of the type mismatch. uintptr_t is defined as unsigned long, which is not a type edk2 defines. It has the same size as UINTN on a given system, but on 64 bit systems we have the same type issue because UINTN is defined as unsigned long long, not unsigned long. To work around this and avoid defining a new type in edk2, use the compiler built in __UINTPTR_TYPE__ which is the underlying definition in GCC. This is a backwards compatible change with previous versions of GCC and CLANGDWARF but also fixes the upcoming definition change for GCC 17. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-27MdePkg/Library: RISC-V: Add RAS agent client libraryHimanshu Chauhan1-0/+150
Add the RAS agent client library which is used to communicate to a remote RAS agent. The RAS agent can be queried about the details of various hardware error sources in the system. Signed-off-by: Himanshu Chauhan <himanshu.chauhan@oss.qualcomm.com>
2026-05-27MdePkg/Include: RISCV: Add SBI Mpxy Library for SBI MPXY extensionHimanshu Chauhan1-0/+124
Add SBI Mpxy client library to communicate using RPMI or other protocols using SBI MPXY extension. Signed-off-by: Himanshu Chauhan <himanshu.chauhan@oss.qualcomm.com>
2026-05-27MdePkg/Include: RISC-V: Add SBI MPXY extension related macrosHimanshu Chauhan1-1/+16
Add SBI MPXY extension and its function macros. Signed-off-by: Himanshu Chauhan <himanshu.chauhan@oss.qualcomm.com>
2026-05-27MdePkg/Library: RISC-V: Add function to probe an SBI extensionHimanshu Chauhan1-0/+6
Extensions should be detected before they can be used. Add a function to detect the support for an SBI extension using probe extension SBI function. Signed-off-by: Himanshu Chauhan <himanshu.chauhan@oss.qualcomm.com>
2026-05-27MdePkg/Include: Add new SBI return codesHimanshu Chauhan1-2/+6
Add new error codes defined in SBI relating to shared memory, etc. Signed-off-by: Himanshu Chauhan <himanshu.chauhan@oss.qualcomm.com>
2026-05-08MdePkg: Fix Spelling Errors in CommentsOliver Smith-Denny111-200/+200
This fixes all non-breaking spelling errors in MdePkg. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-08MdePkg,MdeModulePkg: Fix Spelling Error in Udf DefinitionsOliver Smith-Denny1-4/+7
Fix spelling error in definition in Udf.h. Update consumer in MdeModulePkg. A temporary backward-compatible alias is provided for the old misspelled enum name. Continuous-integration-options: PatchCheck.ignore-multi-package Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-08MdePkg: Fix Spelling Errors in CXL DefinitionsOliver Smith-Denny1-2/+9
Fix spelling errors in definitions in Cxl30.h. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-08MdePkg: Fix Spelling Errors in HiiImageDecoder DefinitionsOliver Smith-Denny1-1/+4
Fix spelling errors in definitions in HiiImageDecoder.h. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-08MdePkg: Fix Spelling Errors in IPMI DefinitionsOliver Smith-Denny1-1/+4
Fix spelling errors in definitions in IpmiNetFnApp.h. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-08MdePkg: Fix Spelling Error in DriverConfiguration2 DefinitionsOliver Smith-Denny1-1/+4
Fix spelling error in definition in DriverConfiguration2.h. A temporary backward-compatible alias is provided for the old misspelled macro name. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>
2026-05-08MdePkg: Fix Spelling Errors in ACPI DefinitionsOliver Smith-Denny1-1/+4
Fix spelling errors in definitions in Acpi10.h. Signed-off-by: Oliver Smith-Denny <osde@microsoft.com>