Open paxswill opened 3 years ago
Turns out this is easier than I thought:
pieeprom.upd
and pieeprom.sig
respectively) in the TFTP root.On startup, the Pi checks for the signature file during startup. If the timestamp in the signature is newer than the timestamp in the current firmware, the Pi loads the actual update file, writes it, and continues on it's merry way (I think that last part is true. The Pi might to a reboot, then boot.).
The hard part of this is that the scripts from raspberrypi/rpi-eeprom assumer in a number of ways that they're running on Raspbian:
/sys/firmware/devicetree/base/aliases/blconfig
).vcgencmd
is used as a fallback for accessing the current bootloader config.Solving all of this is outside of the scope of this project, and could probably be coordinated with Debian/Ubuntu better:
libraspberrypi0
and libraspberrypi-bin
packages, which provide vcgencmd
).flash-kernel
can update firmware too.
There's some sort of mechanism for the RPi4 to update it's firmware the same say it netboots.