binman: Support packaging U-Boot for scenarios like OF_BOARD or OF_PRIOR_STAGE

For scenarios like OF_BOARD or OF_PRIOR_STAGE, no device tree blob is
provided in the U-Boot build phase hence the binman node information
is not available. In order to support such use case, a new Kconfig
option BINMAN_STANDALONE_FDT is introduced, to tell the build system
that a device tree blob containing binman node is explicitly required
when using binman to package U-Boot.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Bin Meng
2021-05-10 20:23:37 +08:00
committed by Leo Yu-Chi Liang
parent 1621d3c434
commit 31eefd4380
3 changed files with 44 additions and 1 deletions

View File

@@ -19,6 +19,24 @@ config BINMAN
bool
select DTOC
config BINMAN_STANDALONE_FDT
bool
depends on BINMAN
default y if OF_BOARD || OF_PRIOR_STAGE
help
This option tells U-Boot build system that a standalone device tree
source is explicitly required when using binman to package U-Boot.
This is not necessary in a common scenario where a device tree source
that contains the binman node is provided in the arch/<arch>/dts
directory for a specific board. Such device tree sources are built for
OF_SEPARATE or OF_EMBED. However for a scenario like the board device
tree blob is not provided in the U-Boot build tree, but fed to U-Boot
in the runtime, e.g.: in the OF_PRIOR_STAGE case that it is passed by
a prior stage bootloader. For such scenario, a standalone device tree
blob containing binman node to describe how to package U-Boot should
be provided explicitly.
menu "Device Tree Control"
depends on SUPPORT_OF_CONTROL