From 62b96262b6dad1000b1ed2fec8664c2757585061 Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Tue, 28 Jul 2020 12:45:47 +0200 Subject: [PATCH] xilinx: Add support for ENV_VARS_UBOOT_RUNTIME_CONFIG Start to use ENV_VARS_UBOOT_RUNTIME_CONFIG to enable/disable updating variables with run time information. Signed-off-by: Michal Simek --- arch/arm/Kconfig | 3 +++ board/xilinx/versal/board.c | 3 +++ board/xilinx/zynq/board.c | 9 +++++++++ board/xilinx/zynqmp/zynqmp.c | 3 +++ 4 files changed, 18 insertions(+) diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index a3930b5714..9b8dadce83 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1085,6 +1085,7 @@ config ARCH_VERSAL select DM_SERIAL select OF_CONTROL imply BOARD_LATE_INIT + imply ENV_VARS_UBOOT_RUNTIME_CONFIG config ARCH_VF610 bool "Freescale Vybrid" @@ -1120,6 +1121,7 @@ config ARCH_ZYNQ imply CMD_CLK imply CMD_DM imply CMD_SPL + imply ENV_VARS_UBOOT_RUNTIME_CONFIG imply FAT_WRITE config ARCH_ZYNQMP_R5 @@ -1159,6 +1161,7 @@ config ARCH_ZYNQMP select ZYNQMP_IPI imply BOARD_LATE_INIT imply CMD_DM + imply ENV_VARS_UBOOT_RUNTIME_CONFIG imply FAT_WRITE imply MP imply DM_USB_GADGET diff --git a/board/xilinx/versal/board.c b/board/xilinx/versal/board.c index 3dc7044b21..a5ca4ca874 100644 --- a/board/xilinx/versal/board.c +++ b/board/xilinx/versal/board.c @@ -116,6 +116,9 @@ int board_late_init(void) return 0; } + if (!CONFIG_IS_ENABLED(ENV_VARS_UBOOT_RUNTIME_CONFIG)) + return 0; + bootmode = versal_get_bootmode(); puts("Bootmode: "); diff --git a/board/xilinx/zynq/board.c b/board/xilinx/zynq/board.c index 2164eac8d5..7ac069aaaf 100644 --- a/board/xilinx/zynq/board.c +++ b/board/xilinx/zynq/board.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -33,6 +34,14 @@ 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 (!CONFIG_IS_ENABLED(ENV_VARS_UBOOT_RUNTIME_CONFIG)) + return 0; + switch ((zynq_slcr_get_boot_mode()) & ZYNQ_BM_MASK) { case ZYNQ_BM_QSPI: mode = "qspi"; diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c index 2a430a9e46..b4e7301d50 100644 --- a/board/xilinx/zynqmp/zynqmp.c +++ b/board/xilinx/zynqmp/zynqmp.c @@ -568,6 +568,9 @@ int board_late_init(void) return 0; } + if (!CONFIG_IS_ENABLED(ENV_VARS_UBOOT_RUNTIME_CONFIG)) + return 0; + ret = set_fdtfile(); if (ret) return ret; -- 2.39.5