On 9/5/23 13:30, Michal Simek wrote:
When distro boot is disabled there is no reason to generate variables for
it. Also do not update boot_targets variable because it would be unused.

It is useful for example when standard boot is enabled and distro boot
is disabled.

Signed-off-by: Michal Simek <michal.si...@amd.com>
---

  board/xilinx/versal-net/board.c     | 32 ++++++++++++-----
  board/xilinx/versal/board.c         | 31 +++++++++++-----
  board/xilinx/zynqmp/zynqmp.c        | 56 +++++++++++++++++------------
  include/configs/xilinx_versal.h     |  6 ++++
  include/configs/xilinx_versal_net.h |  6 ++++
  include/configs/xilinx_zynqmp.h     |  6 ++++
  6 files changed, 97 insertions(+), 40 deletions(-)

diff --git a/board/xilinx/versal-net/board.c b/board/xilinx/versal-net/board.c
index 7ad299f3a231..c18be0c26c99 100644
--- a/board/xilinx/versal-net/board.c
+++ b/board/xilinx/versal-net/board.c
@@ -194,7 +194,7 @@ static u8 versal_net_get_bootmode(void)
        return bootmode;
  }
-int board_late_init(void)
+static int boot_targets_setup(void)
  {
        u8 bootmode;
        struct udevice *dev;
@@ -205,14 +205,6 @@ int board_late_init(void)
        char *new_targets;
        char *env_targets;
- if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
-               debug("Saved variables - Skipping\n");
-               return 0;
-       }
-
-       if (!IS_ENABLED(CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG))
-               return 0;
-
        bootmode = versal_net_get_bootmode();
puts("Bootmode: ");
@@ -320,6 +312,28 @@ int board_late_init(void)
env_set("boot_targets", new_targets);
        }
+
+       return 0;
+}
+
+int board_late_init(void)
+{
+       int ret;
+
+       if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
+               debug("Saved variables - Skipping\n");
+               return 0;
+       }
+
+       if (!IS_ENABLED(CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG))
+               return 0;
+
+       if (IS_ENABLED(CONFIG_DISTRO_DEFAULTS)) {
+               ret = boot_targets_setup();
+               if (ret)
+                       return ret;
+       }
+
        return board_late_init_xilinx();
  }
diff --git a/board/xilinx/versal/board.c b/board/xilinx/versal/board.c
index 982a8b3779f1..e4bdd5d7a38b 100644
--- a/board/xilinx/versal/board.c
+++ b/board/xilinx/versal/board.c
@@ -126,7 +126,7 @@ static u8 versal_get_bootmode(void)
        return bootmode;
  }
-int board_late_init(void)
+static int boot_targets_setup(void)
  {
        u8 bootmode;
        struct udevice *dev;
@@ -137,14 +137,6 @@ int board_late_init(void)
        char *new_targets;
        char *env_targets;
- if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
-               debug("Saved variables - Skipping\n");
-               return 0;
-       }
-
-       if (!IS_ENABLED(CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG))
-               return 0;
-
        bootmode = versal_get_bootmode();
puts("Bootmode: ");
@@ -247,6 +239,27 @@ int board_late_init(void)
                env_set("boot_targets", new_targets);
        }
+ return 0;
+}
+
+int board_late_init(void)
+{
+       int ret;
+
+       if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
+               debug("Saved variables - Skipping\n");
+               return 0;
+       }
+
+       if (!IS_ENABLED(CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG))
+               return 0;
+
+       if (IS_ENABLED(CONFIG_DISTRO_DEFAULTS)) {
+               ret = boot_targets_setup();
+               if (ret)
+                       return ret;
+       }
+
        return board_late_init_xilinx();
  }
diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
index 0b6d4e57078b..f16280308483 100644
--- a/board/xilinx/zynqmp/zynqmp.c
+++ b/board/xilinx/zynqmp/zynqmp.c
@@ -384,7 +384,7 @@ static int set_fdtfile(void)
        return 0;
  }
-int board_late_init(void)
+static int boot_targets_setup(void)
  {
        u8 bootmode;
        struct udevice *dev;
@@ -394,27 +394,6 @@ int board_late_init(void)
        const char *mode = NULL;
        char *new_targets;
        char *env_targets;
-       int ret, multiboot;
-
-#if defined(CONFIG_USB_ETHER) && !defined(CONFIG_USB_GADGET_DOWNLOAD)
-       usb_ether_init();
-#endif
-
-       if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
-               debug("Saved variables - Skipping\n");
-               return 0;
-       }
-
-       if (!IS_ENABLED(CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG))
-               return 0;
-
-       ret = set_fdtfile();
-       if (ret)
-               return ret;
-
-       multiboot = multi_boot();
-       if (multiboot >= 0)
-               env_set_hex("multiboot", multiboot);
bootmode = zynqmp_get_bootmode(); @@ -525,6 +504,39 @@ int board_late_init(void)
                free(new_targets);
        }
+ return 0;
+}
+
+int board_late_init(void)
+{
+       int ret, multiboot;
+
+#if defined(CONFIG_USB_ETHER) && !defined(CONFIG_USB_GADGET_DOWNLOAD)
+       usb_ether_init();
+#endif
+
+       if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
+               debug("Saved variables - Skipping\n");
+               return 0;
+       }
+
+       if (!IS_ENABLED(CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG))
+               return 0;
+
+       ret = set_fdtfile();
+       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)
+                       return ret;
+       }
+
        reset_reason();
return board_late_init_xilinx();
diff --git a/include/configs/xilinx_versal.h b/include/configs/xilinx_versal.h
index 98792aba7cce..b634bb1ab705 100644
--- a/include/configs/xilinx_versal.h
+++ b/include/configs/xilinx_versal.h
@@ -43,6 +43,8 @@
        "ramdisk_addr_r=0x02100000\0" \
        "script_size_f=0x80000\0"
+#if defined(CONFIG_DISTRO_DEFAULTS)
+
  #if defined(CONFIG_MMC_SDHCI_ZYNQ)
  # define BOOT_TARGET_DEVICES_MMC(func)        func(MMC, mmc, 0) func(MMC, 
mmc, 1)
  #else
@@ -124,6 +126,10 @@
#include <config_distro_bootcmd.h> +#else /* CONFIG_DISTRO_DEFAULTS */
+# define BOOTENV
+#endif /* CONFIG_DISTRO_DEFAULTS */
+
  /* Initial environment variables */
  #ifndef CFG_EXTRA_ENV_SETTINGS
  #define CFG_EXTRA_ENV_SETTINGS \
diff --git a/include/configs/xilinx_versal_net.h 
b/include/configs/xilinx_versal_net.h
index e17b44093548..2b441da91a10 100644
--- a/include/configs/xilinx_versal_net.h
+++ b/include/configs/xilinx_versal_net.h
@@ -57,6 +57,8 @@
        "ramdisk_addr_r=0x02100000\0" \
        "script_size_f=0x80000\0"
+#if defined(CONFIG_DISTRO_DEFAULTS)
+
  #if defined(CONFIG_MMC_SDHCI_ZYNQ)
  # define BOOT_TARGET_DEVICES_MMC(func)        func(MMC, mmc, 0) func(MMC, 
mmc, 1)
  #else
@@ -125,6 +127,10 @@
#include <config_distro_bootcmd.h> +#else /* CONFIG_DISTRO_DEFAULTS */
+# define BOOTENV
+#endif /* CONFIG_DISTRO_DEFAULTS */
+
  /* Initial environment variables */
  #ifndef CFG_EXTRA_ENV_SETTINGS
  #define CFG_EXTRA_ENV_SETTINGS \
diff --git a/include/configs/xilinx_zynqmp.h b/include/configs/xilinx_zynqmp.h
index 51f0a4253406..c57ab14d1b97 100644
--- a/include/configs/xilinx_zynqmp.h
+++ b/include/configs/xilinx_zynqmp.h
@@ -63,6 +63,8 @@
        "stdout=serial,vidconsole\0" \
        "stderr=serial,vidconsole\0" \
+#if defined(CONFIG_DISTRO_DEFAULTS)
+
  #if defined(CONFIG_MMC_SDHCI_ZYNQ)
  # define BOOT_TARGET_DEVICES_MMC(func)        func(MMC, mmc, 0) func(MMC, 
mmc, 1)
  #else
@@ -174,6 +176,10 @@
#include <config_distro_bootcmd.h> +#else /* CONFIG_DISTRO_DEFAULTS */
+# define BOOTENV
+#endif /* CONFIG_DISTRO_DEFAULTS */
+
  /* Initial environment variables */
  #ifndef CFG_EXTRA_ENV_SETTINGS
  #define CFG_EXTRA_ENV_SETTINGS \

Applied.
M

Reply via email to