-
The MSD (and secure-boot variant) bootloader has been updated to fully initialise SDRAM in order to resolve problems when using this method to run Linux ramdisks / initrd. Therefore, MSD boot will not work on a system with a blank or corrupted EEPROM. If so, an error message will be output to the UART and the EEPROM should be programmed using the recovery option.
-
Select the latest, stable bootloader EEPROM release which supports NVMe. Update start4.elf (USB MSD firmware) to top-of-tree.
-
The manufacuring image now enables SELF_UDPATE and NETWORK boot by default in order to make the initial setup for CM4 based products easier. For embedded or physically inaccessible products the bootloader should be updated to disable self-update. Hardware write-protection should also be configured. The symlink from pieeprom-2021-02-16 to pieeprom.original.bin has been replaced with a simple copy of the file because the Windows installer doesn't seem to support symlinks.
-
* Update the EEPROM image to the latest/stable release. * Change the default boot-order to 0xf541 so that USB MSD will boot from the type-A sockets on the CM4 IO board. * Add simple update-pieeprom.sh utility with latest rpi-eeprom-config to make it easier to refresh the EEPROM image with a new configuration.
-
* Add 2711 bootcode and FW binaries with the 4 suffix. * Use the device descriptor to select the correct bootcode and hack it so that bootcode.bin translates to bootcode4.bin on a Pi4 allowing the files to remain in the same directory. * Add the latest best for recovery.bin and pieeprom.bin for CM4 * Update the installer. Move the second stage preparation until after the device descriptor has been retrieved because BCM2711 needs a different bootcode.bin. If the '-d' argument specified then check for bootcode.bin in the specified directory and don't fail over to the embedded fmem files. Remove the default 'msd' directory and the references to /usr/share because the behaviour conflicts with the original change to use the fmem files.