mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-01 00:49:43 +00:00
arm64: xilinx: Guard distro boot variable generation
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.simek@amd.com> Link: https://lore.kernel.org/r/570c51435da59831ec245cddceda078afa58a550.1693913398.git.michal.simek@amd.com
This commit is contained in:
parent
9080abfc0b
commit
6ec17a2c0f
6 changed files with 97 additions and 40 deletions
|
@ -194,7 +194,7 @@ static u8 versal_net_get_bootmode(void)
|
||||||
return bootmode;
|
return bootmode;
|
||||||
}
|
}
|
||||||
|
|
||||||
int board_late_init(void)
|
static int boot_targets_setup(void)
|
||||||
{
|
{
|
||||||
u8 bootmode;
|
u8 bootmode;
|
||||||
struct udevice *dev;
|
struct udevice *dev;
|
||||||
|
@ -205,14 +205,6 @@ int board_late_init(void)
|
||||||
char *new_targets;
|
char *new_targets;
|
||||||
char *env_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();
|
bootmode = versal_net_get_bootmode();
|
||||||
|
|
||||||
puts("Bootmode: ");
|
puts("Bootmode: ");
|
||||||
|
@ -320,6 +312,28 @@ int board_late_init(void)
|
||||||
|
|
||||||
env_set("boot_targets", new_targets);
|
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();
|
return board_late_init_xilinx();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -126,7 +126,7 @@ static u8 versal_get_bootmode(void)
|
||||||
return bootmode;
|
return bootmode;
|
||||||
}
|
}
|
||||||
|
|
||||||
int board_late_init(void)
|
static int boot_targets_setup(void)
|
||||||
{
|
{
|
||||||
u8 bootmode;
|
u8 bootmode;
|
||||||
struct udevice *dev;
|
struct udevice *dev;
|
||||||
|
@ -137,14 +137,6 @@ int board_late_init(void)
|
||||||
char *new_targets;
|
char *new_targets;
|
||||||
char *env_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();
|
bootmode = versal_get_bootmode();
|
||||||
|
|
||||||
puts("Bootmode: ");
|
puts("Bootmode: ");
|
||||||
|
@ -247,6 +239,27 @@ int board_late_init(void)
|
||||||
env_set("boot_targets", new_targets);
|
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();
|
return board_late_init_xilinx();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -384,7 +384,7 @@ static int set_fdtfile(void)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int board_late_init(void)
|
static int boot_targets_setup(void)
|
||||||
{
|
{
|
||||||
u8 bootmode;
|
u8 bootmode;
|
||||||
struct udevice *dev;
|
struct udevice *dev;
|
||||||
|
@ -394,27 +394,6 @@ int board_late_init(void)
|
||||||
const char *mode = NULL;
|
const char *mode = NULL;
|
||||||
char *new_targets;
|
char *new_targets;
|
||||||
char *env_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();
|
bootmode = zynqmp_get_bootmode();
|
||||||
|
|
||||||
|
@ -525,6 +504,39 @@ int board_late_init(void)
|
||||||
free(new_targets);
|
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();
|
reset_reason();
|
||||||
|
|
||||||
return board_late_init_xilinx();
|
return board_late_init_xilinx();
|
||||||
|
|
|
@ -43,6 +43,8 @@
|
||||||
"ramdisk_addr_r=0x02100000\0" \
|
"ramdisk_addr_r=0x02100000\0" \
|
||||||
"script_size_f=0x80000\0"
|
"script_size_f=0x80000\0"
|
||||||
|
|
||||||
|
#if defined(CONFIG_DISTRO_DEFAULTS)
|
||||||
|
|
||||||
#if defined(CONFIG_MMC_SDHCI_ZYNQ)
|
#if defined(CONFIG_MMC_SDHCI_ZYNQ)
|
||||||
# define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
|
# define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
|
||||||
#else
|
#else
|
||||||
|
@ -124,6 +126,10 @@
|
||||||
|
|
||||||
#include <config_distro_bootcmd.h>
|
#include <config_distro_bootcmd.h>
|
||||||
|
|
||||||
|
#else /* CONFIG_DISTRO_DEFAULTS */
|
||||||
|
# define BOOTENV
|
||||||
|
#endif /* CONFIG_DISTRO_DEFAULTS */
|
||||||
|
|
||||||
/* Initial environment variables */
|
/* Initial environment variables */
|
||||||
#ifndef CFG_EXTRA_ENV_SETTINGS
|
#ifndef CFG_EXTRA_ENV_SETTINGS
|
||||||
#define CFG_EXTRA_ENV_SETTINGS \
|
#define CFG_EXTRA_ENV_SETTINGS \
|
||||||
|
|
|
@ -57,6 +57,8 @@
|
||||||
"ramdisk_addr_r=0x02100000\0" \
|
"ramdisk_addr_r=0x02100000\0" \
|
||||||
"script_size_f=0x80000\0"
|
"script_size_f=0x80000\0"
|
||||||
|
|
||||||
|
#if defined(CONFIG_DISTRO_DEFAULTS)
|
||||||
|
|
||||||
#if defined(CONFIG_MMC_SDHCI_ZYNQ)
|
#if defined(CONFIG_MMC_SDHCI_ZYNQ)
|
||||||
# define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
|
# define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
|
||||||
#else
|
#else
|
||||||
|
@ -125,6 +127,10 @@
|
||||||
|
|
||||||
#include <config_distro_bootcmd.h>
|
#include <config_distro_bootcmd.h>
|
||||||
|
|
||||||
|
#else /* CONFIG_DISTRO_DEFAULTS */
|
||||||
|
# define BOOTENV
|
||||||
|
#endif /* CONFIG_DISTRO_DEFAULTS */
|
||||||
|
|
||||||
/* Initial environment variables */
|
/* Initial environment variables */
|
||||||
#ifndef CFG_EXTRA_ENV_SETTINGS
|
#ifndef CFG_EXTRA_ENV_SETTINGS
|
||||||
#define CFG_EXTRA_ENV_SETTINGS \
|
#define CFG_EXTRA_ENV_SETTINGS \
|
||||||
|
|
|
@ -63,6 +63,8 @@
|
||||||
"stdout=serial,vidconsole\0" \
|
"stdout=serial,vidconsole\0" \
|
||||||
"stderr=serial,vidconsole\0" \
|
"stderr=serial,vidconsole\0" \
|
||||||
|
|
||||||
|
#if defined(CONFIG_DISTRO_DEFAULTS)
|
||||||
|
|
||||||
#if defined(CONFIG_MMC_SDHCI_ZYNQ)
|
#if defined(CONFIG_MMC_SDHCI_ZYNQ)
|
||||||
# define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
|
# define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0) func(MMC, mmc, 1)
|
||||||
#else
|
#else
|
||||||
|
@ -174,6 +176,10 @@
|
||||||
|
|
||||||
#include <config_distro_bootcmd.h>
|
#include <config_distro_bootcmd.h>
|
||||||
|
|
||||||
|
#else /* CONFIG_DISTRO_DEFAULTS */
|
||||||
|
# define BOOTENV
|
||||||
|
#endif /* CONFIG_DISTRO_DEFAULTS */
|
||||||
|
|
||||||
/* Initial environment variables */
|
/* Initial environment variables */
|
||||||
#ifndef CFG_EXTRA_ENV_SETTINGS
|
#ifndef CFG_EXTRA_ENV_SETTINGS
|
||||||
#define CFG_EXTRA_ENV_SETTINGS \
|
#define CFG_EXTRA_ENV_SETTINGS \
|
||||||
|
|
Loading…
Reference in a new issue