v1.11 release for Pi 4

Cleanup and bug fixes.

https://github.com/pftf/RPi4/releases/tag/v1.11

What’s inside this release?

Matching Pi 3 release is v1.24, which primarily fixes UART and USB regressions seen with newer VideoCore firmware.

As always, read the release notes and usual caveats.

v1.23 release for Pi 3 is a bit special

https://github.com/pftf/RPi3/releases/tag/v1.23 brings in support for something I’ve wanted to add for years now – official support for other platforms built around the same BCM2836 SoC.

So, the Pi 3A+ is finally documented as being supported. It involved no code changes and is the cheapest Pi you can run the 64-bit UEFI firmware on.

Just like the Pi 3B+, but with less RAM and no USB hub or network port.

But there’s more – the work to automatically support booting via PL011 and miniUART serial ports, done by Pete Batard on the UEFI side and
Andre Przywara for TF-A, finally means we can boot on boards where PL011 is used to expose the serial port. The Pi 2B (v1.2) is one such board – the slowest member of the 64-bit UEFI for Pi family. It’s basically a Pi 3 without WiFi, BT and worse heat dissipation, so it is clocked down.

Did you know the v1.2 variant of the Pi 2B is actually 64-bit? Now you do.

And after fixing a small eMMC support regression, we even support the compute module variant of the Pi 3. To be fair, I didn’t test the CM3L (the one without eMMC), but it should be working. Let me know if it doesn’t. Also, CM3+ (which just has better heat dissipation) should work but is not validated.

A small Pi in a very big carrier – https://www.waveshare.com/compute-module-io-board-plus.htm

And in case you’re a fan of the amazing cluster carrier board from our friends over at miniNodes

It works!

Enjoy!

As always, read the release notes and usual caveats. The notes have gotten a bit of a rinse, so have a look to clear out any old assumptions.

v1.10 release for Pi 4

Cleanup and bug fixes.

https://github.com/pftf/RPi4/releases/tag/v1.10

What’s inside this release?

Those last two fixed regressions seen on Windows 10 after some ACPI restructuring to properly describe DMA constraints on VideoCore-attached devices. The regressions affected Pi 3, but the fix should equally apply to Pi 4.

The matching release over in Pi 3 land is v1.23. But that release is interesting enough to deserve it’s own post :-).

As always, read the release notes and usual caveats. The notes have gotten a bit of a rinse, so have a look to clear out any old assumptions.

v1.9 release is out

This mostly updates the underlying TF-A firmware, bringing a few important improvements.

https://github.com/pftf/RPi4/releases/tag/v1.9

What’s inside this release?

  • Update to TF-A v2.3 [tianocore/edk2-non-osi@96ec764]
  • Fix an ASSERT being produced with the DEBUG version, related to TFTP functionality [tianocore/edk2-platforms@f09ea1a]

The TF-A changes are worth describing in greater detail.

TF-A is the Arm secure firmware, providing services such as platform power off/reset and secondary CPU manipulation. The improvements to UART detection mean that TF-A firmware, just like UEFI, will honor config.txt selection of the UART (e.g. via overlay, although it’s really done by the VPU firmware). This is more developer oriented, and means not losing logging/initialization messages. Unrelated to Pi 4 itself, it paves the way for proper (transparent) Pi 3 UEFI support for Compute Module variants and that 64-bit variant of the Pi 2 (rev 1.2).

As always, read the release notes and usual caveats. Note that we do not distribute DEBUG builds. The PSCI CPU_OFF implementation allow a host OS to de-initialize individual CPU cores. More concretely, this will allow more of the Arm Architecture Compliance Suite (ACS) to pass.

The matching Pi 3 UEFI release is v1.22.

v1.8 release out

This is a pretty small update, mostly as a checkpoint to some internal refactoring happening.

https://github.com/pftf/RPi4/releases/tag/v1.8

What’s inside this release?

The matching Pi 3 release is https://github.com/pftf/RPi3/releases/tag/v1.21

As always, read the release notes and usual caveats.

It just works – “vanilla” Debian on Pi 3B/3B+.

Pete Batard, who has single-handedly upstreamed the original RaspberryPiPkg to TianoCore edk2-platforms, has an excellent blog post up for a while now, detailing how easy it is to install vanilla Debian on the Raspberry Pi 3B/3B+ with UEFI.

https://pete.akeo.ie/2019/07/installing-debian-arm64-on-raspberry-pi.html

And of course, the Raspberry Pi 4B UEFI is an evolution of the Raspberry Pi 3B/3B+ code.

The Pi 3B/3B+ is still a great platform to explore UEFI functionality, and it’s EBBR-compliant UEFI boot for Linux (that is, with device tree) is still way better than messing with config files. Plus you can do PXE and iSCSI. Isn’t that awesome? Or port Doom to it :-).