spl: Set spl_image->fdt_addr pointer for full fitImage configuration
authorMarek Vasut <marex@denx.de>
Tue, 7 May 2019 19:17:02 +0000 (21:17 +0200)
committerTom Rini <trini@konsulko.com>
Sat, 18 May 2019 16:32:00 +0000 (12:32 -0400)
Set the spl_image->fdt_addr pointer both for simple fitImage configuration
as well as full fitImage configuration, to let spl_perform_fixups() access
the DT and perform modifications to it if necessary.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Tom Rini <trini@konsulko.com>
common/spl/spl.c
include/spl.h

index 0a6a47c202019c1885c25173d6520a95f467886a..4ddeff9b51ee657144855e8f884e3f3234b00a33 100644 (file)
@@ -195,10 +195,12 @@ static int spl_load_fit_image(struct spl_image_info *spl_image,
 #ifdef CONFIG_SPL_FIT_SIGNATURE
        images.verify = 1;
 #endif
-       fit_image_load(&images, (ulong)header,
+       ret = fit_image_load(&images, (ulong)header,
                       &fit_uname_fdt, &fit_uname_config,
                       IH_ARCH_DEFAULT, IH_TYPE_FLATDT, -1,
                       FIT_LOAD_OPTIONAL, &dt_data, &dt_len);
+       if (ret >= 0)
+               spl_image->fdt_addr = (void *)dt_data;
 
        conf_noffset = fit_conf_get_node((const void *)header,
                                         fit_uname_config);
index f09909e189ba9314d321e79d807f9a66c92ce5c1..a9aaef345faf3821272d56bd7633da80984f1c28 100644 (file)
@@ -67,7 +67,7 @@ struct spl_image_info {
        u8 os;
        uintptr_t load_addr;
        uintptr_t entry_point;
-#if CONFIG_IS_ENABLED(LOAD_FIT)
+#if CONFIG_IS_ENABLED(LOAD_FIT) || CONFIG_IS_ENABLED(LOAD_FIT_FULL)
        void *fdt_addr;
 #endif
        u32 boot_device;