Translations: English - Português (Brasil)

There are number of open firmware projects, some of which are listed below.

While all the firmware below is open source, some of it uses read-only firmware embedded in ROM chips and some of the read-only firmware does not have freely licensed public source code. Some of the devices in this situation do not have enough RAM that they could completely avoid the read-only firmware in the ROM chips.

The Open-Source Firmware Foundation (OSFF) promotes open firmware and the Open Source Firmware Conference (OSFC) has presentations on open firmware.

Booting

Project

Debian package

Description

Comment

coreboot

src:coreboot

initialising computers from reset

only utils are built in Debian

u-boot

u-boot

initialising computers from reset, used on ARM a lot

rpi-open-firmware

initialising Raspberry Pi devices from reset

original project on indefinite hold but librepi fork is alive, toolchain not upstreamed

TianoCore

src:edk2

UEFI

hardware support not packaged in Debian

Coreboot distros

Coreboot, as listed above, provides free and open source BIOS/UEFI boot firmware on many x86, x86-64, ARM64 and other platforms, but coreboot distros provide coreboot pre-packaged for easier installation. Here are a few, sorted alphabetically:

Project

Debian package

Description

Comment

Canoeboot

an easy to use blob-free coreboot distribution based on Libreboot, provides SeaBIOS/U-Boot UEFI coreboot payloads and a heavily modified version of the GNU boot loader payload named GRUB, on supported x86/amd64 and ARM64 mainboards. Canoeboot and Libreboot are both maintained in sync by the same developer.

Dasharo

open-source based firmware distribution focusing on clean and simple code, long-term maintenance, transparent validation, privacy-respecting implementation, liberty for the owners, and trustworthiness for all.

Heads

a coreboot distribution with advanced security features using Linux as a coreboot payload.

Firmware-action

Source-based automated build system, that can be configured with coreboot and a combination of edk2 and/or linux/u-root, to provide automated building of coreboot images; does not (as of 9 February 2025) provide pre-configured targets or images like the other projects, but it is developed so as to provide a consistent build environment, that can be configured for those porting new boards to coreboot, or testing changes on existing mainboards. For example, it uses a dockerized toolchain environment to build everything.

Libreboot

an easy to use free/opensource coreboot distribution with an emphasis on removing binary blobs while supporting much newer hardware than Canoeboot, providing SeaBIOS/U-Boot UEFI coreboot payloads and a heavily modified version of the GNU boot loader payload named GRUB, on supported x86/amd64 and ARM64 mainboards. Libreboot and Canoeboot are both maintained in sync by the same developer. GRUB is provided in flash, heavily patched to provide more advanced security features such as Argon2 KDF support for LUKS2 booting.

MrChromebox

custom coreboot firmware and utilities for your Chromebook/Chromebox, providing a custom fork of EDK2/Tianocore as a coreboot payload for regular UEFI boot. It lets you boot regular GNU/Linux distros, BSD systems and even Windows, on your Chromebook device.

Skulls

easy to install, easy to use coreboot images for Thinkpad laptops with a SeaBIOS payload.

System76 Open Firmware

an open source distribution of firmware utilizing coreboot, EDK2, and System76 firmware applications.

Check each project to see if your particular motherboard is supported, otherwise check coreboot's compatibility list if none of the coreboot distros yet support your board; coreboot release announcements may also provide information.

Embedded controllers

Project

Debian package

Description

Comment

CrOS EC

Chromebooks

crust

crust-firmware

AR100 OpenRISC EC in Allwinner ?SoCs

pse-fw

Intel Programmable Services Engine ARM Cortex-M7 companion cores

system76-ec

System76 Open Source Embedded Controller

System76 laptops

Dasharo system76-ec

Dasharo fork of System76 Open Source Embedded Controller

Clevo/NovaCustom laptops

Keyboards

Project

Debian package

Description

Comment

ZMK

QMK

TMK

Network

Project

Debian package

Description

Comment

bcm5719-fw

BCM5719 firmware reimplementation

Requires LLVM/Clang fork to build

Radio

Project

Debian package

Description

Comment

OpenFWWF

Broadcom/AirForce chipset based WiFi devices

open-ath9k-htc-firmware

firmware-ath9k-htc

Qualcomm Atheros AR7010 and AR9271 USB based WiFi devices

requires binutils/GCC patches

carl9170fw

firmware-linux-free

Atheros AR9170 based WiFi devices

not built from source in Debian; needs sh-elf toolchain, no patches needed

Prism54 FreeMAC

Conexant based WiFi devices

no longer developed, Subversion repository was lost, only a snapshot of the code remains

ESP32 open MAC

ESP32 WiFi devices

In progress

OsmocomBB

GSM devices

not suitable for end users, only researchers

Audio

Project

Debian package

Description

Comment

Sound Open Firmware

firmware-sof-signed

various Intel audio devices

most devices that can run SOF require Intel signatures on the binaries (1 2 3 4 5)

Visual

Project

Debian package

Description

Comment

colorhug2-firmware

?ColorHug family of open display colorimeter hardware

Requires a proprietary toolchain to build

Misc

Project

Debian package

Description

Comment

linux-firmware

firmware-linux-free

misc firmware gathered by Linux developers

not built from source in Debian

fx2lib

Cypress FX/FX2 code library

fx2lafw

sigrok-firmware-fx2lafw

Cypress FX2(LP) based logic analyzers

embeds copy of fx2lib


CategoryHardware