[PATCH v2] boot: Warn users about fdt_high=~0 usage

Ilias Apalodimas ilias.apalodimas at linaro.org
Thu Nov 20 07:08:32 CET 2025


On Wed, 19 Nov 2025 at 19:44, Marek Vasut
<marek.vasut+renesas at mailbox.org> wrote:
>
> 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 at mailbox.org>

Reviewed-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>

> ---
> Cc: "João Paulo Gonçalves" <joao.goncalves at toradex.com>
> Cc: Ilias Apalodimas <ilias.apalodimas at linaro.org>
> Cc: Sam Protsenko <semen.protsenko at linaro.org>
> Cc: Sughosh Ganu <sughosh.ganu at linaro.org>
> Cc: Tom Rini <trini at konsulko.com>
> Cc: u-boot at lists.denx.de
> ---
> V2: Warn unconditionally
> ---
>  boot/image-fdt.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/boot/image-fdt.c b/boot/image-fdt.c
> index 3f0ac54f76f..a3a4fb8b558 100644
> --- a/boot/image-fdt.c
> +++ b/boot/image-fdt.c
> @@ -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) {
> --
> 2.51.0
>


More information about the U-Boot mailing list