Skip to main content

Raspbeery-Pi bootloader update

The Rasperry-Pi 4 has an eeprom that contains the first stage bootloader, that gets constantly upgraded and can be configured in many different ways. Information about the eeprom and other related topics can be found in the section below.

Most of the tools implemented by the Rasperry-Pi Foundation are intended to be used on the Pi itself. To make it easier to serve custom configured eeprom updates to the Rasperry-Pi, without generating them on another Pi you can use the create_eeprom_image script in the networkboot repository.

It can be used to generate updates that can be applied through an SD card or with PXE. At this point it's only possible to customize a few options with that script, but it already adjusts a couple of settings that improve the PXE boot performance.

At the moment the script only supports Linux.

  1. Clone repository and cd into directory
git clone https://code.fbi.h-da.de/pi-lab/networkboot.git && cd networkboot/eeprom

  1. Run script
tip

run ./create_eeprom_image -h for more information how to use the script

  1. Generate firmware image and copy it to the bootfiles directory
./create_eeprom_image -o <bootfiles_dir>
  1. Start the Rasperry-Pi you want to update

  1. Verify bootloader configuration
vcgencmd bootloader_config && vcgencmd bootloader_version

Bootloader documentation#