]> git.baikalelectronics.ru Git - uboot.git/commit
spl: binman: Split binman symbols support from enabling binman
authorAlper Nebi Yasak <alpernebiyasak@gmail.com>
Sat, 18 Jun 2022 12:13:09 +0000 (15:13 +0300)
committerSimon Glass <sjg@chromium.org>
Tue, 28 Jun 2022 02:09:52 +0000 (03:09 +0100)
commitac8a79e705639b58a31651f8986fccd196cd230e
treeda462321dd8915197c5fa45e77e3d7662c99b93f
parente152d6ec5aebe3aa8519dcc919695c4d80cfa9dc
spl: binman: Split binman symbols support from enabling binman

Enabling CONFIG_BINMAN makes binman run after a build to package any
images specified in the device-tree. It also enables a mechanism for
SPL/TPL to declare and use special linker symbols that refer to other
entries in the same binman image. A similar feature that gets this info
from the device-tree exists for U-Boot proper, but it is gated behind a
CONFIG_BINMAN_FDT unlike the symbols.

Confusingly, CONFIG_SPL/TPL_BINMAN_SYMBOLS also exist. These configs
don't actually enable/disable the symbols mechanism as one would expect,
but declare some symbols for U-Boot using this mechanism.

Reuse the BINMAN_SYMBOLS configs to make them toggle the symbols
mechanism, and declare symbols for the U-Boot phases in a dependent
BINMAN_UBOOT_SYMBOLS config. Extend it to cover symbols of all phases.
Update the config prompt and help message to make it clearer about this.
Fix binman test binaries to work with CONFIG_IS_ENABLED(BINMAN_SYMBOLS).

Co-developed-by: Peng Fan <peng.fan@nxp.com>
[Alper: New config for phase symbols, update Kconfigs, commit message]
Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
common/spl/Kconfig
common/spl/Kconfig.tpl
common/spl/spl.c
include/binman_sym.h
tools/binman/test/Makefile
tools/binman/test/generated/autoconf.h [new file with mode: 0644]
tools/binman/test/u_boot_binman_syms.c
tools/binman/test/u_boot_binman_syms_size.c