Hi Leif,

On 2019.12.11 14:14, Leif Lindholm wrote:
On Wed, Dec 11, 2019 at 11:24:00 +0000, Pete Batard wrote:
Similar to what is the case with the Raspberry Pi 3, the Raspberry Pi
4 UEFI firmware requires the provision of a Trusted Firmware binary
(TF-A).

The binary is built for a dtb base address of 0x00020000 and a UEFI
payload base address of 0x00030000.

Binaries are built using a custom version of TF-A (the source of which
is documented in the Readme), since the official repository is missing
a fix to get proper baudrate when using a recent version of start4.elf,
as we as the ability to switch between PL011 and mini UART. We are
currently working with TF-A to upstream both these fixes so that we can
switch to binaries built from official source at a later date.

In order to provide the ability to switch serial I/O controllers, a
feature we will be adding to the RPi4 UEFI Firmware, and not lose TF-A
output, two binaries are provided, one for mini UART output and one for
PL011 output.

Signed-off-by: Pete Batard <p...@akeo.ie>
---
  Platform/RaspberryPi/RPi4/TrustedFirmware/License.txt       |  26 
++++++++++++++++++++
  Platform/RaspberryPi/RPi4/TrustedFirmware/Readme.md         |  12 +++++++++
  Platform/RaspberryPi/RPi4/TrustedFirmware/bl31_miniuart.bin | Bin 0 -> 41072 
bytes
  Platform/RaspberryPi/RPi4/TrustedFirmware/bl31_pl011.bin    | Bin 0 -> 41072 
bytes
  4 files changed, 38 insertions(+)


new file mode 100644
index 000000000000..7f1749dfc3a0
--- /dev/null
+++ b/Platform/RaspberryPi/RPi4/TrustedFirmware/Readme.md
@@ -0,0 +1,12 @@
+ARM Trusted Firmware for Raspberry Pi 4
+=======================================
+
+The `bl31_#####.bin` TF-A binaries found in this repository were built on a 
Debian 10.2 system
+from https://github.com/pbatard/arm-trusted-firmware/tree/pi4 (pi4 branch) 
using the command:
+
+```
+make PLAT=rpi4 RPI3_PRELOADED_DTB_BASE=0x20000 PRELOADED_BL33_BASE=0x30000 
SUPPORT_VFP=1 [RPI3_USE_PL011_UART=1] DEBUG=0 all
+```
+
+The only difference between these firmwares is that the 
`RPI3_USE_PL011_UART=1` option was added
+to build `bl31_pl011.bin` so that it uses PL011 for serial output rather than the 
"mini UART".

Sanity check: do the build commands still use RPI3_ options for rpi4?

That's correct. This is an option that's meant to apply to both Pi 3 and Pi 4, and for now, I'm keeping everything in line with the current RPi common options that are still prefixed with RPI3_.

There are some vague talks about merging the Pi 3 and Pi 4 TF-A platforms, so maybe we'll drop RPI3_ prefixed options then, but for now, pretty much all of the Pi 4 build options I know of use RPI3_ as a prefix.

Regards,

/Pete


Best Regards,

Leif



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#52129): https://edk2.groups.io/g/devel/message/52129
Mute This Topic: https://groups.io/mt/68147438/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to