[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