Twitter: _zaolin_ , 9eSec
github.com/Telecominfraproject/OpenCellular
EC firmware
Host processor
firmware
TPM firmware
Power supply
firmware
Host processor firmware / BIOS
1980
Today
64KB
512KB
2MB
8MB
32MB
512MB
IBV example
Every firmware is different but...
FDT
GBE
ME
BIOS
Legacy
Modern
PRE RAM
DRIVER LAYER
BOOTLOADER
IBB
ROM stage
RAM stage
Stefan Reinauer
Ronald Minnich
Wolfgang Denk
1981
First BIOS
by IBM
1998
Apple EFI by Intel
1999
coreboot, u-boot
by OSF community
2008
TianoCore UEFI
by Intel
2006
UEFI by
Intel
2014
Hostboot
by IBM
2018
LinuxBoot
by Google
Closed Source Firmware
Open Source
Firmware
Today
www.oshwa.org
Copyright by
PRE RAM
Intel FSP
AMD AGESA
Option ROM
Qualcomm TZ, DDR, CDT, RPM
A modern Intel platform requires a huge amount of blobs
But they integrate their API interfaces into OSF!
Copyright by Intel, vzimmer.blogspot.com/2016/04/
www.coreboot.org
www.denx.de/wiki/U-Boot
www.tianocore.org
github.com/open-power
www.uefi.org/specifications
chromium.googlesource.com/chromiumos/platform/vboot/
www.linuxboot.org
PRE RAM
DRIVER LAYER
LINUX KERNEL
BOOTLOADER
LINUX USERSPACE
Firmware
coreboot, U-Boot, TianoCore, Hostboot
LinuxBoot
LinuxBoot
u-root.tk
www.systemboot.org
Feel free to join our OSF assembly!