[PATCH 1/6] spl: LOAD_FIT_FULL: Fix selection of the "fdt" node

Simon Glass sjg at chromium.org
Mon Mar 29 09:43:19 CEST 2021


Hi Alexandru,

On Fri, 12 Mar 2021 at 10:32, Alexandru Gagniuc <mr.nuke.me at gmail.com> wrote:
>
> The correct FDT to use is described by the "fdt" property of the
> configuration node. When the fit_unamep argument to fit_image_load()

fit_unamep (and below

> is "fdt", we get the "/images/fdt" node. This is incorrect, as it
> ignores the "fdt" property of the config node, and in most cases,
> the "/images/fdt" node doesn't exist.
>
> When the 'fit_unamep' argument is NULL, fit_image_load() uses the
> IH_TYPE_FLATDT value to read the config property "fdt", which points
> to the correct FDT node(s).
>
> fit_image_load() should probably be split into a function that reads
> an image by name, and one that reads an image by config reference. I
> don't make those decisions, I just point out the craziness.

Somewhere you need to add a simple sentence explaining what your change does.

>
> Signed-off-by: Alexandru Gagniuc <mr.nuke.me at gmail.com>
> ---
>  common/spl/spl.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
>

Reviewed-by: Simon Glass <sjg at chromium.org>


> diff --git a/common/spl/spl.c b/common/spl/spl.c
> index e3d84082f4..986cfbc6fd 100644
> --- a/common/spl/spl.c
> +++ b/common/spl/spl.c
> @@ -201,7 +201,6 @@ static int spl_load_fit_image(struct spl_image_info *spl_image,
>  {
>         bootm_headers_t images;
>         const char *fit_uname_config = NULL;
> -       const char *fit_uname_fdt = FIT_FDT_PROP;
>         const char *uname;
>         ulong fw_data = 0, dt_data = 0, img_data = 0;
>         ulong fw_len = 0, dt_len = 0, img_len = 0;
> @@ -230,8 +229,7 @@ static int spl_load_fit_image(struct spl_image_info *spl_image,
>  #ifdef CONFIG_SPL_FIT_SIGNATURE
>         images.verify = 1;
>  #endif
> -       ret = fit_image_load(&images, (ulong)header,
> -                      &fit_uname_fdt, &fit_uname_config,
> +       ret = fit_image_load(&images, (ulong)header, NULL, &fit_uname_config,
>                        IH_ARCH_DEFAULT, IH_TYPE_FLATDT, -1,
>                        FIT_LOAD_OPTIONAL, &dt_data, &dt_len);
>         if (ret >= 0)
> --
> 2.26.2
>


More information about the U-Boot mailing list