mirror of
https://github.com/raspberrypi/rpi-eeprom.git
synced 2026-01-20 21:13:36 +08:00
Merge branch 'master' into debian/bookworm
This commit is contained in:
BIN
firmware-2711/latest/pieeprom-2024-10-10.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2024-10-10.bin
Normal file
Binary file not shown.
BIN
firmware-2711/latest/pieeprom-2024-10-21.bin
Normal file
BIN
firmware-2711/latest/pieeprom-2024-10-21.bin
Normal file
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,41 @@
|
|||||||
# Raspberry Pi4 bootloader EEPROM release notes
|
# Raspberry Pi4 bootloader EEPROM release notes
|
||||||
|
|
||||||
|
## 2024-10-21: Fix PCIe BAR issue for some switches (latest)
|
||||||
|
|
||||||
|
* Boot-menu improvements
|
||||||
|
Remain in the forced boot mode until the menu is used to select a different
|
||||||
|
boot-mode or reset to the original boot-order.
|
||||||
|
|
||||||
|
## 2024-10-10: Use soft-reset to preseve SDRAM contents after ramoops (latest)
|
||||||
|
|
||||||
|
* SD card high-speed/low-voltage mode can only be exited by powercycling.
|
||||||
|
Pi 4s before rev 1.4 lack the power switch required to do this, so must
|
||||||
|
resort to a global reset that turns off many things, including SDRAM.
|
||||||
|
|
||||||
|
To ensure correct operation, the bootloader checks that the SD I/O
|
||||||
|
voltage is the expected 3.3V, forcing a power cycle if it isn't.
|
||||||
|
However, this doesn't take advantage of presence of the dedicated SD
|
||||||
|
power switch, always forcing a global reset, a consequence of which can
|
||||||
|
be the loss of SDRAM content - including any ramoops dump of the crash
|
||||||
|
logs.
|
||||||
|
|
||||||
|
Make the bootloader more SD_PWR_ON aware, only triggering a global reset
|
||||||
|
if one isn't found.
|
||||||
|
See: https://github.com/raspberrypi/linux/issues/5298
|
||||||
|
* Remove requirement for GPT ptable array to be at LBA-2
|
||||||
|
See: https://github.com/raspberrypi/rpi-eeprom/issues/585
|
||||||
|
* Introduce a new boot-menu feature where pressing SPACE at power on
|
||||||
|
gives the user a one-shot option to select a different boot mode.
|
||||||
|
e.g. Select USB boot if the default SD card is corrupted or unavailable.
|
||||||
|
* Display the bootloader network-install UI for longer on a cold boot to make
|
||||||
|
this feature more visible to first time users.
|
||||||
|
To revert to the previous behaviour remove NET_INSTALL_AT_POWER_ON=1
|
||||||
|
from the bootloader config.
|
||||||
|
* Default to 2GB start for PCI bus addresses on 2711 and 2712
|
||||||
|
This change also constrains the window size to 2GB, so all PCI bus address
|
||||||
|
assignments fall below 4GB, avoiding a potential bug with 32-bit BARs in
|
||||||
|
esoteric bus topologies (e.g. lots of GPUs).
|
||||||
|
|
||||||
## 2024-09-05: Fix self-update if EEPROM is write-protected (latest)
|
## 2024-09-05: Fix self-update if EEPROM is write-protected (latest)
|
||||||
* arm_dt: Consult the hat_map for all HATs
|
* arm_dt: Consult the hat_map for all HATs
|
||||||
* USB boot - ignore RP2 / RP3 MSD device in BOOTSEL mode.
|
* USB boot - ignore RP2 / RP3 MSD device in BOOTSEL mode.
|
||||||
@@ -11,7 +47,7 @@
|
|||||||
## 2024-08-14 (recovery.bin) - Add support for OTP metadata (latest)
|
## 2024-08-14 (recovery.bin) - Add support for OTP metadata (latest)
|
||||||
* Update to recovery.bin to output metadata about OTP during rpiboot
|
* Update to recovery.bin to output metadata about OTP during rpiboot
|
||||||
|
|
||||||
## 2024-07-30 - USB boot fixes for CM4-S and interop improvments (latest)
|
## 2024-07-30 - USB boot fixes for CM4-S and interop improvements (latest)
|
||||||
* Resolve USB boot regression in 2024-04-17 relase on CM4S
|
* Resolve USB boot regression in 2024-04-17 relase on CM4S
|
||||||
See https://github.com/raspberrypi/rpi-eeprom/issues/588
|
See https://github.com/raspberrypi/rpi-eeprom/issues/588
|
||||||
* Improve compatibility for booting from some USB SD card readers
|
* Improve compatibility for booting from some USB SD card readers
|
||||||
|
|||||||
BIN
firmware-2712/latest/pieeprom-2024-10-10.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2024-10-10.bin
Normal file
Binary file not shown.
BIN
firmware-2712/latest/pieeprom-2024-10-21.bin
Normal file
BIN
firmware-2712/latest/pieeprom-2024-10-21.bin
Normal file
Binary file not shown.
Binary file not shown.
@@ -1,5 +1,40 @@
|
|||||||
# Raspberry Pi5 bootloader EEPROM release notes
|
# Raspberry Pi5 bootloader EEPROM release notes
|
||||||
|
|
||||||
|
## 2024-10-21: Fix PCIe BAR issue for some switches (latest)
|
||||||
|
|
||||||
|
* Fix PCIe BAR setup issue which prevented NVMe boot from working with some PCIe switches
|
||||||
|
See: https://github.com/raspberrypi/firmware/issues/1833
|
||||||
|
* Boot-menu improvements
|
||||||
|
Remain in the forced boot mode until the menu is used to select a different
|
||||||
|
boot-mode or reset to the original boot-order.
|
||||||
|
|
||||||
|
## 2024-10-10: Add support to override the boot-mode at power on (latest)
|
||||||
|
|
||||||
|
* Introduce a new boot-menu feature where pressing SPACE at power on
|
||||||
|
gives the user a one-shot option to select a different boot mode.
|
||||||
|
e.g. Select USB boot if the default SD card is corrupted or unavailable.
|
||||||
|
* Display the bootloader network-install UI for longer on a cold boot to make
|
||||||
|
this feature more visible to first time users.
|
||||||
|
To revert to the previous behaviour remove NET_INSTALL_AT_POWER_ON=1
|
||||||
|
from the bootloader config.
|
||||||
|
* Support non-UUID HAT mapping
|
||||||
|
Extend the HAT map support to allow matching on product and vendor
|
||||||
|
strings, as well as product ID and version. As a minimum, there must
|
||||||
|
be a product string - if that matches, the other keys are considered.
|
||||||
|
Without a product key, the UUID is compared as before.
|
||||||
|
* Remove requirement for GPT ptable array to be at LBA-2
|
||||||
|
See: https://github.com/raspberrypi/rpi-eeprom/issues/585
|
||||||
|
* 2712C1 clock manager improvements to slightly reduce idle power ~50mW saving
|
||||||
|
* Adjust SDRAM page-hold and auto-precharge to improve performance.
|
||||||
|
~2% improvement with Geekbench 6
|
||||||
|
* armstubs: 2712: Rebuild with updated max-power throttle and direct stream settings
|
||||||
|
See: https://github.com/raspberrypi/arm-trusted-firmware/commit/fc45bc492dd655f9ea4893a384527341a48cf03d
|
||||||
|
* debug: Only display the program_pubkey log if configuring secure-boot
|
||||||
|
* Default to 2GB start for PCI bus addresses on 2711 and 2712
|
||||||
|
This change also constrains the window size to 2GB, so all PCI bus address
|
||||||
|
assignments fall below 4GB, avoiding a potential bug with 32-bit BARs in
|
||||||
|
esoteric bus topologies (e.g. lots of GPUs).
|
||||||
|
|
||||||
## 2024-09-24: Promote 2024-09-23 release (default) (automatic update)
|
## 2024-09-24: Promote 2024-09-23 release (default) (automatic update)
|
||||||
|
|
||||||
## 2024-09-23: SDRAM performance tuning (latest)
|
## 2024-09-23: SDRAM performance tuning (latest)
|
||||||
|
|||||||
71
imager/release-fw
Executable file
71
imager/release-fw
Executable file
@@ -0,0 +1,71 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
script_dir=$(cd "$(dirname "$0")" && pwd)
|
||||||
|
|
||||||
|
die() {
|
||||||
|
echo "$@" >&2
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
if [ -d "${TMP_DIR}" ]; then
|
||||||
|
rm -rf "${TMP_DIR}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
trap cleanup EXIT
|
||||||
|
TMP_DIR=$(mktemp -d)
|
||||||
|
tarball="$1"
|
||||||
|
|
||||||
|
do_release() {
|
||||||
|
(
|
||||||
|
branch="${1}"
|
||||||
|
chip_id="${2}"
|
||||||
|
|
||||||
|
if [ "${chip_id}" != "2711" ] && [ "${chip_id}" != "2712" ]; then
|
||||||
|
die "Invalid chip_id \"${branch}\" chip_id must be \"2711\" or \"2712\""
|
||||||
|
fi
|
||||||
|
cd "${TMP_DIR}/${chip_id}"
|
||||||
|
|
||||||
|
fw_out="${script_dir}/../firmware-${chip_id}/${branch}"
|
||||||
|
|
||||||
|
pwd
|
||||||
|
TS="$(strings recovery.bin | grep BUILD_TIMESTAMP | sed 's/.*=//g')"
|
||||||
|
DATE="$(date -u -d@${TS} +%Y-%m-%d)"
|
||||||
|
echo "recovery.bin ${TS} ${DATE}"
|
||||||
|
cp -fv recovery.bin "${fw_out}"
|
||||||
|
|
||||||
|
TS="$(strings pieeprom.bin | grep BUILD_TIMESTAMP | sed 's/.*=//g')"
|
||||||
|
DATE="$(date -u -d@${TS} +%Y-%m-%d)"
|
||||||
|
echo "pieeprom.bin ${TS} ${DATE}"
|
||||||
|
cp -fv pieeprom.bin "${fw_out}/pieeprom-${DATE}.bin"
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
usage()
|
||||||
|
{
|
||||||
|
cat <<EOF
|
||||||
|
Usage:
|
||||||
|
release-fw: release.tar default|latest 2711 2712
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
[ -f "$tarball" ] || die "Release tarball ${1} not found"
|
||||||
|
cd "${TMP_DIR}"
|
||||||
|
tar -vxf "${tarball}"
|
||||||
|
|
||||||
|
branch="${2}"
|
||||||
|
if [ "${branch}" != "default" ] && [ "${branch}" != "latest" ]; then
|
||||||
|
die "Invalid branch \"${branch}\" branch must be \"default\" or \"latest\""
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "${3}" ]; then
|
||||||
|
do_release "${branch}" "${3}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "${4}" ]; then
|
||||||
|
do_release "${branch}" "${4}"
|
||||||
|
fi
|
||||||
|
|
||||||
@@ -488,7 +488,7 @@ Operating modes:
|
|||||||
rpi-eeprom-config --config boot.conf --out newimage.bin pieeprom.bin
|
rpi-eeprom-config --config boot.conf --out newimage.bin pieeprom.bin
|
||||||
|
|
||||||
The new image file can be installed via rpi-eeprom-update
|
The new image file can be installed via rpi-eeprom-update
|
||||||
rpi-eeprom-update -d -f newimage.bin
|
sudo rpi-eeprom-update -d -f newimage.bin
|
||||||
|
|
||||||
4. Applies a given config file to an EEPROM image and invokes rpi-eeprom-update
|
4. Applies a given config file to an EEPROM image and invokes rpi-eeprom-update
|
||||||
to schedule an update of the bootloader when the system is rebooted.
|
to schedule an update of the bootloader when the system is rebooted.
|
||||||
|
|||||||
Reference in New Issue
Block a user