
On Tue, Jun 10, 2014 at 09:35:51AM +0200, Heiko Schocher wrote:
Hello Tom,
Am 05.06.2014 21:15, schrieb Tom Rini:
On Wed, May 28, 2014 at 11:33:35AM +0200, Heiko Schocher wrote:
move fdtdec_get_int() out of lib/fdtdec.c into lib/fdtdec_common.c as this function is also used, if CONFIG_OF_CONTROL is not used. Poped up on the ids8313 board using signed FIT images, and activating CONFIG_SYS_GENERIC_BOARD. Without this patch it shows on boot:
No valid FDT found - please append one to U-Boot binary, use u-boot-dtb.bin or define CONFIG_OF_EMBED. For sandbox, use -d<file.dtb>
With this patch, it boots again with CONFIG_SYS_GENERIC_BOARD enabled.
Signed-off-by: Heiko Schocherhs@denx.de Acked-by: Simon Glasssjg@chromium.org Cc: Tom Rinitrini@ti.com
The problem is that on architectures with old compilers (sparc, blackfin, nds32) this doesn't get discarded due to not being used but instead causes link errors. Can you figure out which option (CONFIG_FIT_SIGNATURE I suspect) drives this need and make sure we include fdtdec_common.o then? Thanks!
I look into it ... but I think it is not only one config option, as this code is not FIT specific and used also for code which uses DT ... (maybe CONFIG_OF_CONTROL or CONFIG_FIT_SIGNATURE).
That's fine, we can have multiple obj-$(CONFIG_...) += fdtdec_common.o (or rename it to fdtdec_get_int.o?).
But.. how is this only a runtime not link time failure?