Embedded Base Boot Requirements Specification
Clone or download
glikely EBBR v0.7
Signed-off-by: Grant Likely <grant.likely@arm.com>
Latest commit af246bf Oct 18, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
source EBBR v0.7 Oct 18, 2018
.gitignore Add PDF output May 14, 2018
.travis.yml v0.6-pre2 Jul 6, 2018
CONTRIBUTING.rst Update weekly conference call details Sep 28, 2018
LICENSE Elaborate on DCO process and add full text of CC-BY-SA 4.0 May 14, 2018
Makefile Move contributing details to CONTRIBUTING file May 17, 2018
README.rst Fix sphinx-doc link in README Oct 18, 2018


Embedded Base Boot Requirements (EBBR) specification

The Embedded Base Boot Requirements specification defines requirements for embedded systems to enable inter-operability between SoCs, hardware platforms, firmware implementations, and operating system distributions. The aim is to establish consistent boot ABIs and behaviour so that supporting new hardware platforms does not require custom engineering work.

EBBR is currently being drafted. The first formal release of EBBR is expected in December 2018. You can find the current draft text in this repository, but be aware that everything in the draft text is subject to change before an official v1.0 release is published.

A v0.6 draft has been published to collect feedback from the wider embedded community. A second v0.7 draft is expected by mid-October 2018 to solicit further feedback at the fall UEFI plugfest (15-19 Oct 2018 in Taipei), and the Embedded Linux Conference Europe (22-24 Oct 2018 in Edinburgh).

Released EBBR PDFs can be found here:



Anyone may contribute to EBBR. Discussion is on the boot-architecture@lists.linaro.org mailing list, and there is a weekly conference call. See CONTRIBUTING.rst for details.

Build Instructions


On Debian and Ubuntu

# apt-get install python-sphinx texlive texlive-latex-extra libalgorithm-diff-perl \
                  texlive-humanities texlive-generic-recommended texlive-generic-extra \

If the version of python-sphinx installed is too old, then an additional new version can be installed with the Python package installer:

$ apt-get install python-pip
$ pip install --user --upgrade Sphinx
$ export SPHINXBUILD=~/.local/bin/sphinx-build

Export SPHINXBUILD (see above) if Sphinx was installed with pip --user, then follow Make commands below

On Fedora

# dnf install python2-sphinx texlive texlive-capt-of texlive-draftwatermark \
              texlive-fncychap texlive-framed texlive-needspace \
              texlive-tabulary texlive-titlesec texlive-upquote \

It is also possible to use python3-sphinx; this requires SPHINXBUILD=sphinx-build-3 to be passed on the Make command line.

On Mac OS X

  • Install MacTeX

  • Install pip if you do not have it:

    $ sudo easy_install pip
  • Install Sphinx:

    $ pip install --user --upgrade Sphinx

Make Targets

To generate PDF:

$ make latexpdf

To generate hierarchy of HTML pages:

$ make html

To generate a single HTML page:

$ make singlehtml

Output goes in ./build subdirectory.


This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License (CC-BY-SA-4.0). To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.

Contributions are accepted under the same with sign-off under the Developer's Certificate of Origin. For more on contributing to EBBR, see CONTRIBUTING.rst.

A copy of the license is included in the LICENSE file.

Creative Commons License

Writers Guide

All documentation in this repository uses reStructuredText markup with Sphinx extensions.

All files in this project must include the relevant SPDX license identifier tag. Generally this means each .rst file should include the line

.. SPDX-License-Identifier: CC-BY-SA-4.0

Original Document

Prior to being relicensed to CC-BY-SA 4.0, this specification was released by Arm. The original Draft v0.5 text can be found here:

EBBR Draft v0.5