During the Linux boot process, the boot console is responsible for relaying boot messages to the user. On embedded systems this console is often attached to a serial port that can only handle a maximum data rate of a few kilobytes per second which degrades overall boot time. In this post we’ll explore how the …
Tag: Raspberry Pi 3 Model B+
Booting Linux from Linux with kexec
The Linux kernel feature known as ‘kexec‘ allows you to boot from the currently running kernel into a new kernel – effectively turning a Linux distribution into a feature-rich bootloader. This shouldn’t be confused with virtualisation technologies that allow you to run Linux as a guest. This capability has been around since 2005 (2.6.13) and …
A Global Variable in U-Boot that caused a Hang
The best type of software bug is one where you get to learn something along the way. Like any good disaster, the bug we’re going to explore is one that arose from a chain of unexpected events and bad assumptions. This bug relates to uninitialised data and gives a good insight into the inner workings …
Build and Boot U-Boot and Linux on a Raspberry Pi 3 Model B+
With more than 30 million units in existence, the Raspberry Pi provides for an accessible and low-cost way to play with an ARMv8 embedded device using the latest and greatest upstream sources. In this post we’ll walk through the steps required to build U-Boot, the Linux kernel and a filesystem, as well as the steps …