-
Notifications
You must be signed in to change notification settings - Fork 345
EDK II Specifications
This page contains the released versions of the EDK II Specifications published using Gitbook.
- The latest draft versions of the EDK II Specification can be found on the EDK II Draft Specification page.
- The previous versions of the EDK II Specifications can be found on the EDK II Specifications Archived page.
For an understanding of the basic setup and to see examples of how to use the EDK II Specification files .DEC,.DSC and .INF, see the wiki page Build Description Files.
The EDK II Template Specification is an example document that may be used as a template for a new document. For complete details on how to contribute to TianoCore documents, please see the information here.
Descriptions for each specification is listed below.
EDK II Specification | Revision | Date | Download |
---|---|---|---|
Build | v1.28 | April 2018 | HTML , PDF , Mobi , ePub , Gitbook, Github |
DEC | v1.27 | April 2018 | HTML , PDF , Mobi , ePub , Gitbook, Github |
DSC | v1.28 | April 2018 | HTML , PDF , Mobi , ePub , Gitbook, Github |
FDF | v1.28 | June 2017 | HTML , PDF , Mobi , ePub , Gitbook, Github |
IDF | v1.0 | April 2017 | HTML , PDF , Mobi , ePub , Gitbook, Github |
INF | v1.27 | April 2018 | HTML , PDF , Mobi , ePub , Gitbook, Github |
Meta-Data | v1.20 | April 2017 | HTML , PDF , Mobi , ePub , Gitbook, Github |
PCD | v0.56 | April 2017 | HTML , PDF , Mobi , ePub , Gitbook, Github |
UNI | v1.4 | May 2017 | HTML , PDF , Mobi , ePub , Gitbook, Github |
VFR | v1.92 | April 2018 | HTML , PDF , Mobi , ePub , Gitbook, Github |
C Coding Standards | v 2.2 | June 2017 | HTML , PDF , Mobi , ePub , Gitbook, Github |
Min-Platform | v 1.4 | May 2019 | HTML , PDF , Mobi , ePub , Gitbook, Github |
Build Specification -[ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document describes the EDK II Build Architecture. This specification was designed to support new build requirements for building EDK II modules and EDK components within the EDK II build infrastructure as well as to generate binary firmware images and Unified Extensible Firmware Image (UEFI) applications.
Declaration file format-[ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document describes the EDK II Declaration (DEC) file format. This format was designed to support building packaging and distribution of EDK II modules, as well as for building platforms and modules using the EDK II build infrastructure. EDK II declaration files may be created during installation of a distribution that follows the UEFI Platform Initialization Distribution Package Specification. They may also be created manually. The EDK II Build Infrastructure supports generation of UEFI 2.5 and PI 1.4 (Unified EFI, Inc.) compliant binary images.
Platform Description file format -[ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] -This document describes the EDK II Platform Description file (DSC) format. The EDK Build Tools are included as part of the EDK II compatibility package. In order to use EDK II Modules or the EDK II Build Tools, an EDK II DSC and FDF file must be used. EDK II tools use INI style text based files to describe components, platforms and firmware volumes. While similar to EDK DSC files, the EDK II DSC file format is different, and new utilities have been provided to process these files. The EDK II Build Infrastructure supports creation of binary images that comply with Unified EFI (UEFI) 2.5 and UEFI Platform Infrastructure (PI) 1.4 specifications.
Flash Description file format - [ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document describes the EDK II Flash Description (FDF) file format. This format was designed to support new build requirements of building EDK and EDK II modules within the EDK II build infrastructure. The EDK II Build Infrastructure supports generation of current Unified EFI, Inc. (UEFI 2.5 and PI 1.4) compliant binary images. The FDF file is used to describe the content and layout of binary images. Binary images described in this file may be any combination of boot images, capsule images or PCI Options ROMs.
Image Definition IDF File Format Specification - [ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document describes file format for Image Description files that are used to create HII Image Packages introduced in the Unified Extensible Firmware Interface Specification, Version 2.1.
information file format - [ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document describes the EDK II build information (INF) file format. This format supports the new build requirements of build EDK components and EDK II modules within the EDK II build infrastructure. The EDK II Build Infrastructure supports creation of binary images that comply with Unified EFI (UEFI) 2.5 and UEFI Platform Infrastructure (PI) 1.4 specifications.
Meta-Data Expression Syntax Specification -[ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document describes the syntax of expression statements for EDK II Meta-data files used in data fields, feature flag expressions and conditional directive statements.
EDK II PCD Specification -[ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document discusses the mechanisms and configuration entries required to make it easy to write portable silicon modules and to port the Framework from platform to platform.
Unicode Format File Specification - [ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - This document describes the Multi-String build information (UNI) file format . See details in the Revision History in the document for more details.
Visual Form Representation Specification -[ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - To simplify the creation of Internal Forms Representation (IFR), a high-level Visual Forms Representation (VFR) language is described in this document. Using this language syntax, a compiler can be designed to take an ordinary text file containing VFR as an input, and output IFR for use in a user’s program. There are various methods to define the VFR language.
EDK II C Coding Standards Specification - [ HTML , PDF , Mobi , ePub , Gitbook, GitHub ] - The EDK II C Coding Standards Specification establishes a set of rules intended not as a constraint, but as an enabling philosophy which will:
- Establish uniformity of style.
- Set minimum information content requirements.
- Allow all programmers to easily understand the code.
- Facilitate support tasks by establishing uniform conventions.
- Ease documentation efforts by embedding the design documentation in the code.
- Reduce customer and new employee learning curves by providing accurate code documentation and uniform style.
These rules apply to all code developed.
This specification details the required and optional elements for an EDK II
based platform design with the following objectives:
- Define a structure that enables developers to consistently navigate source code, execution flow, and the functional results of bootstrapping a system.
- Enable a minimal platform where minimal is defined as the minimal firmware implementation required to produce a basic solution that can be further extended to meet a multitude of client, server, and embedded market needs.
- Minimize coupling between common, silicon, platform, and board packages.
- Enable large granularity binary solutions.
A key aspect of these objectives is to improve the transparency and security quality across the client, server, and embedded ecosystems.
Home
Getting Started with EDK II
Build Instructions
EDK II Platforms
EDK II Documents
EDK II Release Planning
Reporting Issues
Reporting Security Issues
Community Information
Inclusive Language
Additional Projects & Tasks
Training
Community Support
Community Virtual Meetings
GHSA GitHub Security Advisories Proceess (Draft)