mirror of
https://github.com/raspberrypi/rpi-eeprom.git
synced 2026-01-20 21:13:36 +08:00
18
debian/changelog
vendored
18
debian/changelog
vendored
@@ -1,3 +1,21 @@
|
||||
rpi-eeprom (7.1-1) buster; urgency=medium
|
||||
|
||||
[ Tim Gover ]
|
||||
* test: Fixup paths for config test
|
||||
* rpi-eeprom-update: Change BOOTFS .elf check to a warning
|
||||
* rpi-eeprom-update: Mark USE_FLASHROM as deprecated.
|
||||
* rpi-eeprom-update: Update help for FIRMWARE_RELEASE_STATUS
|
||||
* pieeprom-2020-05-26.bin - USB MSD beta updates
|
||||
* pieeprom-2020-05-27.bin - DPI fix
|
||||
* pieeprom-2020-05-27: Patch release with VL805 self-update fix
|
||||
* rpi-eeprom-update: Update VL805 version check for boards without
|
||||
VL805 EEPROM
|
||||
|
||||
[ andrum99 ]
|
||||
* Update release-notes.md
|
||||
|
||||
-- Serge Schneider <serge@raspberrypi.org> Thu, 28 May 2020 13:33:21 +0100
|
||||
|
||||
rpi-eeprom (7.0-1) buster; urgency=medium
|
||||
|
||||
[ Tim Gover ]
|
||||
|
||||
5
debian/rpi-eeprom-images.install
vendored
5
debian/rpi-eeprom-images.install
vendored
@@ -1 +1,4 @@
|
||||
firmware/* lib/firmware/raspberrypi/bootloader/
|
||||
firmware/critical lib/firmware/raspberrypi/bootloader/
|
||||
firmware/stable lib/firmware/raspberrypi/bootloader/
|
||||
firmware/beta lib/firmware/raspberrypi/bootloader/
|
||||
firmware/release-notes.md lib/firmware/raspberrypi/bootloader/
|
||||
|
||||
1
debian/rules
vendored
1
debian/rules
vendored
@@ -14,7 +14,6 @@ override_dh_auto_build: debian/rpi-eeprom-update.1 debian/rpi-eeprom-config.1
|
||||
override_dh_install:
|
||||
mkdir -p debian/rpi-eeprom/var/lib/raspberrypi/bootloader/backup/
|
||||
dh_install
|
||||
rm -f debian/rpi-eeprom-images/lib/firmware/raspberrypi/bootloader/vl805
|
||||
|
||||
debian/rpi-eeprom-update.1:
|
||||
help2man -N --version-string="${DEB_VERSION_UPSTREAM}" --help-option="-h" \
|
||||
|
||||
BIN
firmware/beta/pieeprom-2020-05-26.bin
Normal file
BIN
firmware/beta/pieeprom-2020-05-26.bin
Normal file
Binary file not shown.
BIN
firmware/beta/pieeprom-2020-05-27.bin
Normal file
BIN
firmware/beta/pieeprom-2020-05-27.bin
Normal file
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,23 @@
|
||||
# Raspberry Pi4 bootloader EEPROM release notes
|
||||
|
||||
## 2020-05-27 Fix DPI issue - BETA
|
||||
* Resolve: DPI failure after HDMI diagnostics screen in beta bootloader #133
|
||||
* Resolve: VL805 readback failure in the bootloader #134
|
||||
|
||||
## 2020-05-26 USB MSD updates - BETA
|
||||
* Resolve: USB boot fails if the GPT contains no basic data or EFI partitions #130
|
||||
* Resolve: Fix default BOOT_ORDER in mass storage beta #129
|
||||
* Resolve: Add support for booting from a "superfloppy" disk #120
|
||||
* Resolve: USB MSD timeout message - incorrect units #131
|
||||
* Resolve: Recognize efi partition (0xef) as a valid boot #126
|
||||
* The HDMI diagnostics screen now displays the most significant bytes
|
||||
of the SHA-256 of the config.txt file.
|
||||
|
||||
## 2020-05-26 rpi-eeprom-update
|
||||
* Mark USE_FLASHROM as deprecated.
|
||||
* Resolve: Unnecessary check for '*.elf' in BOOTFS #92
|
||||
* Update help for FIRMWARE_RELEASE_STATUS.
|
||||
|
||||
## 2020-05-15 Add pieeprom-2020-05-15 beta with USB boot
|
||||
* USB mass storage boot will NOT work without the updated firmware
|
||||
start.elf binaries. These will probably be released via rpi-update
|
||||
|
||||
@@ -46,7 +46,16 @@ SPI_SPEED=16000
|
||||
# Timestamp for first release which doesn't have a timestamp field
|
||||
BOOTLOADER_FIRST_VERSION=1557513636
|
||||
EEPROM_SIZE=524288
|
||||
BOARD_INFO=
|
||||
BOARD_REVISION=
|
||||
BOARD_TYPE=
|
||||
|
||||
# Newer board revisions embed the VLI firmware in the bootloader EEPROM and
|
||||
# there is no way to separately update the VLI firmware. Consequently,
|
||||
# standalone vl805 update files do not trigger automatic updates.
|
||||
# Recovery.bin and the the SPI bootloader ignore vl805.bin files on boards
|
||||
# without a dedicate VL805 EEPROM.
|
||||
HAVE_VL805_EEPROM=0
|
||||
|
||||
# Simple bootloader which is able to load start.elf in the event of a power
|
||||
# cut. This runs SDRAM at low speed and may have reduced functionality but
|
||||
@@ -187,6 +196,7 @@ applyUpdate() {
|
||||
fi
|
||||
|
||||
if [ -f "${BOOTLOADER_UPDATE_IMAGE}" ]; then
|
||||
echo "WARNING: USE_FLASHROM is deprecated."
|
||||
# Bootloader EEPROM chip-select is muxed with audio pin so disable audio
|
||||
# LDO first to avoid sending noise to analog audio.
|
||||
"${VCMAILBOX}" 0x00030056 4 4 0 > /dev/null || true
|
||||
@@ -251,14 +261,25 @@ getBootloaderUpdateVersion() {
|
||||
}
|
||||
|
||||
checkDependencies() {
|
||||
BOARD_REVISION="$(sed -n '/^Revision/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo)"
|
||||
if [ $(((0x$BOARD_REVISION >> 23) & 1)) -ne 0 ] && [ $(((0x$BOARD_REVISION >> 12) & 15)) -eq 3 ]; then
|
||||
BOARD_INFO="$(sed -n '/^Revision/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo)"
|
||||
if [ $(((0x$BOARD_INFO >> 23) & 1)) -ne 0 ] && [ $(((0x$BOARD_INFO >> 12) & 15)) -eq 3 ]; then
|
||||
echo "BCM2711 detected"
|
||||
else
|
||||
# Not a BCM2711, no EEPROMs to update.
|
||||
exit ${EXIT_SUCCESS}
|
||||
fi
|
||||
|
||||
BOARD_TYPE=$(((0x$BOARD_INFO >> 4) & 0xff))
|
||||
BOARD_REVISION=$((0x$BOARD_INFO & 0xf))
|
||||
|
||||
if [ ${BOARD_TYPE} = 17 ] && [ ${BOARD_REVISION} \< 4 ]; then
|
||||
echo "Dedicated VL805 EEPROM detected"
|
||||
HAVE_VL805_EEPROM=1
|
||||
else
|
||||
echo "VL805 firmware in bootloader EEPROM"
|
||||
HAVE_VL805_EEPROM=0
|
||||
fi
|
||||
|
||||
if ! command -v vcgencmd > /dev/null; then
|
||||
die "vcgencmd not found. On Debian, try installing the libraspberrypi-bin package."
|
||||
fi
|
||||
@@ -269,8 +290,8 @@ checkDependencies() {
|
||||
|
||||
# If a board revision specific firmware directory is defined then use that
|
||||
# in preference to the generic directory.
|
||||
if [ -d "${FIRMWARE_IMAGE_DIR}-${BOARD_REVISION}" ]; then
|
||||
FIRMWARE_IMAGE_DIR="${FIRMWARE_IMAGE_DIR}-${BOARD_REVISION}"
|
||||
if [ -d "${FIRMWARE_IMAGE_DIR}-${BOARD_INFO}" ]; then
|
||||
FIRMWARE_IMAGE_DIR="${FIRMWARE_IMAGE_DIR}-${BOARD_INFO}"
|
||||
fi
|
||||
|
||||
if vcgencmd bootloader_config | grep -qi "Command not registered"; then
|
||||
@@ -358,6 +379,9 @@ and POWER_OFF_ON_HALT settings.
|
||||
|
||||
USE_FLASHROM
|
||||
|
||||
USE_FLASHROM is deprecated and there is no support for this. The muxing
|
||||
of the SPI pins causes too many issues for this to ever be reliable.
|
||||
|
||||
The flashrom update mechanism may be enabled by setting USE_FLASHROM=1. This
|
||||
also selects the vl805 tool instead of using recovery.bin to perform the
|
||||
update. This may be desirable if an immediate update is required or if an
|
||||
@@ -370,15 +394,27 @@ those devices to stop working until after the system is reboot.
|
||||
|
||||
FIRMWARE_RELEASE_STATUS
|
||||
|
||||
Specifies the release status of the firmware to apply. The default is 'critical'
|
||||
which is the most stable production version. Alternatively, 'stable' or
|
||||
'beta' may be selected for development releases.
|
||||
A 'critical' update is the latest stable production version and is normally
|
||||
only updated after it has been tested via the 'beta' and then a 'stable' release.
|
||||
Specifies the release status of the firmware to apply. The default is 'critical'.
|
||||
|
||||
Before selecting a firmware release directory this script checks whether there
|
||||
is a board revision specific variant e.g. critical-c03111. If present then the
|
||||
board-revision specific version is used in preference.
|
||||
|
||||
Release status:
|
||||
|
||||
critical: The latest production release plus important security or hardware compatibility bug fixes.
|
||||
|
||||
stable: Contains new features have already undergone some beta testing.
|
||||
These are candidats for new production releases.
|
||||
|
||||
beta: New features, bug fixes for development/test purposes. Use at your own
|
||||
risk!
|
||||
|
||||
As far as rpi-eeprom-update is concerned FIRMWARE_RELEASE_STATUS is just
|
||||
the subdirectory mapping under ${FIRMWARE_ROOT}. Therefore, custom release
|
||||
directories are supported by creating the relevant directory and changing
|
||||
the FIRMWARE_RELEASE_STATUS environment variable.
|
||||
|
||||
Examples:
|
||||
To extract the configuration file from an EEPROM image:
|
||||
rpi-eeprom-config pieeprom.bin --out bootconf.txt
|
||||
@@ -440,7 +476,11 @@ findBootFS()
|
||||
# If BOOTFS is not a directory or doesn't contain any .elf files then
|
||||
# it's probably not the boot partition.
|
||||
[ -d "${BOOTFS}" ] || die "BOOTFS: \"${BOOTFS}\" is not a directory"
|
||||
[ "$(find "${BOOTFS}/" -name "*.elf" | wc -l)" -gt 0 ] || die "BOOTFS: \"${BOOTFS}\" contains no .elf files"
|
||||
if [ "$(find "${BOOTFS}/" -name "*.elf" | wc -l)" -gt 0 ]; then
|
||||
echo "BOOTFS ${BOOTFS}"
|
||||
else
|
||||
echo "WARNING: BOOTFS: \"${BOOTFS}\" contains no .elf files. Please check boot directory"
|
||||
fi
|
||||
}
|
||||
|
||||
getVL805CurrentVersion()
|
||||
@@ -485,7 +525,6 @@ lookupVersionInfo()
|
||||
getBootloaderUpdateVersion
|
||||
|
||||
getVL805CurrentVersion
|
||||
getVL805UpdateVersion
|
||||
|
||||
if [ "${BOOTLOADER_UPDATE_VERSION}" -gt "${BOOTLOADER_CURRENT_VERSION}" ]; then
|
||||
ACTION_UPDATE_BOOTLOADER=1
|
||||
@@ -493,12 +532,18 @@ lookupVersionInfo()
|
||||
BOOTLOADER_UPDATE_IMAGE=""
|
||||
fi
|
||||
|
||||
if [ -n "${VL805_CURRENT_VERSION}" ] && [ -n "${VL805_UPDATE_VERSION}" ]; then
|
||||
if [ "${VL805_CURRENT_VERSION}" \< "${VL805_UPDATE_VERSION}" ]; then
|
||||
ACTION_UPDATE_VL805=1
|
||||
else
|
||||
VL805_UPDATE_IMAGE=""
|
||||
if [ "${HAVE_VL805_EEPROM}" = 1 ]; then
|
||||
getVL805UpdateVersion
|
||||
if [ -n "${VL805_CURRENT_VERSION}" ] && [ -n "${VL805_UPDATE_VERSION}" ]; then
|
||||
if [ "${VL805_CURRENT_VERSION}" \< "${VL805_UPDATE_VERSION}" ]; then
|
||||
ACTION_UPDATE_VL805=1
|
||||
else
|
||||
VL805_UPDATE_IMAGE=""
|
||||
fi
|
||||
fi
|
||||
else
|
||||
VL805_UPDATE_VERSION="${VL805_CURRENT_VERSION}"
|
||||
ACTION_UPDATE_VL805=0
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -141,17 +141,17 @@ check_conf_size_too_large()
|
||||
fi
|
||||
}
|
||||
|
||||
check_loopback "../firmware/critical/pieeprom-2019-07-15.bin" "bootconf-2019-07-15.txt"
|
||||
check_loopback "../firmware/old/beta/pieeprom-2019-07-15.bin" "bootconf-2019-07-15.txt"
|
||||
cleanup
|
||||
|
||||
check_update "../firmware/critical/pieeprom-2019-07-15.bin" "pieeprom-2019-07-15-freeze.bin" "bootconf-2019-07-15-freeze.txt"
|
||||
check_update "../firmware/old/beta/pieeprom-2019-07-15.bin" "pieeprom-2019-07-15-freeze.bin" "bootconf-2019-07-15-freeze.txt"
|
||||
cleanup
|
||||
|
||||
check_reduce_size "../firmware/critical/pieeprom-2019-07-15.bin" "bootconf-2019-07-15.txt"
|
||||
check_reduce_size "../firmware/old/beta/pieeprom-2019-07-15.bin" "bootconf-2019-07-15.txt"
|
||||
cleanup
|
||||
|
||||
check_conf_size_large "../firmware/critical/pieeprom-2019-07-15.bin"
|
||||
check_conf_size_large "../firmware/old/beta/pieeprom-2019-07-15.bin"
|
||||
cleanup
|
||||
|
||||
check_conf_size_too_large "../firmware/critical/pieeprom-2019-07-15.bin"
|
||||
check_conf_size_too_large "../firmware/old/beta/pieeprom-2019-07-15.bin"
|
||||
cleanup
|
||||
|
||||
Reference in New Issue
Block a user