Menu

Tree [ae8814] master /
 History

HTTPS access


File Date Author Commit
 .azurepipelines 2026-06-19 Oliver Smith-Denny Oliver Smith-Denny [d1b6a9] .azurepipelines: Move to VS2026
 .devcontainer 2025-11-17 Oliver Steffen Oliver Steffen [48c592] .devcontainer: Use Fedora 43 image
 .github 2026-06-19 Oliver Smith-Denny Oliver Smith-Denny [db1832] .github: Move GitHub Actions to VS2026
 .mergify 2026-04-22 Michael Kubacki Michael Kubacki [ae6bf2] .mergify/config.yml: Set update_method to merge
 .pytool 2026-07-21 Michael Kubacki Michael Kubacki [3ff3b0] .pytool: Add MarkdownLintCheck plugin
 ArmPkg 2026-07-24 Kun Qin Kun Qin [93ee30] ArmPkg: StandaloneMmCoreEntryPoint: Use ARM_FFA...
 ArmPlatformPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 ArmVirtPkg 2026-07-07 Oliver Smith-Denny Oliver Smith-Denny [372318] ArmVirtPkg: PlatformCI: Add PATH_TO_OS Flag
 BaseTools 2026-07-21 Phil Noh Phil Noh [d45f88] BaseTools: Fix Clang -Wtautological-overlap-com...
 Conf 2019-05-06 Fan, ZhijuX Fan, ZhijuX [7d83e9] BaseTools:Delete FrameworkDatabase from BaseToo...
 CryptoPkg 2026-07-02 Jeff Brasen Jeff Brasen [158c70] CryptoPkg/BaseCryptLib: add AARCH64 host unit t...
 DynamicTablesPkg 2026-07-27 Pierre Gondois Pierre Gondois [21063e] DynamicTablesPkg: Remove ACPI_AML_STA_PROC_SUPP...
 EmbeddedPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 EmulatorPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 FatPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 FmpDevicePkg 2026-01-28 Kun Qin Kun Qin [a57c5b] FmpDevicePkg: Host Test: Adding AArch64 target
 IntelFsp2Pkg 2026-07-21 Aaron Pop Aaron Pop [f7776d] IntelFsp2Pkg: Fix markdownlint errors
 IntelFsp2WrapperPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 ManageabilityPkg 2026-06-24 Leif Lindholm Leif Lindholm [a6a060] ManageabilityPkg: SsifWriteRequest post-refacto...
 MdeModulePkg 2026-05-07 Gerd Hoffmann Gerd Hoffmann [3f97b8] MdeModulePkg/SmbiosDxe: fix table length check
 MdePkg 2026-07-27 Pierre Gondois Pierre Gondois [0d9c10] MdePkg: Update AML _STA macros
 NetworkPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 OvmfPkg 24 hours ago Qihang Gao Qihang Gao [ae8814] OvmfPkg/LoongArchVirt: Add Hash2DxeCrypto to sa...
 PcAtChipsetPkg 2024-07-18 Mike Turner Mike Turner [708e44] PcAtChipsetPkg: Add VarPolicy to PcAtRealTimeCl...
 PrmPkg 2026-01-28 Kun Qin Kun Qin [2da91c] PrmPkg: Host Test: Adding AArch64 target
 RedfishPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 SecurityPkg 2023-04-20 Herve ELTER Herve ELTER [0af5cb] SecurityPkg/Tcg: Use TPM names in setup strings
 ShellPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 SourceLevelDebugPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 StandaloneMmPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 TcgTpmPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 UefiCpuPkg 2026-06-02 Michael D Kinney Michael D Kinney [3120fb] UefiCpuPkg/CpuDxeRiscV64: Read hardware state i...
 UefiPayloadPkg 2026-07-22 Michael Kubacki Michael Kubacki [df9111] Global: Set MarkdownLintCheck plugin to AuditOnly
 UnitTestFrameworkPkg 2026-01-20 Kun Qin Kun Qin [8cdd6f] UnitTestFrameworkPkg: Test: Adding AArch64 target
 contrib 2025-01-16 Michael Kubacki Michael Kubacki [b24ad9] Add VS Code GitHub issues notebook
 .editorconfig 2023-03-01 Rebecca Cran Rebecca Cran [d42ad8] Add a .editorconfig file to tell editors basic ...
 .git-blame-ignore-revs 2026-05-01 Michael D Kinney Michael D Kinney [111a79] Maintainers.txt: Remove SignedCapsulePkg
 .gitattributes 2024-04-12 Michael Kubacki Michael Kubacki [88b361] .gitattributes: Prevent line ending conversion
 .gitignore 2024-09-28 Mike Beaton Mike Beaton [517019] .gitignore: Ignore Python venv files
 .gitmodules 2025-06-19 Levi Yun Levi Yun [507c95] TcgTpmPkg: add TCG TPM 2.0 Reference Implementa...
 .mailmap 2026-03-09 Jiaxin Wu Jiaxin Wu [42f579] Maintainers.txt: Update the email address
 .markdownlint.yaml 2026-01-21 Sherry Fan Sherry Fan [90cb16] .markdownlint: Add ignore and settings
 .markdownlintignore 2026-01-21 Sherry Fan Sherry Fan [90cb16] .markdownlint: Add ignore and settings
 BREAKING-CHANGES.md 2026-07-22 Michael Kubacki Michael Kubacki [ac0777] BREAKING-CHANGES.md: Sort entries and add order...
 CONTRIBUTING.md 2026-07-06 Michael Kubacki Michael Kubacki [17ea1f] CONTRIBUTING.md: Add breaking change process link
 License-History.txt 2025-02-03 Michael Kubacki Michael Kubacki [f7cf6c] License-History.txt: Reflect bugzilla migration
 License.txt 2019-03-05 Michael D Kinney Michael D Kinney [304bff] edk2: Change License.txt from 2-Clause BSD to B...
 Maintainers.txt 2026-07-27 Aaron Pop Aaron Pop [4f03df] Maintainers: Add Aaron Pop to EDK II Contribute...
 ReadMe.rst 2026-04-11 Michael Kubacki Michael Kubacki [632958] ReadMe.rst: Update CI pipeline badges
 edksetup.bat 2026-06-16 Michael Kubacki Michael Kubacki [b7d780] edksetup.bat: Remove VS2017 support
 edksetup.sh 2026-02-03 Michael Kubacki Michael Kubacki [feefab] Global: Update wiki links in workspace root files
 pip-requirements.txt 2026-06-19 Oliver Smith-Denny Oliver Smith-Denny [a96706] pip-requirements.txt: Upgrade Pytool Lib for VS...

Read Me

EDK II Project

A modern, feature-rich, cross-platform firmware development environment for the UEFI and PI specifications from www.uefi.org.

CI Minimum Python Version

It is recommended to install this Python version to run the full set of scripts that enable CI in the project.

Other Python requirements for build can be found in the EDK II Build Instructions.

Core CI Build Status

Host Type & Toolchain Build Status Test Status Code Coverage
Windows_VS WindowsCiBuild <object data="https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/74.svg" type="image/svg+xml">WindowsCiTest</object> WindowsCiCoverage
Ubuntu_GCC UbuntuCiBuild <object data="https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/76.svg" type="image/svg+xml">UbuntuCiTest</object> UbuntuCiCoverage
Windows_CLANGPDB WinClgCiBuild <object data="https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/89.svg" type="image/svg+xml">WinClgCiTest</object> WinClgCiCoverage
Ubuntu_CLANGPDB UbuClgCiBuild <object data="https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/83.svg" type="image/svg+xml">UbuClgCiTest</object> UbuClgCiCoverage
Ubuntu_CLANGDWARF UbuCdwCiBuild <object data="https://img.shields.io/azure-devops/tests/tianocore/edk2-ci/82.svg" type="image/svg+xml">UbuCdwCiTest</object> UbuCdwCiCoverage

More CI Build information

Platform CI Build Status

Microsoft Windows Visual Studio (VS)

Toolchain CONFIG DEBUG RELEASE NOOPT
EmulatorPkg_Win_VS
X64
em64d em64r em64n

X64 FULL
em64fd em64fr em64fn
OvmfPkg_Win_VS
X64
op64d op64r op64n

Microsoft Windows CLANGPDB

Toolchain CONFIG DEBUG RELEASE NOOPT
EmulatorPkg_Win_CLANGPDB
X64
emW64cd emW64cr emW64cn

X64 FULL
emW64cfd emW64cfr emW64cfn

Ubuntu GCC

Toolchain CONFIG DEBUG RELEASE NOOPT
ArmVirtPkg_Ubuntu_GCC
AARCH64
avAArch64du avAArch64ru avAArch64nu
EmulatorPkg_Ubuntu_GCC
X64
em64du em64ru em64nu

X64 FULL
em64fdu em64fru em64fnu
OvmfPkg_Ubuntu_GCC
X64
op64du op64ru op64nu

TCBZ_2639 - EmulatorPkg Ubuntu GCC Segfaults during execution.

Ubuntu CLANGPDB

Toolchain CONFIG DEBUG RELEASE NOOPT
ArmVirtPkg_Ubuntu_CLANGPDB
AARCH64
avAArch64cpu avAArch64rpu avAArch64npu
OvmfPkg_Ubuntu_CLANGPDB
X64
opU64cpd opU64cpr opU64cpn

Code Contributions

To make a contribution to a TianoCore project, follow these steps.

  1. Create a change description in the format specified below to
    use in the source control commit log.
  2. Your commit message must include your Signed-off-by signature
  3. Submit your code to the TianoCore project using the process
    that the project documents on its web page. If the process is not documented, then submit the code on development email list for the project.
  4. It is preferred that contributions are submitted using the same
    copyright license as the base project. When that is not possible, then contributions using the following licenses can be accepted:

For documentation:

Contributions of code put into the public domain can also be accepted.

Contributions using other licenses might be accepted, but further review will be required.

Developer Certificate of Origin

Your change description should use the standard format for a commit message, and must include your Signed-off-by signature.

In order to keep track of who did what, all patches contributed must include a statement that to the best of the contributor's knowledge they have the right to contribute it under the specified license.

The test for this is as specified in the Developer's Certificate of Origin (DCO) 1.1. The contributor certifies compliance by adding a line saying

Signed-off-by: Developer Name developer@example.org

where Developer Name is the contributor's real name, and the email address is one the developer is reachable through at the time of contributing.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

Sample Change Description / Commit Message

From: Contributor Name <contributor@example.com>
Subject: [Repository/Branch PATCH] Pkg-Module: Brief-single-line-summary

Full-commit-message

Signed-off-by: Contributor Name <contributor@example.com>

Notes for sample patch email

  • The first line of commit message is taken from the email's subject line following [Repository/Branch PATCH]. The remaining portion of the commit message is the email's content.
  • git format-patch is one way to create this format

Definitions for sample patch email

  • Repository is the identifier of the repository the patch applies.

    This identifier should only be provided for repositories other than edk2. For example edk2-BuildSpecification or staging.

  • Branch is the identifier of the branch the patch applies. This

    identifier should only be provided for branches other than

    edk2/master.

    For example edk2/UDK2015,

    edk2-BuildSpecification/release/1.27, or

    staging/edk2-test.

  • Module is a short identifier for the affected code or documentation. For example MdePkg, MdeModulePkg/UsbBusDxe, Introduction, or

    EDK II INF File Format.

  • Brief-single-line-summary is a short summary of the change.

  • The entire first line should be less than ~70 characters.

  • Full-commit-message a verbose multiple line comment describing

    the change. Each line should be less than ~70 characters.

  • Signed-off-by is the contributor's signature identifying them

    by their real/legal name and their email address.

Submodules

The current submodules used in EDK II are in .gitmodules.

To get a full, buildable EDK II repository, use following steps of git command

git clone https://github.com/tianocore/edk2.git
cd edk2
git submodule update --init
cd ..

If there are updates for submodules, use the following git commands to get the latest submodules code.

cd edk2
git pull
git submodule update

Note: When cloning submodule repos, '--recursive' option is not recommended. EDK II itself will not use any code or features from submodules within the submodules listed above. So using '--recursive' adds a dependency on being able to reach servers we do not actually want any code from, as well as needlessly downloading code we will not use.