diff options
author | Philippe Reynes <philippe.reynes@softathome.com> | 2022-02-09 18:01:24 +0100 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2022-02-22 10:05:44 -0700 |
commit | 70f42e720c90faa2fa27836288559e0d647862b7 (patch) | |
tree | c4332070de6af4b6d4e69f5b266a10c3191ba6e0 | |
parent | 606a14ba2f0e01cf7aefe4924d17b5dfda27d1de (diff) | |
download | u-boot-70f42e720c90faa2fa27836288559e0d647862b7.tar.gz |
scripts: dtc: libfdt: fdt_ro.c: always define fdt_check_full
On some configs (like stm32mp15_dhcom_basic_defconfig), if configs
SPL_LOAD_FIT_FULL and SPL_FIT_FULL_CHECK are enabled. Then the compilatio
fails with the following error:
arm-linux-gnueabi-ld.bfd: boot/image-fit.o: in function `fit_check_format':
<PATH>/uboot/u-boot-stm/boot/image-fit.c:1641: undefined reference to `fdt_check_full'
scripts/Makefile.spl:509: recipe for target 'spl/u-boot-spl' failed
This issue happens because the function fdt_check_full is only defined if
"!defined(FDT_ASSUME_MASK) || FDT_ASSUME_MASK != 0xff". But this function
may be called even if this condition are not verified. To avoid this issue,
the function fdt_check_full is always defined.
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
-rw-r--r-- | scripts/dtc/libfdt/fdt_ro.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/scripts/dtc/libfdt/fdt_ro.c b/scripts/dtc/libfdt/fdt_ro.c index efe7efe921..63eaf57f43 100644 --- a/scripts/dtc/libfdt/fdt_ro.c +++ b/scripts/dtc/libfdt/fdt_ro.c @@ -937,4 +937,10 @@ int fdt_check_full(const void *fdt, size_t bufsize) } } } -#endif +#else +int fdt_check_full(const void __always_unused *fdt, + size_t __always_unused bufsize) +{ + return 0; +} +#endif /* #if !defined(FDT_ASSUME_MASK) || FDT_ASSUME_MASK != 0xff */ |