EMB-201 · Embedded Linux & BSP · Advanced
U-Boot Porting & Customisation — full syllabus
The bootloader layer: board bring-up, environment, boot scripts and recovery paths.
Who this course is for
BSP engineers porting Linux to new or custom boards, for whom the bootloader is the first code that runs and the last thing standing between the product and a brick.
Prerequisites
- Comfort with serial consoles and embedded boot concepts
- C and basic ARM architecture knowledge
- Yocto or Buildroot experience helpful (lab boards provided)
Course outline
Day 1 — U-Boot architecture and the boot flow
- What the boot ROM hands off: SPL, TPL and the stage chain
- U-Boot's driver model and how it differs from the kernel's
- Device tree in U-Boot: same syntax, different consumers
- Console, MMC and network bring-up order on a new board
- Reading an SPL banner and early boot log as a diagnostic tool
Day 2 — Porting to a board
- Board port anatomy: defconfig, board files and device tree
- Environment storage: MMC, flash and nowhere — and the trade-offs
- Boot scripts, bootstd and distro boot compared
- Network boot: TFTP, DHCP and bootp for development loops
- Updating U-Boot safely on a board you cannot afford to brick
Day 3 — Speed and survival
- Measuring boot time from reset to kernel handover
- Falcon mode: SPL booting the kernel directly, and what you give up
- Recovery paths: DFU, fastboot, netconsole and vendor rescue modes
- Failsafe and A/B boot logic from the bootloader side
- An anti-bricking checklist: what to verify before field deployment
Hands-on labs
- Lab: Establish serial control of the lab board's SPL and U-Boot, and map each banner line to a stage of the boot flow
- Lab: Port or enable a peripheral in U-Boot (MMC or network) on the lab board and prove it works from the U-Boot shell
- Lab: Write a boot script with a fallback path, store the environment persistently and test both paths
- Lab: Measure boot-to-handover time, enable falcon mode, and quantify what it saved and what it cost
- Lab: Corrupt the boot flow deliberately (bad environment, bad kernel image) and recover using a documented procedure
Capstone project
Take the lab board from stock to a defensible boot configuration: a ported or customised U-Boot with persistent environment, a scripted boot with a tested fallback, a measured boot-time budget and a written recovery procedure — demonstrated live, including one induced failure recovered without a debugger.
What you leave with
- A working U-Boot port or customisation on real hardware
- Fluency with the boot flow: SPL, handoff, device tree, driver model
- Boot scripts and environment design with tested fallbacks
- Falcon mode and boot-time measurement experience
- A recovery and anti-bricking procedure you have actually executed
Upcoming dates
| Dates | Where | Seats | Early bird | Regular | |
|---|---|---|---|---|---|
| 18 Oct – 20 Oct 20263 full days | RiyadhIn person · KAFD Conference Centre | 3 of 14 | — | SAR 9,000 | |
| 25 Oct – 27 Oct 20263 full days | Kuwait CityIn person · Al Hamra Tower | 8 of 14 | — | KWD 740 | |
| 25 Oct – 27 Oct 20263 full days | MuscatIn person · Knowledge Oasis Muscat | 3 of 14 | — | OMR 920 | |
| 1 Nov – 8 Nov 20266 half-days | Gulf bandLive online · 09:00–13:00 GMT+3 | 3 of 20 | — | US$1,750 | |
| 2 Nov – 4 Nov 20263 full days | OttawaIn person · Kanata North Tech Park | 8 of 14 | — | CAD 3,260 | |
| 9 Nov – 11 Nov 20263 full days | TorontoIn person · MaRS Discovery District | 3 of 14 | CAD 2,930until 10 Oct | ||
| 9 Nov – 11 Nov 20263 full days | LondonIn person · Shoreditch Works | 8 of 14 | GBP 1,680until 10 Oct | ||
| 9 Nov – 16 Nov 20266 half-days | Europe bandLive online · 09:00–13:00 CET | 8 of 20 | US$1,580until 10 Oct | ||
| 9 Nov – 16 Nov 20266 half-days | Americas bandLive online · 13:00–17:00 ET | 13 of 20 | US$1,580until 10 Oct | ||
| 16 Nov – 18 Nov 20263 full days | BerlinIn person · Factory Görlitzer Park | 3 of 14 | EUR 1,990until 17 Oct |
Book a seat, or bring this course to your team
Seats can be reserved online; private delivery runs on-site or live online, adapted to your stack.
Questions about fit or prerequisites? Email hello@kernelsystems.academy. To save this syllabus, print this page to PDF from your browser.