[PATCH v5 02/26] doc: Add documentation about devicetree usage

Ilias Apalodimas ilias.apalodimas at linaro.org
Wed Oct 27 11:29:50 CEST 2021


On Tue, 26 Oct 2021 at 18:27, Simon Glass <sjg at chromium.org> wrote:
>
> Hi Ilias,
>
> On Tue, 26 Oct 2021 at 08:06, Ilias Apalodimas
> <ilias.apalodimas at linaro.org> wrote:
> >
> > Hi Simon,
> >
> > > +
> >
> > [...]
> >
> > > +This is why `CONFIG_OF_SEPARATE` should always be used when building U-Boot.
> > > +The `CONFIG_OF_EMBED` option embeds the devicetree somewhere in the U-Boot ELF
> > > +image as rodata, meaning that it is hard to find it and it cannot increase in
> > > +size.
> > > +
> > > +When modifying the devicetree, the different cases to consider are as follows:
> > > +
> > > +- CONFIG_OF_SEPARATE
> > > +    This is easy, described above. Just change, replace or rebuild the
> > > +    devicetree so it suits your needs, then rerun binman or redo the `cat`
> > > +    operation to join `u-boot-nodtb.bin` and the new `u-boot.dtb`
> > > +
> > > +- CONFIG_OF_EMBED
> > > +    This is tricky, since the devicetree cannot easily be located. If the EFL
> > > +    file is available, then the _dtb_dt_begin and __dtb_dt_end symbols can be
> > > +    examined to find it. While it is possible to contract the file, it is not
> > > +    possible to expand the file since that would involve re-linking
> > > +
> > > +- CONFIG_OF_BOARD
> > > +    This is a board-specific situation, so needs to be considered on a
> > > +    case-by-case base. The devicetree must be modified so that the correct
> > > +    one is provided to U-Boot. How this is done depends entirely on the
> > > +    implementation of this option for the board. It might require injecting the
> > > +    changes into a different project somehow using tooling available there, or
> > > +    it might involve merging an overlay file at runtime to obtain the desired
> > > +    result.
> >
> > I thought this document was trying to describe the current situation in
> > U-Boot.  If so, the current CONFIG_OF_BOARD usage is far from what we have
> > here.
>
> Can you be more specific? What is the difference here? Also see the
> doc update later in the series, after OF_BOARD becomes a bool option.

The doc you sent says "devicetree must be modified so that the correct
one is provided to U-Boot.  By this I assume you mean the 'config/'
node etc right?  If that's the case this is *not* what is currently
happening.  We simply replace the entire device tree with whatever was
configured.

Regards
/Ilias

>
> Regards,
> SImon


More information about the U-Boot mailing list