The purpose of this patch is to enable the automatic provision of a relevant
Raspberry Pi 3 Device Tree at runtime, as there currently exists 2 models of
Raspberry Pi 3 (model B and model B+) but we only embed the Device Tree for a
single one (model B).

Obviously, the provision of only a single Device Tree is inconvenient, as it
currently forces users of the model B+ to locate and provide their own Device
Tree in config.txt, which might not be a straightforward operation. It also
adds to the number of extra files that must be copied to the boot media.

With this patch, both Device Tree binaries are embedded in the firmware, with
the relevant being served at runtime according to the detected hardware.

Note that we tried to future-proof the modified code with regards to expected
introduction of new Raspberry Pi platforms (such as the Pi 4). Therefore,
while the switch in FdtDxe.c may seem like overkill for now (with cases that
could be merged), it should make the reuse of that driver easier.

We also tried to harmonize debug output if FtdDxe (avoid acronyms and provide
human readable error codes).

Pete Batard (1):
  Platforms/RPi3: Add multiple embedded Device Tree selection

 Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.c   | 54 ++++++++++++++++----
 Platform/RaspberryPi/RPi3/Drivers/FdtDxe/FdtDxe.inf |  3 +-
 Platform/RaspberryPi/RPi3/RPi3.dec                  |  3 +-
 Platform/RaspberryPi/RPi3/RPi3.fdf                  |  6 ++-
 4 files changed, 52 insertions(+), 14 deletions(-)

-- 
2.21.0.windows.1


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

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

Reply via email to