Compare commits

...

255 Commits

Author SHA1 Message Date
timg236
6b14e84a2f Merge pull request #492 from timg236/raspberrypi5-use-flashrom
rpi-eeprom-update: Add the option to use flashrom for updates on Raspberry Pi 5
2023-11-09 12:09:42 +00:00
Tim Gover
db154d4710 rpi-eeprom-update: Add the option to use flashrom for updates on Raspberry Pi 5
On Raspberry Pi 5 there are dedicated pins for the bootloader SPI
EEPROM. This makes it possible to do immediate updates via flashrom.

The "current" EEPROM config is the EEPROM config at boot rather
than what has just been written to the SPI flash because this is
consistent with current behaviour.

To use flashrom instead of recovery.bin for bootloader updates
set RPI_EEPROM_USE_FLASHROM=1 in /etc/defaults/rpi-eeprom-update

BCM2711
On CM4, Pi4, CM4-S, Pi400 config.txt must be modified to disable
the analog audio driver which shares the GPIO pins used by the
bootloader EEPROM.

dtparam=spi=on
dtoverlay=audremap
dtoverlay=spi-gpio40-45
2023-11-02 16:54:34 +00:00
timg236
aded0825e3 Merge pull request #494 from timg236/pieeprom-2023-10-30-2712
pieeprom-2023-10-30: 2712: UPG watchdog support + SD reset fixes
2023-10-30 17:47:06 +00:00
Tim Gover
d53db79009 pieeprom-2023-10-30: 2712: UPG watchdog support + SD reset fixes (default + latest)
* Fix SDIO / WiFi clock-setup for BOOT_ORDER=0xf14
* Fix SD power-on-reset
* Firmware support for improved watchdog driver
* Update DHCP Option97 to be R,P,i,5 on Pi5
2023-10-30 16:54:48 +00:00
Tim Gover
5ec5c003ba rpi-eeprom-update: Switch back to recovery.bin on Pi5
The Pi5 EEPROM is larger and can take longer to update which
slightly increases the change of failure if the board power is
disconnected across an update. Re-enable recovery.bin for SD
updates for now.
2023-10-22 14:28:32 +01:00
timg236
b066f89a40 Merge pull request #491 from lurch/patch-1
rpi-eeprom-update: Fix typos in usage text
2023-10-22 14:06:34 +01:00
Andrew Scheller
ff81e998c5 rpi-eeprom-update: Fix typos in usage text 2023-10-21 15:05:18 +01:00
timg236
fdff8e81f0 Merge pull request #490 from timg236/tim/pieeprom-2023-10-18-2712-automatic-update
rpi-eeprom-update: 2712: Bump the min version to pieeprom-2023-10-18
2023-10-20 11:35:50 +01:00
Tim Gover
645c2a1201 rpi-eeprom-update: 2712: Bump the min version to pieeprom-2023-10-18 2023-10-20 10:51:21 +01:00
Tim Gover
f13b5789f5 imager-release: Update for Pi5 2023-10-19 13:57:49 +01:00
timg236
a9d76cf703 Merge pull request #488 from lurch/patch-1
Fix typo
2023-10-19 09:22:27 +01:00
Andrew Scheller
ee72242f76 Fix typo 2023-10-18 23:56:16 +01:00
timg236
a75b0368e0 Merge pull request #487 from timg236/pieeprom-2023-10-18-2712
pieeprom-2023-10-18: 2712: Display autodetect + HAT gpiomap (default + latest)
2023-10-18 18:49:28 +01:00
Tim Gover
3b393d31ac pieeprom-2023-10-18: 2712: Display autodetect + HAT gpiomap (default + latest)
* Add support for HAT gpiomap for improved HAT compatibility.
* Add I2C probe for DSI display auto detect
* Automatically set dtparam=nvme if booted from nvme
* Fix network boot reset issue where only the first attempt works.
* Adding pciex4_reset=0 to config.txt will leave RP1 PCIe enabled when
ARM stage is started.
* Prevent HDMI diagnostics being displayed immediately when waking
after HALT.
* Update board-name - "Rasberry Pi 5"
2023-10-18 18:37:58 +01:00
timg236
e120a595d4 Update README.md 2023-10-17 11:26:51 +01:00
timg236
3271aba368 Update README.md 2023-10-17 10:59:59 +01:00
timg236
dbb6bfd9b9 Update releases.md 2023-10-17 10:58:21 +01:00
timg236
2c35493e7f Update releases.md
Add a link to 2712 and drop reference to latest default release because this will just bitrot
2023-10-17 10:55:50 +01:00
Tim Gover
4f2d676b4e Merge pull request #485 from timg236/pi5
Add support for Pi5
2023-09-29 13:02:08 +01:00
Tim Gover
ac013de80e firmware-2711: Switch symlinks to use the standard release names
The EEPROM release names were changed to follow the naming
in raspi-config some time ago. Since the firmware directory
is being renamed to be chip specific for Pi5 support it's
good time to swap the symlink / release names.
2023-09-29 11:19:24 +01:00
Tim Gover
3ce1fd8823 pieeprom-2023-09-28: 2712: vcgencmd pmic_read_adcs fixes
* Fix the LDO names and current scaling codes
* Manufacturing test updates

Bump BOOTLOADER_AUTO_UPDATE_MIN_VERSION to this version.
2023-09-28 16:35:50 +01:00
Tim Gover
e1971ba483 pieeprom-2023-09-21: 2712: Add recovery.bin for make-image-release 2023-09-28 16:35:50 +01:00
Tim Gover
a8ca86532c pieeprom-2023-09-21: 2712: Power button and ACT LED improvements 2023-09-28 16:35:50 +01:00
Tim Gover
9e5c0ed0c4 pieeprom-2023-09-13: 2712: Initial firmware release for Pi5 2023-09-28 16:35:50 +01:00
Tim Gover
9147a1a1c6 scripts: Add support for chip-specific firmware directories
BCM2711 and BCM2712 require different EEPROM firmware and
consequently the binaries have been moved to chip specific
firmware directories.

firmware-2711 / firmware-2712
2023-09-28 16:35:50 +01:00
Tim Gover
f818c860b4 firmware-2712: Create the 2712 firmware directory structure 2023-09-28 16:35:50 +01:00
Tim Gover
c2918a8ec6 Rename firmware to firmware-2711 2023-09-28 16:35:50 +01:00
Tim Gover
3e2de88bcb Merge pull request #478 from XECDesign/boot_firmware_support
If /boot/firmware is in fstab, use it as BOOTFS
2023-09-04 11:31:25 +01:00
Tim Gover
fa281d3be1 test: install: Clean /lib/firmware/bootloader
Update the test/install script to remove previous firmware files.

This fixes a problem where the install script failed because
beta is now a symlink and not a directory.
2023-08-23 08:48:45 +01:00
Tim Gover
d774d5794c Merge pull request #482 from timg236/remove-beta-releases
firmware: Remove the beta release folder
2023-08-02 14:51:21 +01:00
Tim Gover
299b1c7e12 firmware: Remove the beta release folder
Remove the beta release folder and replace with a symlink to the
'latest' release.

Including beta firmware in the APT release causes unecessary churn
and occasionally causes an issue where a user might end up on an
old and unsupported beta release.

Instead, beta releases are will be feature specific and installed
manually via 'rpi-eeprom-config --edit beta-firmware.bin'

i.e. beta releases will be out-of-package custom firmware releases
downloaded from github. The functionality will be merged into
a new latest/stable release or abandoned.

N.B. The old beta releases have been archived to 'old' but are no
longer included in APT.
2023-08-02 14:48:45 +01:00
Serge Schneider
0ef3adc1d4 If /boot/firmware is in fstab, use it as BOOTFS
Debian's raspi-firmware package assumes the boot partition is mounted as
/boot/firmware/ rather than /boot/. This commit adds support for either
approach by default.
2023-08-02 12:22:53 +01:00
Tim Gover
df46db226e Merge pull request #481 from trejan/patch-1
Update URL for CM4 bootloader docs
2023-07-04 16:35:31 +01:00
TM
6950fff013 Update URL for CM4 bootloader doc site 2023-07-04 16:19:49 +01:00
Tim Gover
75d3a76046 Merge pull request #477 from timg236/pieeprom-2023-05-11-STABLE
pieeprom-2023-05-11: Promote BETA release to STABLE
2023-05-15 15:27:52 +01:00
Tim Gover
4856a034e3 pieeprom-2023-05-11: Promote BETA release to STABLE 2023-05-15 09:19:06 +01:00
Tim Gover
43477c6a91 Merge pull request #476 from timg236/pieeprom-2023-05-11
pieeprom-2023-05-11: Fix intermittent hang during secure-boot - BETA
2023-05-11 08:03:01 +01:00
Tim Gover
abce28f9bc pieeprom-2023-05-11: Fix intermittent hang during secure-boot - BETA 2023-05-11 07:52:25 +01:00
Tim Gover
3c3dadb5b1 Merge pull request #467 from hanzyd/master
rpi-eeprom-update: Follow links when looking for latest EEPROM
2023-01-30 12:20:43 +00:00
Ivan T. Ivanov
d82d08db06 rpi-eeprom-update: Follow links when looking for latest EEPROM
latest and default are links to directories, so follow them.

Before:

/usr/bin/rpi-eeprom-update
BOOTLOADER: up to date
   CURRENT: Wed Jan 11 17:40:52 UTC 2023 (1673458852)
    LATEST: Thu Jan  1 00:00:00 UTC 1970 (0)
   RELEASE: critical (/lib/firmware/raspberrypi/bootloader/critical)

After:

/usr/bin/rpi-eeprom-update
BOOTLOADER: up to date
   CURRENT: Wed Jan 11 17:40:52 UTC 2023 (1673458852)
    LATEST: Wed Jan 11 17:40:52 UTC 2023 (1673458852)
   RELEASE: critical (/lib/firmware/raspberrypi/bootloader/critical)

Signed-off-by: Ivan T. Ivanov <iivanov@suse.de>
2023-01-30 12:19:24 +02:00
Tim Gover
bf7419c961 Merge pull request #465 from timg236/pieeprom-2023-01-11-default
2023-01-18 - Promote pieeprom-2023-01-11 STABLE release to DEFAULT
2023-01-18 16:34:30 +00:00
Tim Gover
6532032cc6 2023-01-18 - Promote pieeprom-2023-01-11 STABLE release to DEFAULT
Interesting changes since the last default release
* Update VL805 to 138C0 - fix for handling of split transactions
  https://github.com/raspberrypi/linux/pull/5262
* Fix HID error handling with network install
  https://github.com/raspberrypi/rpi-eeprom/issues/458
2023-01-18 14:49:24 +00:00
Tim Gover
e2fc5b1993 Merge pull request #464 from timg236/pieeprom-2023-01-11
pieeprom-2023-01-11: Promote previous BETA release to STABLE
2023-01-13 10:54:08 +00:00
Tim Gover
259c4e99ed Merge pull request #463 from allanembedded/busybox-find
Fix rpi-eeprom-update when using busybox find
2023-01-13 10:30:52 +00:00
Tim Gover
5129267f6a pieeprom-2023-01-11: Promote previous BETA release to STABLE
This commit updates the VL805 firmware to vl805-000138c0.bin
See https://github.com/raspberrypi/linux/pull/5262
2023-01-13 09:27:26 +00:00
Allan Xavier
55ca589ab9 Fix rpi-eeprom-update when using busybox find
The busybox implementation of find does not detect recursive nested
symlinks, this results in it finding multiple instances of of_node
matching -samefile, the result of which then fails the -e path test.

The of_node symlink we're tyring to find should match the path
/sys/bus/nvmem/devices/*/of_node so just limit the find depth to 3 as
there's no point searching deeper than that.

Signed-off-by: Allan Xavier <mr.a.xavier@googlemail.com>
2023-01-12 13:47:27 +00:00
Tim Gover
b4b4605c7d Merge pull request #460 from timg236/pieeprom-2023-01-04
pieeprom-2023-01-04 VL805 firmware update - BETA
2023-01-05 10:16:07 +00:00
Tim Gover
2fb2132904 pieeprom-2023-01-04 VL805 firmware update - BETA
* Update VL805 to 138C0 - fix for handling of split transactions
  https://github.com/raspberrypi/linux/pull/5262
* Fix HID error handling with network install
  https://github.com/raspberrypi/rpi-eeprom/issues/458
2023-01-05 09:40:30 +00:00
Tim Gover
6e79e995bb Merge pull request #457 from timg236/pieeprom-2022-12-07
pieeprom-2022-12-07
2022-12-07 15:55:40 +00:00
Tim Gover
36886df55b 2022-12-07 - Fix SD voltage reset on Pi4 R1.1 (DEFAULT/STABLE/BETA).
Fix issue where SD voltage was not reset by power cycling PMIC on reboot.

See https://github.com/raspberrypi/firmware/issues/1763
2022-12-07 14:35:40 +00:00
Tim Gover
388ee17283 make-imager-release: Move image release to 2022-12-07 2022-12-07 14:35:19 +00:00
Tim Gover
2c6dabedf1 Point to the latest release 2022-12-06 17:24:14 +00:00
Tim Gover
e86fc31d7a Merge pull request #456 from timg236/pieeprom-2022-11-25-default
pieeprom-2022-11-25 Promote STABLE to DEFAULT release
2022-12-05 09:52:09 +00:00
Tim Gover
ca1f5469db pieeprom-2022-11-25 Promote STABLE to DEFAULT release
* [tryboot] conditional statement + tryboot_a_b mode
* Support custom OTP mac addresses
* Increase TFTP_MAX_BLOCK_SIZE
* Stop NVMe cleanly
* Fixes for NETCONSOLE parsing and initialisation.
* Long filename support for start_file / fixup_file.
* Secure boot and display debug info on the diagnostis screen.
2022-12-01 15:53:42 +00:00
Tim Gover
0ebda77d49 tools: Add secure-boot related scripts to tools
Copy the tools from usbboot. The next step is for usbboot
to include rpi-eeprom as a git submodule to de-duplicate
EEPROM images and tools.
2022-11-29 16:59:19 +00:00
Tim Gover
b9fcc9dc72 Merge pull request #455 from timg236/rpi-eeprom-config-padding
rpi-eeprom-config: Improve robustness of padding code
2022-11-28 15:41:48 +00:00
Tim Gover
2c709e087a unit-test: Update to cover all the releases including beta 2022-11-28 12:56:03 +00:00
Tim Gover
214cb6ffd4 rpi-eeprom-config: Make padding more robust.
Make it explicit that a modifiable file is stored withing a
single 4K sector (for erase) and that this includes the 20
byte header.

When modifying a file pad up to the next section instead of
just to an alignment size. This enables future changes to be
more flexible in terms of alignment and padding. Although,
files/sections with different padding requirements will likely
get a different magic.
2022-11-28 12:55:58 +00:00
Tim Gover
d2cbfbc292 rpi-eeprom-config: Add -x option to extract files
For test/debug add an option to extract all of the modifiable files.
2022-11-28 12:55:58 +00:00
Tim Gover
7bbbd9407f Merge pull request #453 from timg236/pieeprom-2022-11-25
pieeprom-2022-11-25 - Fix unconfigured netconsole messages - BETA + STABLE
2022-11-25 11:21:40 +00:00
Tim Gover
141a8cd9f0 pieeprom-2022-11-25 - Fix unconfigured netconsole messages - BETA + STABLE
* Fix unconfigured netconsole messages https://github.com/raspberrypi/rpi-eeprom/issues/452
* Add display state to HDMI diagnostics screen
2022-11-25 11:00:38 +00:00
Tim Gover
9269d78320 Align rpi-eeprom-digest with usbboot 2022-11-07 09:37:15 +00:00
Tim Gover
1197a4ae31 Merge pull request #449 from timg236/pieeprom-2022-11-04
* Fix an OOM issue that was causing secure boot to fail (but not from RPIBOOT)
2022-11-04 15:34:15 +00:00
Tim Gover
551d9da184 * Fix an OOM issue that was causing secure boot to fail (but not from RPIBOOT) 2022-11-04 15:26:17 +00:00
Tim Gover
eb3bb76a81 rpi-eeprom-digest: Update from usbboot for the verify option
Sync to the version from usbboot in order to add support for
the verify option. This provides a command line interface for
verifying a .sig file (with RSA) against a public key in .PEM
format.
2022-11-03 11:48:54 +00:00
Tim Gover
049da63a4e Merge pull request #448 from timg236/pieeprom-2022-11-02
pieeprom-2022-11-02: Add option to use Customer OTP for MAC address -…
2022-11-02 14:05:51 +00:00
Tim Gover
cb57a7df05 pieeprom-2022-11-02: Add option to use Customer OTP for MAC address - BETA
Add a new EEPROM property that allows the Ethernet MAC address
programmed during manufacture to be overridden a value in the
Customer OTP register.

MAC_ADDRESS_OTP=A,B
where A and B are the customer row numbers (0..7)
2022-11-02 11:05:01 +00:00
Tim Gover
092f876595 Merge pull request #447 from timg236/pieeprom-2022-10-18-stable
pieeprom-2022-10-18: Promote BETA release to STABLE
2022-10-20 12:00:11 +01:00
Tim Gover
ec3ed8bc3c pieeprom-2022-10-18: Promote BETA release to STABLE 2022-10-20 10:59:51 +01:00
Tim Gover
d0ff0d5d72 Update release notes for 2022-10-18 - BETA 2022-10-20 10:56:52 +01:00
Tim Gover
d995c13dd9 Merge pull request #446 from timg236/pieeprom-2022-10-18
2022-10-18 - Tryboot enhancements for A/B partition booting - BETA
2022-10-18 12:30:47 +01:00
Tim Gover
0a5328a01a 2022-10-18 - Tryboot enhancements for A/B partition booting - BETA
* Add support for a [tryboot] conditional statement in config files.
* Load config.txt instead of tryboot.txt if tryboot_a_b=1 in autoboot.txt
* Fix failover to partition 1  if the `boot_partition` points to non-bootable partition.
* Enable `autoboot.txt` in secure-boot mode.
2022-10-18 12:06:10 +01:00
Tim Gover
19362b763f Merge pull request #445 from peterharperuk/fix_usb_issue
2022-10-12 - Fix USB boot regression - BETA
2022-10-12 17:12:40 +01:00
Peter Harper
a16f73a2e3 2022-10-12 - Fix USB boot regression - BETA
* Reduce size of USB transfer
2022-10-12 17:00:13 +01:00
Tim Gover
272d1573e3 Merge pull request #444 from peterharperuk/fix_screen_clearing_issue
2022-10-06 - Fix issue with screen display - BETA
2022-10-06 16:51:29 +01:00
Peter Harper
a5f5513b16 2022-10-06 - Fix issue with screen display - BETA
* Fix issue with the bootloader display not being cleared properly
2022-10-06 16:49:38 +01:00
Tim Gover
3f85bc0126 Merge pull request #441 from peterharperuk/nvme_fix_to_beta
2022-10-03 - Add pieeprom-2022-10-03.bin - BETA
2022-10-03 15:20:30 +01:00
Peter Harper
134e95484a 2022-10-03 - Add pieeprom-2022-10-03.bin - BETA
* Increase the size of USB in-transfers
* Increase TFTP_MAX_BLOCKSIZE to 1468
* stop NVMe cleanly
2022-10-03 14:33:42 +01:00
Tim Gover
2efe9daef6 rpi-eeprom-update: Mention rpiboot in the CM4 not supported error message 2022-09-30 10:52:44 +01:00
Tim Gover
e41bec0bed * Parse target MAC address in NETCONSOLE property
https://github.com/raspberrypi/rpi-eeprom/issues/440
2022-09-02 16:50:16 +01:00
Tim Gover
8c18e9c9bb chmod -x pieeprom-2022-08-02.bin 2022-09-02 15:17:25 +01:00
Tim Gover
e4f90a89e6 2022-08-02 - Add pieeprom-2022-08-02 - BETA + STABLE
* Display the secure-boot configuration on the diagnostics screen
  if secure-boot is enabled.
  See https://www.raspberrypi.com/documentation/computers/configuration.html#bcm2711-bootloader-properties-chosenbootloader
* Toggle SD power at boot to reset card-state after ROM SD probe.
2022-08-02 17:05:12 +01:00
Tim Gover
38ee969c32 Merge pull request #439 from timg236/pieeprom-2022-07-26
pieeprom-2022-07-26: - Add pieeprom-2022-07-26 - BETA + STABLE
2022-07-26 11:41:11 +01:00
Tim Gover
7bc807661f pieeprom-2022-07-26: - Add pieeprom-2022-07-26 - BETA + STABLE
* Fix FAT issue https://github.com/raspberrypi/rpi-eeprom/issues/438
2022-07-26 11:34:23 +01:00
Tim Gover
4703b71a95 Merge pull request #437 from timg236/pieeprom-2022-07-22
pieeprom-2022-07-22 - Add pieeprom-2022-07-22 - BETA + STABLE
2022-07-22 14:52:36 +01:00
Tim Gover
a70a48ccb3 pieeprom-2022-07-22 - Add pieeprom-2022-07-22 - BETA + STABLE
* NVMe fix large file reads - see https://github.com/raspberrypi/firmware/issues/1731
  The firmware fix is also relevant for the bootloader when loading large boot.img files.
2022-07-22 13:45:42 +01:00
Tim Gover
51648bb0b3 Merge pull request #436 from timg236/pieeprom-2022-07-19
pieeprom-2022-07-19: Promote release from beta to STABLE
2022-07-20 12:22:35 +01:00
Tim Gover
6425f70225 pieeprom-2022-07-19: Promote release from beta to STABLE 2022-07-20 10:03:20 +01:00
Tim Gover
d7e137cf05 Merge pull request #435 from timg236/pieeprom-2022-07-14
2022-07-14 - Add pieeprom-2022-07-14 - BETA
2022-07-15 15:16:16 +01:00
Tim Gover
564fdb44f9 2022-07-14 - Add pieeprom-2022-07-14 - BETA
Enable long-filenames & sub-directories for start_file & fixup_file.
Use Unix path separators with a maximum path of 255 characters.
Relative paths (. or ..) are not supported.
2022-07-14 17:12:50 +01:00
Tim Gover
4eb1bd11c1 Restore ARM 32-bit vl805 flash programming tool
The tool was removed because for Pi4/Pi400 the VL805 update is now
handled by the bootloader. However, this might still be be useful
for anyone who is developing a custom VL805 board with an SPI EEPROM
and needs a mechanism to flash this.
2022-07-10 19:47:31 +01:00
Tim Gover
1c758a0904 Merge pull request #429 from timg236/pieeprom-2022-05-20.bin
pieeprom-2022-05-20.bin Reduce boot-time when network install is disabled. - BETA
2022-05-20 10:08:06 +01:00
Tim Gover
288489257f pieeprom-2022-05-20.bin Reduce boot-time when network install is disabled - BETA
* Reduce boot-time when network install is disabled NET_INSTALL_ENABLED=0.
* Switch to the newer SDIO HC and increase SPI clock speed.
2022-05-20 09:51:34 +01:00
Tim Gover
f38458e7cd Merge pull request #428 from timg236/prefer-self-update
rpi-eeprom-update: Avoid using recovery.bin if the current bootloader supports self-update
2022-05-16 08:34:16 +01:00
Tim Gover
4cbc4bc1c5 rpi-eeprom-update: Avoid using recovery.bin if the current bootloader supports self-update
Self-update is preferred to using recovery.bin because it avoids modifiy the
boot partition in order to rename recovery.bin after use. Since the 2711 ROM
does not support network or USB MSD loading of recovery.bin self-update has to
be used with other boot modes anyway.

If RPI_EEPROM_SELF_UPDATE=1 then avoid installing recovery.bin so long as the
current bootloader version supports self-update from SD/MMC and that doesn't
look as though SELF_UPDATE has been disable in the EEPROM config.
2022-05-11 14:06:13 +01:00
Tim Gover
43262c2c5c make-recovery-images: Attempt to avoid orphaned loopback devices 2022-05-11 14:04:00 +01:00
Tim Gover
3393903982 make-imager-release: Bump the imager release to 2022-04-26 2022-05-11 14:04:00 +01:00
Tim Gover
51491abb9c Merge pull request #426 from timg236/default-2022-04-26
2022-04-27 - Promote pieeprom-2022-04-26 to the DEFAULT release
2022-04-28 15:08:19 +01:00
Tim Gover
1b22faf38d pieeprom-2022-04-26: Promote pieeprom-2022-04-26 to the DEFAULT release
Enable Network Install in the default bootloader release.
This release is signed with the secure-boot key and supports
the new HTTP boot-order for downloading signed boot images for
automated provisioning systems.
2022-04-27 16:52:10 +01:00
Tim Gover
a4419567b8 Move old beta releases out of the APT package and into the old directory 2022-04-27 16:49:23 +01:00
Tim Gover
d75e8ff07f Merge pull request #425 from timg236/network-install-secure
pieeprom-2022-04-26: Network install / secure-boot STABLE/BETA
2022-04-27 10:50:45 +01:00
Tim Gover
83347f3968 pieeprom-2022-04-26: Network install / secure-boot STABLE/BETA
Candidate for the next default release.
2022-04-26 14:09:52 +01:00
Tim Gover
61f40841b7 Merge pull request #424 from timg236/pieeprom-2022-04-14
pieeprom-2022-04-14: Ethernet auto IDDQ fix & EEPROM update diagnostics
2022-04-22 20:09:38 +01:00
Tim Gover
7dfdc23014 pieeprom-2022-04-14: Ethernet auto IDDQ fix & EEPROM update diagnostics - BETA
* Fix netboot reboot failure on Pi 4B R1.1 if OS enables IDDQ power saving
     https://github.com/raspberrypi/rpi-eeprom/issues/417
* Fix incorrect error code (configuration error) on EEPROM update failure.
* Enable more verbose errors for EEPROM update failures
2022-04-22 17:52:15 +01:00
Tim Gover
dd0e086280 Merge pull request #420 from peterharperuk/net_install_stable
2022-03-10: Promote 2022-03-10 to LATEST/STABLE
2022-03-16 10:15:18 +00:00
Peter Harper
e8927007e3 2022-03-10: Promote 2022-03-10 to LATEST/STABLE
* Includes new net install feature, enabled by default for Pi 4 and Pi 400
* New net install download screen may appear on boot if a boot location can't
  be found or if boot is slow. Alternative press and hold shift on boot to
  start net install.
* New HTTP boot order.
* Bootloader diagnosis screen is now 720p if supported by your monitor.
* Self update mode is now enabled during SD/EMMC boot.
* The PARTITION number can now be specified as an EEPROM property.
* Allow smaller MSD discovery timeouts to be specified.
* Some tweaks and fixes to IPV6 netboot.
* Increase the max ramdisk size to 128MB
* Increase timeout of early SD/EMMC commands to 100ms
2022-03-16 09:50:01 +00:00
Tim Gover
056d2432ba Merge pull request #418 from peterharperuk/final_net_install_update
2022-03-10: HTTP_PATH fix - BETA
2022-03-10 16:50:37 +00:00
Peter Harper
2dad157037 2022-03-10: HTTP_PATH fix - BETA
* Fix the defective HTTP_PATH eeprom configuration
2022-03-10 14:59:53 +00:00
Tim Gover
e866f258d9 Merge pull request #415 from peterharperuk/net_install_beta3
2022-02-28: More net Install changes - BETA
2022-02-28 17:51:00 +00:00
Peter Harper
827a199c7c 2022-02-28: More net Install changes - BETA
Net install changes.
* Net install is initiated on boot if shift is pressed.
* New HTTP boot order (7) and configuration parameters,
  HTTP_HOST, HTTP_PATH, HTTP_PORT to set url

Other interesting changes.
* Increase the max ramdisk size to 128MB
* Increase timeout of early SD/EMMC commands to 100ms
2022-02-28 16:00:34 +00:00
peterharperuk
42de218ded Merge pull request #411 from peterharperuk/net_install_beta_fixes
2022-02-16: Network Install updated - BETA
2022-02-17 14:15:28 +00:00
Peter Harper
e2e58a7dba 2022-02-16: Network Install updated - BETA
Net install changes.
* Got rid of confirmation step that required you to press <Space> to
  initiate net install. Now just long press <Shift>
* Updated the screen text to make it more obvious the device is still
  trying boot when the net install is showing.
* Fixed a DHCP net install bug which caused us to lose the
  gateway address.
* Fixed a bug with the uIP timers which could cause net install to
  always fail.
* Implemented resume and retry on download failure.

Other interesting changes.
* Allow smaller MSD discovery timeouts to be specified.
* Some tweaks and fixes to IPV6 netboot.
2022-02-17 12:09:20 +00:00
Tim Gover
9a70770c3e Update config.yml 2022-02-12 08:25:02 +00:00
Tim Gover
e899089b42 Update bug_report.yml 2022-02-12 08:22:52 +00:00
Tim Gover
e75ccb4b1c Update bug_report.yml 2022-02-12 08:18:46 +00:00
Tim Gover
aa59c8f7f8 Update bug_report.yml
Fix URL and tidyup
2022-02-12 08:13:44 +00:00
Tim Gover
c09026fcc7 Update bug_report.yml
Added request for bootloader config plus links to various sections of the docs for diagnostics
2022-02-12 08:08:54 +00:00
Tim Gover
348f7a5009 Update bug_report.yml 2022-02-11 09:28:25 +00:00
Tim Gover
368227330b Update bug_report.yml 2022-02-11 09:22:47 +00:00
Tim Gover
27fa8d7529 Update bug_report.yml 2022-02-11 09:18:44 +00:00
Tim Gover
f555eff6e6 Update bug_report.yml 2022-02-11 09:18:23 +00:00
Tim Gover
a84587a1ba Update bug_report.yml 2022-02-11 09:17:42 +00:00
Tim Gover
2e6344b4d2 Update bug_report.yml 2022-02-11 08:54:21 +00:00
Tim Gover
12e3352ce5 Update bug_report.yml 2022-02-11 08:53:24 +00:00
Tim Gover
55300389a9 Update and rename bug_report.md to bug_report.yml
Initial draft
2022-02-11 08:51:19 +00:00
Tim Gover
70df0c270d Update config.yml 2022-02-11 08:26:54 +00:00
Tim Gover
7deaaa181a Merge pull request #407 from timg236/pieeprom-2022-02-08
pieeprom-2022-02-08: Fix secure-boot boot failure - STABLE
2022-02-09 17:49:10 +00:00
Tim Gover
eb4502d528 pieeprom-2022-02-08: Fix secure-boot boot failure - STABLE
Fix boot failure regression on boards which had the OTP secure boot bits set.
2022-02-09 13:27:27 +00:00
Tim Gover
21bc8412b8 Merge pull request #406 from timg236/network-install-release-notes
Update release-notes for network-install BETA
2022-02-08 17:21:23 +00:00
Tim Gover
829c57378d Update release-notes for network-install BETA
Include details of other changes plus instructions for disabling
network-install.
2022-02-08 14:32:52 +00:00
Tim Gover
0254a8e959 Merge pull request #405 from peterharperuk/net_install_beta
2022-02-04: Network Install - BETA
2022-02-08 09:47:10 +00:00
Peter Harper
14b6455d07 2022-02-04: Network Install - BETA
* Includes new network install feature
2022-02-04 12:48:54 +00:00
timg236
77e4322e1f Merge pull request #404 from timg236/make-release-timestamp
make-release: Use rpi-eeprom-digest to generate update timestamps
2022-02-03 10:17:10 +00:00
Tim Gover
05cc42b98b make-release: Use rpi-eeprom-digest to generate update timestamps
Previously, the .sig would have an update timestamp of zero. Switching
to rpi-eeprom-digest is preferable because the update timestamp will
be much closer to when the image was installed.

N.B. Update-timestamp is used to track configuration changes and is
independent of the build-timestamps which are the version of the
bootloader executable.
2022-02-03 09:29:42 +00:00
Tim Gover
9652be2271 Fix typo in release notes date 2022-01-31 15:42:29 +00:00
Tim Gover
bd09360d11 Update make-imager-release to 2022-01-25 2022-01-31 15:42:29 +00:00
Tim Gover
1ce83c09b3 Merge pull request #401 from timg236/default-release-2022-01-25
2022-01-25 - Promote pieeprom-2022-01-25 to the DEFAULT release
2022-01-31 11:48:20 +00:00
Tim Gover
49355f48b3 2022-01-25 - Promote pieeprom-2022-01-25 to the DEFAULT release
Interesting changes since the last default release
    * Support and bug fixes for all Compute Module variants.
    * NVMe interoperability fixes
    * FAT/GPT fixes and file-system performance improvements.
    * Add secure-boot support for industrial applications
      See https://github.com/raspberrypi/usbboot/blob/master/secure-boot-recovery/README.md
    * Added ramdisk / boot.img - for RPIBOOT and secure-boot.
2022-01-31 09:48:01 +00:00
Tim Gover
c1c19fd4ba Merge pull request #400 from timg236/pieeprom-2022-01-25
pieeprom-2022-01-25: Create stable release from pieeprom-2022-01-20
2022-01-25 17:06:17 +00:00
Tim Gover
1d8ff7f3b3 pieeprom-2022-01-25: Create stable release from pieeprom-2022-01-20 2022-01-25 14:48:26 +00:00
Tim Gover
c38a977a7c Merge pull request #399 from timg236/gpu-memory
Add note about GPU memory in latest beta
2022-01-24 17:11:28 +00:00
Tim Gover
567586bbac Add note about GPU memory in latest beta 2022-01-24 16:05:14 +00:00
Tim Gover
28e29df650 Merge pull request #398 from peterharperuk/nvme_fixes_to_beta
2022-01-20: Some NVMe boot fixes - BETA
2022-01-20 15:12:57 +00:00
Peter Harper
a2a017d7c5 2022-01-20: Some NVMe boot fixes - BETA
* PCIe retry on error
* NVMe logging changes
* NVMe attempts to boot twice
2022-01-20 12:11:38 +00:00
Andrew Scheller
3d90553337 fix typo and tweak formatting (#390)
* fix typo and tweak formatting

* Address Phil's feedback
2021-12-19 14:26:00 +00:00
Tim Gover
9ca0e123e6 Merge pull request #387 from peterharperuk/promote_mtb_fix_to_stable
Promote mtb fix to stable
2021-12-13 13:05:50 +00:00
Peter Harper
3fdf703f3f 2021-12-02: Promote the 2021-12-02 beta release to LATEST/STABLE
* Just fixes a regression with MTB detection affecting factory testing
2021-12-13 11:56:11 +00:00
Peter Harper
b64fc25a1a Fix permissions on files
A few files had the execute attribute set. Remove this.
2021-12-13 11:52:12 +00:00
Tim Gover
a4c259a2e4 Merge pull request #386 from peterharperuk/fix_mtb_detection2
2021-12-02: Fix MTB detection for factory test - BETA
2021-12-10 13:53:23 +00:00
Peter Harper
ca5730a9dc 2021-12-02: Fix MTB detection for factory test - BETA
* Just fixes a regression with MTB detection affecting factory testing

Note: This is just a rename of 2021-12-09 which had the wrong date
2021-12-10 13:04:23 +00:00
Tim Gover
91676cba22 Merge pull request #385 from peterharperuk/fix_mtb_detection
2021-12-09: Fix MTB detection for factory test - BETA
2021-12-09 20:13:49 +00:00
Peter Harper
2f8d0861f8 2021-12-09: Fix MTB detection for factory test - BETA
* Just fixes a regression with MTB detection affecting factory testing
2021-12-09 16:17:31 +00:00
Tim Gover
8dcecf429c Merge pull request #384 from timg236/default-recovery.bin
Update default recovery.bin to the latest stable release
2021-12-09 14:26:52 +00:00
Tim Gover
8de4a4db05 Update default recovery.bin to the latest stable release
* Promote the recovery.bin from stable to default. This avoids an
  issue where recovery.bin fails to load on large FAT32 boot partions with
  32K clusters.
2021-12-09 11:11:18 +00:00
Tim Gover
86eee571e2 rpi-eeprom-digest: Don't require xxd/openssl unless RSA signing is requested. 2021-12-01 21:34:19 +00:00
timg236
c62427e1d5 Merge pull request #382 from timg236/pieeprom-2021-11-22-stable
Promote pieeprom-2021-11-22 beta release to stable
2021-11-29 12:00:14 +00:00
Tim Gover
91fdb8648b Promote pieeprom-2021-11-22 beta release to stable
* NVMe / PCIe reset fixes
* GPT / FAT enhancements
* FAT performance improvements
* Secure-boot for industrial customers (see usbboot repo)
2021-11-29 10:45:34 +00:00
Tim Gover
12907d02ff rpi-eeprom-config: Fix calls for reading/replacing bootconf.txt
The config read/update APIs have been replaced with generic
read/replace 'boot file' APIs in order to support secure-boot.

The previous secure-boot related commits  broke the interactive
rpi-eeprom-config --edit/-a options.
2021-11-23 11:26:27 +00:00
timg236
3e56160f8b Merge pull request #380 from peterharperuk/nvme-reboot-fix
2021-11-22: Fix for Sabrent rocket Nano NVMe reboot issue - BETA
2021-11-22 14:36:31 +00:00
Tim Gover
34b790407c rpi-eeprom-digest: Add to test/install and specify -o in rpi-eeprom-update 2021-11-22 14:29:59 +00:00
Peter Harper
c4a7e752d0 2021-11-22: Fix for Sabrent rocket Nano NVMe reboot issue - BETA
* Fixes issue with Sabrent rocket Nano NVMe disk after a reboot.
  Run pcie initialisation again if there's an error.
2021-11-22 12:40:56 +00:00
Tim Gover
77784b4b6a test: Add a simple loopback test for signed boot 2021-11-13 15:50:23 +00:00
Tim Gover
3d5ab049d4 rpi-eeprom-config: Update to the same version as raspberrypi/usbboot
Update rpi-eeprom-config to include the secure-boot changes.
2021-11-13 15:50:23 +00:00
Tim Gover
43610e19ec rpi-eeprom-update: Use rpi-eeprom-digest to generate the .sig files 2021-11-13 15:50:23 +00:00
Tim Gover
86cc791879 rpi-eeprom-digest: Import script from rapsberrypi/usbboot
Update rpi-eeprom to use the common .sig generator script from usbboot.
2021-11-13 15:47:50 +00:00
Tim Gover
47976e4409 Merge pull request #377 from andrum99/patch-2
release-notes.md: Fix semi-dead link
2021-10-27 19:40:24 +01:00
andrum99
ecf25d217b Update release-notes.md 2021-10-27 18:34:47 +01:00
Tim Gover
978ced96c9 2021-10-27 - Secure boot improvements - BETA
* Improve the error logging if a file is too large and truncated.
* Increase the maximum size of the ramdisk to 96MB.
* Preliminary changes to expose the boot-mode used to load the
  ramdisk via device-tree.

N.B. Secure boot is only recommended for industrial customers and is
currently a beta release. This can only be enabled via RPIBOOT

https://github.com/raspberrypi/usbboot/blob/master/Readme.md
2021-10-27 17:41:56 +01:00
Tim Gover
a03de8554b make-recovery-images: Change partition size to be 256MB
Make this the same size as Raspberry Pi OS. Since this is compressed
it doesn't make the downloads noticably longer.
2021-10-13 10:16:14 +01:00
Tim Gover
0b4cab2af9 make-recovery-images: Set GID 2021-10-13 08:35:57 +01:00
Tim Gover
95e04c9910 Update a few more URLs to raspberrypi.com 2021-10-13 08:27:20 +01:00
Tim Gover
e76eaf795e Merge pull request #374 from andrum99/patch-1
imager/README.txt: typo, grammar, style fixes
2021-10-11 08:57:55 +01:00
andrum99
0cddcd363f Update README.txt 2021-10-09 16:01:26 +01:00
andrum99
8161d3a89e Update README.txt 2021-10-09 15:59:46 +01:00
andrum99
9ae4ec02a7 Update README.txt 2021-10-09 00:37:32 +01:00
andrum99
a30fbd6928 Update README.txt 2021-10-08 17:06:14 +01:00
andrum99
75b4ea7c7a Update README.txt 2021-10-08 17:03:28 +01:00
andrum99
573770c06f Update README.txt 2021-10-08 17:02:43 +01:00
andrum99
72a79d0b7e Don't think we need to specify 'spare' - that's up to the user 2021-10-08 17:01:28 +01:00
andrum99
7a811e4256 Update README.txt 2021-10-08 17:00:29 +01:00
andrum99
960b80e14c imager/README.txt: typo, grammar, style fixes 2021-10-08 16:59:02 +01:00
Tim Gover
a63b3c7ff4 Merge pull request #373 from timg236/make-recovery-images
make-recovery-images: Build FAT32 disk-images for the imager zips
2021-10-08 15:46:43 +01:00
Tim Gover
01da541b85 make-recovery-images: Build FAT32 disk-images for the imager zips
Create small (40MB) FAT32 images with 512 KB sectors. The aim
is to have a simple, fixed format to avoid compatibility / FAT
issues.
2021-10-08 15:42:44 +01:00
Tim Gover
194960a023 Merge pull request #372 from timg236/rpi-eeprom-config-python3
rpi-eeprom-config: require python3
2021-10-07 13:10:22 +01:00
Tim Gover
28878ba2c5 rpi-eeprom-config: require python3
Require python3 instead of relying on all distros including
python-is-python3 etc.

The code will still work with python2 but distros which require
python2 will need to maintain that as a downstream patch.
2021-10-07 11:11:04 +01:00
Tim Gover
e049a0807f Merge pull request #371 from peterharperuk/fix_readme_url
Fix URLs in README
2021-10-07 10:24:07 +01:00
Peter Harper
51d7c9bb78 Fix URLs in README
These got broken by the recent doc update and the redirects to
raspberrypi.com don't seem to be correct
2021-10-06 17:57:31 +01:00
Tim Gover
b93a7569a3 pieeprom-2021-10-05: Update for latest Broadcom SDRAM settings - BETA
* Minor update for latest SDRAM tuning settings.
2021-10-05 09:17:11 +01:00
Tim Gover
cc347ddaa2 Merge pull request #369 from timg236/pieeprom-2021-10-04
pieeprom-2021-10-04: Add support for GPT FAT16 and increase USB timeouts - BETA
2021-10-04 17:08:14 +01:00
Tim Gover
c297ba744c pieeprom-2021-10-04: Add support for GPT FAT16 and increase USB timeouts - BETA
* Update the FAT detection to support FAT16 for EFI/ESD paritions with
  GPT instead of assuming FAT32. The latest firmware is also required
  for a similar update.
* Increase the timeouts for MSD SCSI commands to reduce the risk of
  timeouts when probing the capacity of slow to start devices
  e.g. USB RAID with spinning disks.
2021-10-04 15:29:53 +01:00
Tim Gover
7cae0129e0 Additional fix to beta recovery.bin 2021-09-27 16:26:45 +01:00
Tim Gover
650e255daf 2021-09-27 - Fix recovery.bin rename issue and EEPROM netconsole - BETA
* Fix recovery.bin rename issue
* Update pieeprom-2021-09-27.bin to fix netconsole
2021-09-27 15:20:10 +01:00
Tim Gover
504e18bb3a recovery.bin 2021-09-23 - Temporarily revert recovery.bin 2021-09-22
Revert until fix for can be verified https://github.com/raspberrypi/rpi-eeprom/issues/367
2021-09-27 12:57:36 +01:00
Tim Gover
4b5a46947e pieeprom-2021-09-23.bin: Bootloader file-system updates - BETA
This release makes major changes to the bootloader file-system code in
order to support new features and should be treated as a bleeding edge BETA
release!

* Improve file-system performance to reduce boot time.
* Preliminary support for IPV6 TFTP. Requires an updated start4.elf.
  Details to follow.
* Fix VL805=1 option for CM4 IO boards that follow the same XHCI
  design as Pi4B. Start.elf will be updated in the next rpi-update
  release and the latest CM4 DTBs are required for the 'XHCI reset controller'
* Preliminary suppport for loading signed boot image files.
  Requires updated GPU firmware.
2021-09-23 17:47:06 +01:00
Tim Gover
1fc1d40117 Merge pull request #363 from timg236/recovery-22-09-2021-stable
Promote 22/09/2021 beta recovery.bin to stable
2021-09-23 15:39:47 +01:00
Tim Gover
7e6a961a24 Promote 22/09/2021 beta recovery.bin to stable 2021-09-23 10:08:58 +01:00
Tim Gover
953a7fe05f Merge pull request #362 from timg236/recovery-update-beta
recovery.bin: Fix recovery.bin loading on larger FAT partitions - BETA
2021-09-22 17:37:30 +01:00
Tim Gover
7208a1ca0f recovery.bin: Fix recovery.bin loading on larger FAT partitions - BETA 2021-09-22 16:41:03 +01:00
Tim Gover
cc38b35bbe Merge pull request #358 from lurch/patch-1
Update documentation link
2021-09-01 15:15:26 +01:00
Andrew Scheller
ffda73b9cd Update documentation link 2021-09-01 15:02:01 +01:00
Tim Gover
8dac90ae9a Update bug_report.md 2021-08-10 12:00:17 +01:00
Tim Gover
f7d7a9c8a6 Update bug_report.md 2021-08-10 11:59:52 +01:00
Tim Gover
6a47bc4900 Update bug_report.md 2021-08-10 11:59:23 +01:00
Tim Gover
eae21cbae3 Merge pull request #353 from tmm1/patch-1
Fix typo
2021-07-15 22:54:06 +01:00
Aman Gupta Karmani
75216fb64c Fix typo 2021-07-14 15:05:43 -07:00
Tim Gover
f19990103e pieeprom-2021-07-06: Promote to STABLE
Promote the latest beta release to stable which notably adds
NVMe boot support for CM4.
2021-07-07 11:33:46 +01:00
Tim Gover
45accca3dc pieeprom-2021-07-06 - Tidyup PXE debug strings - BETA
* Remove redundant debug string - hexdump is more useful for debug.
* Minor internal changes for manufacturing test.
2021-07-06 14:06:46 +01:00
Tim Gover
5d70742580 pieeprom-2021-06-25 - Support 256MB gpu_mem with boot.img ramdisk - BETA
* Tweak the address map so that boot.img files can support
  larger GPU memory allocations e.g. start4x.elf with camera
  loaded from a boot.img.
2021-06-25 13:55:34 +01:00
Tim Gover
cecc46f687 pieeprom-2021-06-17 CM4 avoid touching PCIe - BETA
* 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.
2021-06-18 10:18:10 +01:00
Tim Gover
4b7fcc65e9 pieeprom-2021-06-11 - Add USB_MSD_STARTUP_DELAY
* 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.
2021-06-11 14:54:46 +01:00
Tim Gover
949e9c49f8 Merge pull request #343 from waveform80/ignore-non-pi
Add a test to cause the script to exit cleanly on non-Pi hardware
2021-06-11 11:51:18 +01:00
Tim Gover
1dab88d0d0 Merge pull request #342 from waveform80/remove-vcmailbox
Remove redundant vcmailbox reference
2021-06-11 11:47:53 +01:00
Dave Jones
71ef83abbc Add a test to cause the script to exit cleanly on non-Pi hardware
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.
2021-06-10 10:04:13 +01:00
Dave Jones
6a310b5d4d Remove redundant vcmailbox reference
The vcmailbox binary is no longer used (like flashrom), hence there's little point in keeping the configuration variable for it
2021-06-09 17:48:09 +01:00
Tim Gover
34aa94bdd2 Merge pull request #337 from timg236/pieeprom-2021-05-19
Pieeprom 2021 05 19
2021-05-20 14:12:11 +01:00
Tim Gover
48864f3d1f pieeprom-2021-05-19 - Use latest BRCM SDRAM setting
* 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.
2021-05-19 17:51:24 +01:00
Tim Gover
503f1c0055 rpi-eeprom-update: Display a warning when the bootloader is downgraded
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.
2021-05-17 15:21:29 +01:00
Tim Gover
f7402923bc Merge pull request #331 from lurch/patch-1
Typos and wording tweaks
2021-05-04 16:34:15 +01:00
Tim Gover
34b752e8be Update imager-release to 2021-04-29 2021-04-30 11:24:31 +01:00
Tim Gover
90daaae301 pieeprom-2021-04-29: Update default release to this image 2021-04-30 10:02:10 +01:00
Tim Gover
e6107348e0 pieeprom-2021-04-29.bin - Pi400 MII clock freq - STABLE 2021-04-29 17:23:56 +01:00
Andrew Scheller
650e942947 Typos and wording tweaks 2021-04-24 02:39:43 +01:00
Tim Gover
53f121d651 Merge pull request #329 from andrum99/patch-5
rpi-eeprom-update: up-to-date -> up to date
2021-04-22 09:09:36 +01:00
andrum99
89a68bc405 rpi-eeprom-update: up-to-date -> up to date
This is only meant to be hyphenated when used as a compound adjective, which is not the case here. See https://www.thewriter.co.uk/tools/style-guide/punctuation/hyphens#:~:text=When%20it%20comes%20after%20the,up%2Dto%2Ddate%20document.
2021-04-21 16:59:35 +01:00
Tim Gover
f3b402d7e6 Merge pull request #319 from timg236/pieeprom-2021-03-18-default
2021-03-18 - Promote 2021-03-18 to default/critical release
2021-04-19 14:11:55 +01:00
Tim Gover
45800f00c7 2021-04-19 - Promote 2021-03-18 to the default/critical release
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.
2021-04-19 14:07:27 +01:00
Tim Gover
e5d73dc857 recovery.bin: Fix error pattern handling for HDMI/SDRAM failures 2021-04-14 14:47:59 +01:00
Tim Gover
b6d1893973 recovery.bin: Fix error pattern 2021-04-14 14:46:29 +01:00
Tim Gover
85425c0806 Update README.md 2021-03-30 08:45:50 +01:00
Tim Gover
053f8483af Merge pull request #325 from lurch/patch-1
Fix typos in test script
2021-03-29 19:42:33 +01:00
Andrew Scheller
7c26d67583 Fix typos in test script 2021-03-29 19:06:46 +01:00
Tim Gover
1e0be05d6e Merge pull request #321 from timg236/min-version
rpi-eeprom-update: Set a minimum version number for silent updates
2021-03-25 16:57:49 +00:00
Tim Gover
a4d7bdbef0 rpi-eeprom-update: Specifiy a minimum version number for automatic updates
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.
2021-03-25 14:24:17 +00:00
Tim Gover
587683e8e5 test: Extend loopback test to cover old beta releases.
Also copy the current beta releases into old for a bit more test coverage.
2021-03-24 09:37:21 +00:00
Tim Gover
953c9fea43 Merge pull request #320 from andrum99/patch-1
releases.md: improve page title, add missing full stops
2021-03-23 14:17:24 +00:00
andrum99
2e0801a4da releases.md: improve page title, add missing full stops 2021-03-23 14:02:55 +00:00
Tim Gover
8113d3f8a0 Update releases.md 2021-03-23 10:09:20 +00:00
Tim Gover
303c2e110d Update README.md 2021-03-22 08:20:22 +00:00
Tim Gover
3408d368e3 Update README.md 2021-03-22 08:18:14 +00:00
Tim Gover
4e51d9a735 Merge pull request #317 from timg236/pieeprom-2021-03-18
pieeprom-2021-03-18 Fix reboot issue on older Pi 4B boards - STABLE
2021-03-18 13:33:39 +00:00
Tim Gover
ff27ccf694 pieeprom-2021-03-18 Fix reboot issue on older Pi 4B boards - STABLE 2021-03-18 09:33:05 +00:00
Tim Gover
26366bb378 Merge pull request #314 from peterharperuk/bridge-fix
pieeprom-2021-03-17.bin - Fix problem with PCIe bridges - BETA
2021-03-17 13:18:30 +00:00
Peter Harper
a1e86f1350 pieeprom-2021-03-17.bin - Fix problem with PCIe bridges - BETA 2021-03-17 12:13:32 +00:00
Tim Gover
bc5fba23cb remove +x bit on beta recovery.bin and 2021-04-03 release 2021-03-12 20:37:20 +00:00
Tim Gover
5579d39ab0 Merge pull request #310 from lurch/make_beta
Add make-beta-release as a wrapper around make-release
2021-03-10 19:13:06 +00:00
Andrew Scheller
7589fbf981 Allow a custom firmware_status to be set via env-var 2021-03-10 16:56:47 +00:00
Andrew Scheller
6b1851750a Add make-beta-release as a wrapper around make-release 2021-03-09 19:18:43 +00:00
Tim Gover
2971da10ee Merge pull request #309 from peterharperuk/nvme_bootloader
pieeprom-2021-03-04.bin - NVMe boot support - BETA
2021-03-09 17:02:33 +00:00
peter.harper
c5fea074c1 pieeprom-2021-03-04.bin - NVMe boot support - BETA 2021-03-09 16:29:38 +00:00
Tim Gover
71a6049b2b Merge pull request #308 from lurch/imager_script_refactor
Refactor the imager script to reduce duplication and remove reliance on symlinks
2021-03-09 15:25:47 +00:00
Andrew Scheller
7880114040 Make make-release more flexible, and add make-imager-release as a wrapper script around it 2021-03-05 16:21:33 +00:00
Andrew Scheller
869c14518b Refactor the imager script to reduce duplication and remove reliance on symlinks 2021-03-05 13:45:16 +00:00
Tim Gover
b9955dba91 Add recovery.bin to make-release
It won't work without it!
2021-03-05 13:38:49 +00:00
Tim Gover
2c46b979dc Merge pull request #307 from lurch/patch-1
Typos
2021-03-05 13:36:48 +00:00
Andrew Scheller
26c4f2b3da Typos 2021-03-05 12:35:19 +00:00
278 changed files with 2480 additions and 356 deletions

View File

@@ -1,50 +0,0 @@
---
name: Bug report
about: Create a bug report for the bootloader EEPROM or rpi-eeprom-update scripts. Please use the Raspberry Pi General Discussion forum for general questions about the bootloader.
---
This repository tracks bugs for the Raspberry Pi 4 bootloader EEPROM and Linux update scripts.
* If you suspect a hardware problem then please read the [Boot Problems](https://www.raspberrypi.org/forums/viewtopic.php?p=437084) post first before contacting the reseller.
* Support questions or should be posted on the Raspberry Pi [General Discussion](https://www.raspberrypi.org/forums/viewforum.php?f=63)**
**Mandatory information**
* Raspberry Pi model
* Board revision (cat /proc/cpuinfo | grep Revision)
* Operating system version .
* Details of any hardware attached e.g. links to USB
* Photo of the HDMI diagnostics screen, UART trace.
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
**Expected behaviour**
A clear and concise description of what you expected to happen.
**Bootloader version and configuration**
If you have modified the default bootloader release or configuration then please attach the bootloader configuration vcgencmd bootloader_config and version (vcgencmd bootloader_version)
**SD card boot (please complete the following information):**
- SD card type
- Partition information (sudo fdisk -l) if you are able to obtain this from another computer.
**Network boot (please complete the following information):**
Network boot bug normally require one or more of the following log types. [PiServer](https://github.com/raspberrypi/piserver) is the officially supported network boot server.
- DHCP server configuration files e.g. dnsmasq.conf
- Wireshark binary packet capture
- UART logs
**USB boot (please complete the following information):**
Verify that the the USB device works correctly when hot-plugged under Linux and attache the output of 'lsusb -vvv'
**Additional context**
Add any other context about the problem here.
The [Bootloader configuration](https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2711_bootloader_config.md) page describes how to enable UART or NETCONSOLE logs. For complex USB boot issues NETCONSOLE logs are recommended.

123
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,123 @@
name: "Bug report"
description: Create a report to help us fix your issue
body:
- type: markdown
attributes:
value: |
**Is this the right place for my bug report?**
* This repository contains the Raspberry Pi 4, Pi400 and CM4 bootloader EEPROM images and installation scripts.
* Please report boot issues for the earlier models at the GPU firmware repo [github.com/raspberrypi/firmware](https://github.com/raspberrypi/firmware).
* Please report USB issues which occur after the OS has started at the Linux repo [github.com/raspberrypi/linux/](https://github.com/raspberrypi/linux/).
* If you simply have a question, then [the Raspberry Pi forums](https://www.raspberrypi.org/forums) are the best place to ask it.
* The ["Is your Pi not booting?"](https://forums.raspberrypi.com/viewtopic.php?f=28&t=58151) post has lots of useful advice.
- type: textarea
id: description
attributes:
label: Describe the bug
description: |
Add a clear and concise description of what you think the bug is.
* Attach a photo of the bootloader [diagnostics](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#boot-diagnostics-on-the-raspberry-pi-4).
* If the system is failing to boot then please check if the green activity LED is displaying an [error pattern](https://www.raspberrypi.com/documentation/computers/configuration.html#led-warning-flash-codes).
validations:
required: true
- type: textarea
id: reproduce
attributes:
label: Steps to reproduce the behaviour
description: |
List the steps required to reproduce the issue.
validations:
required: true
- type: dropdown
id: model
attributes:
label: Device (s)
description: On which device you are facing the bug?
multiple: true
options:
- Raspberry Pi 4 Mod. B
- Raspberry Pi 400
- Raspberry Pi CM4
- Raspberry Pi CM4 Lite
- Other
validations:
required: true
- type: textarea
id: config
attributes:
label: Bootloader configuration.
description: |
Copy and paste the results of `vcgencmd bootloader_config` or describe the failing configuration.
* `rpi-eeprom-update` saves a backup of the previous bootloader configuration to `/var/lib/raspberrypi/bootloader/backup` before it schedules the update.
* `rpi-eeprom-config pieeprom.upd` can be used to read the contents of an EEPROM image.
validations:
required: true
- type: textarea
id: system
attributes:
label: System
description: |
Copy and paste the results of the `raspinfo` command in to this section.
Alternatively, copy and paste a pastebin link, or add answers to the following questions:
* Which OS and version (`cat /etc/rpi-issue`)?
* Which bootloader version (`vcgencmd bootloader_version`)?
* Which firmware version (`vcgencmd version`)?
* Which kernel version (`uname -a`)?
validations:
required: false
- type: textarea
id: Logs
attributes:
label: Bootloader logs
description: |
If the problem can't be diagnosed from the bootloader HDMI diagnostics screen then we'll normally need to see more detailed logs to diagnose the problem. The bootloader and GPU firmware can be configured to enable log output to the UART pins `14` and `15` on the [40-pin GPIO header](https://www.raspberrypi.com/documentation/computers/os.html#gpio-and-the-40-pin-header)
* To enable UART logging from the bootloader specify [BOOT_UART=1](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#BOOT_UART) in the EEPROM config
* To enable UART logging from the `start.elf` GPU firmware stage add [uart_2ndstage=1](https://www.raspberrypi.com/documentation/computers/config_txt.html#uart_2ndstage) to `config.txt`.
* If you are familiar with using Wireshark then it's also possible to use [NETCONSOLE](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#NETCONSOLE) write logs to UDP packets.
Please paste the bootloader logs here.
validations:
required: false
- type: textarea
id: USB
attributes:
label: USB boot
description: |
Before using USB as the boot device it's advisble to verify that the USB device is [compatible](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#hardware-compatibility) and works reliably from Linux.
Please specify the make and model of the USB device plus any HUBs or USB/SATA adapters. Please also capture the output of the following command from Linux `lsusb -vvv` and paste the results here.
validations:
required: false
- type: textarea
id: NVMe
attributes:
label: NVMe boot
description: |
Before using NVMe as the boot device it's advisble to verify that the NVMe storage is working reliably when mounted from Linux. Please specify the make and model and also capture the following information from a working system when reporting NVMe issues.
* `sudo apt-get install nvme-cli`
* `sudo nvme list`
* `sudo nvme id-ctrl -H /dev/nvme0`
* `sudo nvme list-ns /dev/nvme0`
* `sudo nvme id-ns -H /dev/nvme0 --namespace-id=1`
validations:
required: false
- type: textarea
id: tftp
attributes:
label: Network (TFTP boot)
description: |
Please provide the following information if possible:-
* DHCP server configuration files e.g. `dnsmasq.conf`
* Wireshark binary packet capture
validations:
required: false

View File

@@ -1,2 +1,9 @@
blank_issues_enabled: false
contact_links:
- name: "⛔ Question"
url: https://www.raspberrypi.org/forums
about: "Please do not use GitHub for asking questions. If you simply have a question, then the Raspberry Pi forums are the best place to ask it. Thanks in advance for helping us keep the issue tracker clean!"
- name: "⛔ Problems with Raspberry Pi Imager / network-install"
url: https://github.com/raspberrypi/rpi-imager
about: "If the problem with network install occurs after the Raspberry Pi Imager UI has started then please report it at https://github.com/raspberrypi/rpi-imager/issues. Otherwise, raise the bug report here."

30
LICENSE
View File

@@ -64,4 +64,32 @@ License: custom
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
DAMAGE.
License: uIP
Copyright (c) 2006, Swedish Institute of Computer Science.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the Institute nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.

View File

@@ -1,16 +1,15 @@
# rpi-eeprom
This repository contains the scripts and pre-compiled binaries used to create the `rpi-eeprom` package which is used to update the Raspberry Pi 4 bootloader and VLI USB xHCI controller EEPROMs.
This repository contains the scripts and pre-compiled binaries used to create the `rpi-eeprom` package which is used to update the Raspberry Pi 4 and Raspberry Pi 5 bootloaders EEPROM images.
# Support
Please check the Raspberry Pi [general discussion forum](https://www.raspberrypi.org/forums/viewforum.php?f=63) if you have a support question.
Please check the Raspberry Pi [general discussion forum](https://forums.raspberrypi.com/viewforum.php?f=63) if you have a support question.
# Reset to factory defaults
The [Raspberry Pi Imager](https://www.raspberrypi.org/downloads/) provides an EEPROM recovery image which may be used to reset the bootloader and USB xHCI EEPROMs to factory defaults.
To reset the bootloader back to factory defaults use [Raspberry Pi Imager](https://www.raspberrypi.com/software/) to write an EEPROM update image to a spare SD card. Select `Misc utility images` under the `Operating System` tab.
# Bootloader documentation
* [The boot folder](https://www.raspberrypi.org/documentation/configuration/boot_folder.md)
* [Config.txt boot options](https://www.raspberrypi.org/documentation/configuration/config-txt/boot.md)
* [Bootloader EEPROM](https://www.raspberrypi.org/documentation/hardware/raspberrypi/booteeprom.md)
* [Bootloader configuration](https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2711_bootloader_config.md)
* [Release notes](firmware/release-notes.md)
* [Releases](releases.md)
* [Config.txt boot options](https://www.raspberrypi.com/documentation/computers/config_txt.html#boot-options)
* [Bootloader EEPROM](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-4-boot-eeprom)
* [Bootloader configuration](https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#raspberry-pi-4-bootloader-configuration)
* [Updating the Compute Module 4 bootloader](https://www.raspberrypi.com/documentation/computers/compute-module.html#cm4bootloader)
* [Releases and release notes](releases.md)

1
firmware-2711/beta Symbolic link
View File

@@ -0,0 +1 @@
latest/

1
firmware-2711/critical Symbolic link
View File

@@ -0,0 +1 @@
default/

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More