The Deinde Concept U-Boot Documentation
Note
This documents the Deinde Concept Tree, an independent, experimental downstream tree for U-Boot maintained by an independent maintainer. It is not affiliated with, sponsored by, or endorsed by the Software Freedom Conservancy (SFC) or the official Das U-Boot project.
The tree is a proving ground for large-scale features and refactoring, run in the open with the aim of feeding proven work back to mainline U-Boot. Pages here may therefore describe behaviour which does not exist in mainline, or which differs from it.
Mainline U-Boot: https://u-boot-project.org
About this tree: https://deinde.dev/u-boot/
This is the top level of the U-Boot’s documentation tree. U-Boot documentation, like the U-Boot itself, is very much a work in progress; that is especially true as we work to integrate our many scattered documents into a coherent whole. Please note that improvements to the documentation are welcome; join the U-Boot list at https://lists.u-boot-project.org/mailman/listinfo/u-boot if you want to help out.
Contributing Guidelines
Note
To contribute to this tree, open a merge request against concept.deinde.dev/u-boot/u-boot. Patches are not accepted by email here; the tree’s mailing list is for discussion.
The guidelines below describe contributing to mainline U-Boot, which is done by sending patches to the U-Boot mailing list. Since the aim of this tree is to feed proven work back upstream, anything intended for mainline should follow them as well.
General guidelines for contributing to the U-Boot project.
User-oriented documentation
The following manuals are written for users of the U-Boot - those who are trying to get it to work optimally on a given system.
- Build U-Boot
- Learn about U-Boot
- Use U-Boot
- Booting from TPL/SPL
- Block Maps (blkmap)
- Boot Loader Specification (BLS)
- U-Boot console handling
- Device Firmware Upgrade (DFU)
- Environment Variables
- Device Tree Overlays
- Flat Image Tree (FIT)
- LUKS (Linux Unified Key Setup)
- TKey Full Disk Encryption
- Network console
- Partitions
- PXE Boot and extlinux.conf
- Command-line Parsing
- Semihosting
- SMBIOS support in U-Boot
- Measured Boot
- Universal Payload
- Shell commands
- Booting OS
- File Systems
Developer-oriented documentation
The following manuals are written for developers of the U-Boot - those who want to contribute to U-Boot.
U-Boot API documentation
These books get into the details of how specific U-Boot subsystems work from the point of view of a U-Boot developer. Much of the information here is taken directly from the U-Boot source, with supplemental material added as needed (or at least as we managed to add it - probably not all that is needed).
- U-Boot API documentation
- Boot Count Limit
- Clock API
- Device firmware update
- Driver Model
- UEFI subsystem
- Events
- File system API
- Option Parsing
- Interrupt API
- Generic System Interconnect Subsystem
- I3C Subsystem
- LED
- Legacy LED
- Linker-Generated Arrays
- Logging API
- NVMEM API
- Console Pager
- Partition API
- Pinctrl and Pinmux
- Random number generation
- Sandbox
- Serial system
- Long jump API
- System reset
- Test Framework
- Timer Subsystem
- Unicode support
- Uthread API
Architecture-specific doc
These books provide programming details about architecture-specific implementation.
Board-specific doc
These books provide details about board-specific information. They are organized in a vendor subdirectory.
- Board-specific doc
- ACER
- Actions
- Advantech
- Andes Tech
- Allied Telesis
- Allwinner (sunxi) boards
- Amlogic
- Anbernic
- Apple
- Arm Ltd
- Aspeed
- ASUS
- Atmel
- Beacon
- BeagleBoard.org
- Broadcom
- BSH Hausgeraete GmbH
- Cloos
- Congatec
- Cool Pi
- Coreboot
- Emcraft
- Emulation
- Gateworks
- Gigabyte
- Highbank
- HiSilicon
- HTC
- Intel
- Kontron
- Lenovo
- LG
- Luckfox
- Liebherr
- Mediatek
- Microchip
- Microsoft
- Motorola
- NVIDIA
- NXP Semiconductors
- Onion
- OpenPiton
- OUYA
- Pegatron
- PHYTEC
- Purism SPC
- Qualcomm
- Qnap
- Renesas
- Rockchip
- Samsung
- Schneider Electric
- Sielaff
- Siemens
- SiFive
- Sipeed
- Socionext
- Sophgo
- SpacemiT
- STMicroelectronics
- StarFive
- ST-Ericsson
- TBS
- T-HEAD
- Theobroma Systems
- Texas Instruments
- Toradex
- TQ-Systems
- Variscite
- WEXLER
- XenGuestARM64
- Xiaomi
- Xilinx
Android-specific doc
These books provide information about booting the Android OS from U-Boot, manipulating Android images from U-Boot shell and discusses other Android-specific features available in U-Boot.