2

On my (fully updated) Ubuntu 20.04 RPI 4B, I tried to use rpi-eeprom package from https://github.com/raspberrypi/rpi-eeprom/archive/master.zip to update the 2020-04-16 bootloader

    # vcgencmd bootloader_version 
    Apr 16 2020 18:11:26
    version a5e1b95f320810c69441557c5f5f0a7f2460dfb8 (release)
    timestamp 1587057086

    # ./rpi-eeprom-update -d -f firmware/stable/pieeprom-2020-07-16.bin
    BCM2711 detected
    Dedicated VL805 EEPROM detected
    BOOTFS /boot
    *** INSTALLING firmware/stable/pieeprom-2020-07-16.bin  ***
    BOOTFS /boot
    EEPROM update pending. Please reboot to apply the update.
    #

I checked that in /boot 3 files are indeed copied:

-rw-r--r-- 1 root root       65 Aug  6 11:15 pieeprom.sig
-rw-r--r-- 1 root root   524288 Aug  6 11:15 pieeprom.upd
-rw-r--r-- 1 root root    87784 Aug  6 11:15 recovery.bin

pieeprom.upd is a copy of pieeprom-2020-07-16.bin:

# cmp /boot/pieeprom.upd firmware/stable/pieeprom-2020-07-16.bin
#

sig file is OK:

# cat pieeprom.sig
88f43e537fd3e390c0447a34f0fc266b2305e32b413d0a969401518035bcac3b
# sha256sum pieeprom.upd
88f43e537fd3e390c0447a34f0fc266b2305e32b413d0a969401518035bcac3b  pieeprom.upd
# 

BUT after cold reboot, eeprom is not modified:

# vcgencmd bootloader_version 
Apr 16 2020 18:11:26
version a5e1b95f320810c69441557c5f5f0a7f2460dfb8 (release)
timestamp 1587057086

And /boot/pieeprom.upd file is still there

Did I miss something and is there any way to find why the bootloader upgrade did not happen?

2

rpi-eeprom scripts don't work on ubuntu because they fail to detect BOOTFS correctly you don't have to install Raspbian just to update eeprom/vl805 firmware, you just have to run scripts correctly

fat partition on sd card (/dev/mmcblk0p1) is mounted to /boot on Raspbian systems, and /boot/firmware on Ubuntu when running rpi-eeprom-update on ubuntu, it installs update files to /boot which is just a directory on rootfs and not the boot partition of your sd card

so to update EEPROM on ubuntu you need the following:

git clone https://github.com/raspberrypi/rpi-eeprom.git && cd rpi-eeprom
sudo BOOTFS=/boot/firmware ./rpi-eeprom-update -a

you'd also need userland commands for vl805 which can be installed via libraspberrypi-bin package on ubuntu:

sudo apt install libraspberrypi-bin

after reboot update would be installed

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.