On Fri, Jul 3, 2026 at 1:49 PM Ilias Apalodimas
<[email protected]> wrote:
>
> > Platforms that follow EBBR / Arm SystemReady IR treat the OS devicetree as 
> > part
>
> Not the OS devicetree. The devicetree. It should be a single entity
> consumed by the firmware, os etc.

Yes, indeed.

> >   - Install it on *every* EFI launch path, not just one. SystemReady IR 
> > boots
> >     through the UEFI boot manager, which in U-Boot does not go through the
> >     per-device EFI bootmeth, so a per-device-only hook is not enough.
>
> This should be happening already
> commit 7e624377e99 has some info

Right, and in fact the series relies on that: efi_install_fdt() runs
on every launch. What this bullet is about is the source rather than
the installation: each launch path chooses the devicetree from its own
list (a Boot#### load option, a file on the ESP, the control
devicetree) and currently the firmware partition is not among them.
Basically the (future) series adds it as a source on each path.

> > The *location* is described in the control devicetree. The bootstd node 
> > carries
> > a 'firmware-fdt-source' phandle to a node that is a child of the media 
> > device
> > that owns the partition:
>
> A lot of boards are building with  CONFIG_OF_UPSTREAM. Is this
> something that wil be injected in the DT during build?

Exactly that: the binding is U-Boot-specific, so it lives in the
board's arch/arm/dts/<board>-u-boot.dtsi, which the build system
merges into the OF_UPSTREAM devicetree automatically (the upstream dts
is never modified).

> > Each path installs the result through efi_install_fdt(), the convergence
> > point all EFI launches pass through, so the firmware devicetree is installed
> > regardless of how the EFI application is started, including the boot-manager
> > autoboot path that SystemReady IR uses.
>
> That path should be fine since it applies the local fixups before installing 
> it.

yeah, that's the idea.

Thanks for the pointers, cheers.

--
Carlo Caione

Reply via email to