Boot Loaders

Jump to: navigation, search



Early Splash Screen Using U-boot [OSSE 2023]

Presenters: Devarsh Thakkar and Nikhil Jain
Summary: Increasing number of Auto and robotic use case require enabling display as early as possible. U-boot is a widely used bootloader which supports large number of SoC's and provides a framework for writing video drivers and displaying images while device boots up. This talk will cover how one can add support for a new video driver in u-boot and enable display during bootup. Display controller basics and u-boot boot flow will be covered briefly, before moving into details on how to write a new video class driver using U-boot's Video Class framework and how to display images from different boot media at U-boot prompt or during bootup. It will then cover details regarding enabling early splash screen for displaying image at U-boot's SPL binary and ensuring flicker free experience during hand-off to further bootloader binaries and Linux kernel. Different design considerations related to storage media, memory addressing, and hand-off will be covered to give an idea to user on platform specific changes that need to be done to support early display using U-boot.

Recent Advances in U-Boot [EOSS 2023]

Presenter: Simon Glass, Google LLC
Summary: There has been a lot of development in U-Boot in the last 2-3 years, much of it under the hood. This talk aims to bring you up to date, focussing on several major new features but also touching on many smaller ones that together advance the state of the art in firmware development. This talk covers major areas like Kconfig migration, standard boot, UEFI support, binman, documentation and testing. Minor topics covered include VBE, IPv6, cyclic, RISC-V, x86, tracing, events, live tree, device tree schema, CI, text environment, pinctrl and GUI. The talk ends with a demo.

Semihosting U-Boot [FOSDEM 2023]

Presenter: Sean Anderson
Summary: Semihosting provides console, filesystem access, and other functions over a debug interface, such as JTAG. This is especially useful when traditional bootstrap interfaces such as serial, USB, or Ethernet are not available in hardware. This talk will discuss implementing improved semihosting support in U-Boot; semihosting's strengths, weaknesses, and how to work around them; and how to semihost U-Boot with OpenOCD on your next board bringup.

U-Boot as PSCI provider on ARM64 [FOSDEM 2023]

Presenter: Marek Vasut
Summary: OS kernel on embedded ARM64 systems requires PSCI interface to bring CPU cores up/down, suspend/resume/reset/power off. U-Boot bootloader provides a PSCI interface and this talk explains it.

Introduction to VBE - Verified Boot for Embeedded [osfc 2022]

Presenter: Simon Glass, Google LLC
Summary: The presentation introduces a new boot/update standard for emebedded systems.
It is designed to provide a simpler, faster and more deterministic alternative to UEFI.

Tutorial: Introduction to the Embedded Boot Loader U-boot [ELC 2020]

Presenter: Behan Webster, Converse in Code
Summary: The presentation introduces U-Boot and various
features supported by it.

Discover UEFI with U-Boot [FOSDEM 2020]

Presenter: Heinrich Schuchardt
Summary: The Unified Extensible Firmware Interface (UEFI) is the default for booting most Linux and BSD distributions. But the complexity of the UEFI standard does not offer an easy entry point for new developers. The U-Boot firmware provides a lightweight UEFI implementation. Using booting from iSCSI with U-Boot and iPXE as an example let's delve into the UEFI API.

What’s new in U-Boot? [ELC 2019]

Presenter: Simon Glass, Google LLC
Summary: The slides cover some of the new concepts adapted from Linux in
u-boot (< 2 years) such as device-tree overlays, platform data, etc.

Implementing State-of-the-Art U-Boot Port, 2018 Edition [ELC 2018]

Presenter: Marek Vasut, Self Employed
Summary: The slides include examples and experience from platforms
recently added to mainline U-Boot. This presentation is a practical
guide to implementing U-Boot bootloader port to a new system from

Binman - a data-controller firmware packer for U-Boot [ELC 2019]

Presenter: Simon Glass, Google LLC
Summary: Binman is a firmware packaging tool.

Modern firmware images can be complex, with dozens of pieces and various alignment and positional requirements. It can be challenging to build these images using a set of ad-hoc scripts and tools which must be maintained.

Binman collects together the files, processes them as needed, handles any other required operations (such as signing entries) and writes out the images. It permits existing images to be inspected.

By placing the image descriptions in a single configuration file, it is easier to inspect and adjust the format and layout. It also improves performance, since images are create in a single pass. Binman supports adding various U-Boot components, lists of files, microcode, binary components, Coreboot Filesystem (CBFS), text and device trees. Binman provides run-time access to the configuration via device tree and linker symbols.

Binman is used in U-Boot to produced binaries for several SoCs, notably Tegra and x86. It has comprehensive tests with 100% code coverage.

This talk describes binman, including a demo of its capabilities.

EBBR: Standard Boot for Embedded Platforms [ELCE 2018]

Presenter: Grant Likely, Arm
Summary: This session discusses the goals and present state
of the EBBR project
(Embedded Base Boot Requirements)
. EBBR specifies a subset of the UEFI standard that can be
implemented with upstream U-Boot taking into account
common design patterns common on embedded systems.

U-Boot - Bootloader for IoT Platform? [ELCE 2018]

Presenter: Alexey Brodkin, Synopsys
Summary: This presentation demonstrates how to squeeze U-Boot
with required functionality into a board with 256kB or
less of ROM and RAM with the goal of catering to IoT platforms.

Enabling New Hardware in U-Boot [ELC 2017]

Presenter: Jon Mason, Broadcom Ltd.
Summary: This presentation covers the trials and tribulations
of enhancing and upstreaming U-boot with Broadcom’s Northstar SoC

State of the U-Boot [ELC 2017]

Presenter: Thomas Rini, Konsulko Group
Summary: The slides talk about how to support EFI binaries,
CI testing in a unified environment. The presenter also discusses
about other features in progress and challenges in moving from a
vendor provided tree to the latest mainline version.

Marrying U-Boot, uEFI and grub2 [ELC 2017]

Presenter: Alexander Graf, SUSE
Summary: This talk will take you through how ARM systems boot, what UEFI really means,
how uEFI binaries interact with firmware and how this enables convergence of the
Enterprise and Embedded markets.

Porting U-Boot and Linux on New ARM Boards: A Step-by-Step Guide [ELCE 2017]

Presenter: Quentin Schulz, Free Electrons
Summary: This talk will offer a step-by-step guide through the porting
process of U-Boot and Linux on a custom Frescale/NXP i.Mx6 platform

Device tree in U-Boot SPL

Presenter: Simon Glass, Google
Summary: Describes how to use Device Tree in the constrained space of U-Boot SPL, using automatic tools which remove unwanted nodes and properties, as well as converting it to C.

Update on Shared Logging between the Kernel and the Bootloader [ELCE 2016]

Presenter: Sean Hudson, Mentor Graphics, Inc
Summary: In continuation to last year's talk, this presentation provides
an update on the current status of the shared logging feature
between the boot-loader (U-boot) and kernel.

Shared Logging between the Kernel and the Bootloader [ELCE 2015]

Presenter: Sean Hudson, Mentor Graphics, Inc
Summary: This presentation talks about shared logging feature
between the boot-loader (U-Boot) and the kernel

Order at Last: The New U-Boot Driver Model Architecture [ELCE 2015]

Presenter: Simon Glass, Google
Summary: This session talks about new driver model architecture
in U-Boot.

Redundant booting with U-Boot [ELCE 2014]

Presenter: Thomas Rini, Texas Instruments
Summary: This session talks about status of redundancy in U-Boot
and future plans in this domain.

Secure and flexible boot with U-Boot Bootloader [ELCE 2014]

Presenter: Marek Vašu, DENX
Summary: The session covers ways to develop a secure, tamper-proof U-Boot

Falcon Boot: current status and enhancements [ELCE 2013]

Presenter: Stefano Babic
Summary: The session talks about falcon mode in U-Boot

Verified Boot on Chrome OS and How to do it yourself [ELCE 2013]

Presenter: Simon Glass
Summary: The session talks about ways to use secure u-boot
to boot chrome OS.

Driver Model, Kconfig and little Patman

Presenter: Simon Glass
Summary: Describes the goals with Driver Model, the Kconfig conversion and Patman, a patch-management tool for mailing lists.


barebox, the bootloader for Linux kernel developers [FOSDEM 2023]

Presenter: Marco Felsch, Pengutronix
Summary: Embedded doesn't mean we can't have nice things. As Linux kernel developers we have grown accustomed to the comfort afforded to us by Kconfig, device trees, the device-driver model, multi-platform kernel images, the kernel having sane defaults and virtual filesystems giving us shell-level access to debug and introspect the system. Why can't we have this in the boot environment? We can and you'll see how, welcome to barebox.

Barebox and Bootloader Specification [ELCE 2013]

Presenter: Sascha Hauer
Summary: The presentation tries to define common boot loader specs
for different ARM platforms.

Barebox Bootloader [ELCE 2012]

Presenter: Sascha Hauer, Pengutronix e.K.
Summary: This presentation takes a tour through Barebox bootloader

U-Boot-v2 [ELCE 2009]

Presenter: Sascha Hauer, Marc Kleine-Budde
Summary: The presentation talks about changes to U-Boot
being done as part of U-Boot-v2 project.


MCUboot: Multi-Image Support [ELCE 2018]

Presenter: David Brown, Linaro, Ltd
Summary: In this presentation, the presenter reviews the
current status of the MCUboot project and covers
the work being done to support multiple image update


TPL: SPL Loading SPL (and, SPL as just another U-Boot config) [ELCE 2013]

Presenter: Scott Wood
Summary: The session talks about developing a tertiary program loader
on similar lines as SPL and its usage.

IPL+UBI: Flexible and Reliable with Linux as the Bootloader [ELCE 2010]

Presenter: John Ogness
Summary: This session discusses about methods to make Linux
itself as a bootloader and faster and reliable ways
to boot it.


Device Firmware Upgrade (DFU) - present situation and future development [ELCE 2013]

Presenter: Lukasz Majewski
Summary: The presentation talks present status and future
plans for device upgrade procedures on U-Boot.


UEFI Secure boot in U-Boot [ELC 2019]

Presenter: Simon Glass, Google LLC
Summary: This presentation will go over the current state of UEFI
and Secure Boot on U-Boot, including how to use it

Secure Boot from A to Z [ELC 2018]

Presenter: Quentin Schulz & Mylune Josserand, Bootlin
Summary: These slides introduce each and every link of the
chain-of-trust from the boot ROM to filesystem, as well
as the boot-loader and kernel with real life examples.

U-Boot Verified RSA Boot Flow on ARM (With Demo Run) [ELCE 2013]

Presenter: Jagan Teki
Summary: The presentation talks about booting u-boot securely
on an ARM platform.


Replace Your Exploit-Ridden Firmware with Linux [ELCE 2017]

Presenter: Ronald Minnich, Google
Summary: This presentation talks about NERF (Non-Extensible Reduced Firmware),
an open source software system developed at Google to replace almost
all of UEFI firmware with a tiny Linux kernel and initramfs.

Upgrading Without Bricking [ELCE 2012]

Presenter: Arnout Vandecappelle, Essensium/Mind
Summary: This presentation talks about upgrading process of bootloaders

Coreboot [ELCE 2009]

Presenter: Peter Stuge
Summary: The session talks about a new boot loader coreboot
suggested as a possible replacement to BIOS.