
On Tue, 26 Oct 2021 at 18:27, Simon Glass sjg@chromium.org wrote:
Hi Ilias,
On Tue, 26 Oct 2021 at 08:06, Ilias Apalodimas ilias.apalodimas@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