diff --git a/firmware/beta/pieeprom-2020-07-16.bin b/firmware/beta/pieeprom-2020-07-16.bin new file mode 100644 index 0000000..be20acd Binary files /dev/null and b/firmware/beta/pieeprom-2020-07-16.bin differ diff --git a/firmware/beta/recovery.bin b/firmware/beta/recovery.bin index d97b757..255ffd8 100644 Binary files a/firmware/beta/recovery.bin and b/firmware/beta/recovery.bin differ diff --git a/firmware/beta/vl805-000138a1.bin b/firmware/beta/vl805-000138a1.bin new file mode 100644 index 0000000..6aa8cf5 Binary files /dev/null and b/firmware/beta/vl805-000138a1.bin differ diff --git a/firmware/release-notes.md b/firmware/release-notes.md index aecd5ab..c13a3fd 100644 --- a/firmware/release-notes.md +++ b/firmware/release-notes.md @@ -3,8 +3,37 @@ USB MSD boot also requires updated beta GPU firmware. Please read https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2711_bootloader_config.md +## 2020-07-16 Update VL805 FW to 0138A1 and add optional EEPROM write-protect - BETA + * Update the VL805 embedded / standalone FW version to 0138A1 + * User settings of the ASPM bits in the PCI configuration space + link control register are now maintained + * Better full-speed Isochronous endpoint support + * Add eeprom_write_protect config.txt variable which if set configures + the non-volatile status register bits to define the write protect + regions. + * If 1 then configure the write protect regions for both the + bootloader and VLI EEPROMs to cover the entire EEPROM. + * If zero then clear all write protect bits. + * If missing or -1 then don't change the current state. + * The write protect is only effective if the /WP pin is pulled low + e.g. by shorting TP5 to ground. + * WARNING: Previous versions of the bootloader, recovery.bin and vl805 + tool do NOT clear the non-volatile status bits for the VL805 SPI EEPROM. + Consequently, installing an older version will fail/hang if the write + protect bits have not been cleared first (eeprom_write_protect=0) + * Update the vl805 user-space tool to clear the WP bits. + * Add recovery_wait config.txt option which if set to 1 forces the EEPROM + rescue image and flashes the activity LED forever. This is intended for + use with an SD card image which just contains recovery.bin + config.txt + and is used to set/clear WP on multiple boards. + * The write protect functionality works with self-update mode, however, + the bootloader must have already been updated to the version supporting + write protect first i.e. at least two reboots are required. + * Update the HDMI diagnostics screen to display 'RO' after the EEPROM version + if the write status register for the bootloader SPI EEPROM has write protect + bits defined. This does NOT attempt to verify if /WP is low. -## 2020-07-09 Tweak USB port power and clear ACT LED after SPI - BETA +## 2020-07-06 Tweak USB port power and clear ACT LED after SPI - BETA * Increase port power off limit to 5 seconds. * Increase the port power off default to 1 second. This seems to cover most commonly seen USB MSD devices which require the USB port power to be disabled diff --git a/firmware/vl805 b/firmware/vl805 index d646de3..585f318 100755 Binary files a/firmware/vl805 and b/firmware/vl805 differ diff --git a/rpi-eeprom-update b/rpi-eeprom-update index f610a99..710480e 100755 --- a/rpi-eeprom-update +++ b/rpi-eeprom-update @@ -448,7 +448,7 @@ EOF printVersions() { if [ "${ACTION_UPDATE_BOOTLOADER}" = 1 ]; then - echo "BOOTLOADER: update required" + echo "BOOTLOADER: update available" else echo "BOOTLOADER: up-to-date" fi @@ -458,7 +458,7 @@ printVersions() echo " FW DIR: ${FIRMWARE_IMAGE_DIR}" if [ "${ACTION_UPDATE_VL805}" = 1 ]; then - echo "VL805: update required" + echo "VL805: update available" else if [ "$(id -u)" = "0" ]; then echo "VL805: up-to-date" @@ -621,7 +621,7 @@ checkVersion() lookupVersionInfo if [ "${BOOTLOADER_UPDATE_VERSION}" -gt "${BOOTLOADER_CURRENT_VERSION}" ]; then - echo "*** UPDATE REQUIRED ***" + echo "*** UPDATE AVAILABLE ***" printVersions write_status_info "EXIT_UPDATE_REQUIRED" exit ${EXIT_UPDATE_REQUIRED}