boot: Warn users about fdt_high=~0 usage

In case the 'fdt_high' environment variable is set to ~0, warn users
about the dangers of the fdt_high usage. This will hopefully lead to
removal of most of the fdt_high ~0 usage over time.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
This commit is contained in:
Marek Vasut
2025-11-19 18:43:53 +01:00
committed by Tom Rini
parent 48e56ac26d
commit 9235da9446

View File

@@ -189,6 +189,12 @@ int boot_relocate_fdt(char **of_flat_tree, ulong *of_size)
/* All ones means use fdt in place */
of_start = fdt_blob;
addr = map_to_sysmem(fdt_blob);
printf("WARNING:\n"
"The 'fdt_high' environment variable is set to ~0. This is known to cause\n"
"boot failures due to placement of DT at non-8-byte-aligned addresses.\n"
"This system will likely fail to boot. Unset the 'fdt_high' environment\n"
"variable and submit a fix upstream.\n");
err = lmb_alloc_mem(LMB_MEM_ALLOC_ADDR, 0, &addr,
of_len, LMB_NONE);
if (err) {