Once the environment was saved, the current multiboot image information
became unreachable. When dealing with firmware updates, this information
is necessary alongside the saved environment to know the booted image.

Move the multiboot environment set operation before the saved environment
check to ensure this information is always available.

Signed-off-by: Kory Maincent <kory.mainc...@bootlin.com>
---

Change in v2:
- Fix nit in the commit message
---
 board/xilinx/zynqmp/zynqmp.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
index f370fb7347a..16292ed1c7e 100644
--- a/board/xilinx/zynqmp/zynqmp.c
+++ b/board/xilinx/zynqmp/zynqmp.c
@@ -519,6 +519,10 @@ int board_late_init(void)
        usb_ether_init();
 #endif
 
+       multiboot = multi_boot();
+       if (multiboot >= 0)
+               env_set_hex("multiboot", multiboot);
+
        if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
                debug("Saved variables - Skipping\n");
                return 0;
@@ -531,10 +535,6 @@ int board_late_init(void)
        if (ret)
                return ret;
 
-       multiboot = multi_boot();
-       if (multiboot >= 0)
-               env_set_hex("multiboot", multiboot);
-
        if (IS_ENABLED(CONFIG_DISTRO_DEFAULTS)) {
                ret = boot_targets_setup();
                if (ret)
-- 
2.34.1

Reply via email to