* Avoid default PCIe / XHCI probe on CM4 unless required for the
current boot mode (USB_MSD or NVME).
* Leave PCIe RC in reset state when loading start.elf except for
USB-MSD mode.
* Minor update to BRCM SDRAM settings.
* Add USB_MSD_STARTUP_DELAY option (default 0 option).
This adds a configurable delay (in milliseconds) the first time
the USB host controller is initialised before device enumeration.
Normally, this should not be required. However, some HDD enclosures may
require an extended startup delay in order to spinup drives. Without this
the get-capacity command may stall and timeout.
At present, the update script exits cleanly in the case it finds itself
run on Pi hardware prior to the 4/CM4/400, but if installed on non-Pi
hardware exits with various slightly cryptic errors (missing vcgencmd
and some subsequent math errors from trying to bit-shift the empty
BOARD_INFO variable).
This patch adds a similar exit to the non-Pi 4 case, with a slightly
more useful message.
* Use the latest BRCM SDRAM settings.
* FAT12 support for small bootloader ramdisk images.
* Minor file-system performance optimisations.
* Added recovery.bin config.txt option (erase_eeprom=1) to perform
an SPI chip-erase operation instead of programming the bootloader image.
Display a warning if the bootloader version is downgraded. This can
happen when swapping boot-media and the bootloader configuration is
changed from an OS with an old version of the rpi-eeprom package.
Remove the duplicated "update pending" and "to cancel update" messages.
Interesting changes since the last default release:-
* Display VC_BUILD_ID strings instead of the SHA256 hash
* Add support for [cm4] and [pi400] config conditionals filters.
* Change network boot to use the same "RXID" Ethernet PHY configuration as the 5.10 kernel
* TFTP - reply to duplicate ACKS
* Skip rendering of HDMI diagnostics display for the first 8 seconds unless an error occurs.
* UDP checksum fixes
* Add support for the BCM2711 XHCI controller - BOOT_ORDER 0x5
* XHCI protocol layer fixes for non-VLI controllers
* Avoid USB MSD timeout of there is only one device
* Implement tryboot for OS upgrade fallback
* Check the update-timestamp before applying an update in SELF-UPDATE mode
* Update recovery.bin to 2021-04-13 release for error pattern fix
on SDRAM failure.
Add a new flag '-s' which init scripts should specify to indicate that
the bootloader is running silently to do an automatic update. If '-s'
is specified and the 'default' release is specified then the bootloader
is only updated if it is older than the minimum version number specified
within this script.
This allows the default release to be updated to support new hardware
without forcing updates for existing users. However, if the
configuration is updated then the latest release should be used.
E.g. If network boot is selected via raspi-config or the Raspberry Pi
Imager then it's desirable to get the latest production release to
benefit from any bug fixes. However, a bootloader updated to support
new hardware (e.g. CM4) should not require Pi4B users to to upgrade
their bootloader.
The min-version is set to pieeprom-2020-09-03.