[PATCH] xilinx: Check return value from variable setup

Michal Simek michal.simek at xilinx.com
Wed Aug 5 14:03:41 CEST 2020


env_set..() can failed that's why check return status and report it back to
make sure that user is aware that's something went wrong.

Signed-off-by: Michal Simek <michal.simek at xilinx.com>
---

 board/xilinx/common/board.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/board/xilinx/common/board.c b/board/xilinx/common/board.c
index 0782d08ee3fe..0d6d0d29ac0f 100644
--- a/board/xilinx/common/board.c
+++ b/board/xilinx/common/board.c
@@ -78,15 +78,19 @@ void *board_fdt_blob_setup(void)
 int board_late_init_xilinx(void)
 {
 	ulong initrd_hi;
+	int ret = 0;
 
-	env_set_hex("script_offset_f", CONFIG_BOOT_SCRIPT_OFFSET);
+	ret |= env_set_hex("script_offset_f", CONFIG_BOOT_SCRIPT_OFFSET);
 
 	initrd_hi = gd->start_addr_sp - CONFIG_STACK_SIZE;
 	initrd_hi = round_down(initrd_hi, SZ_16M);
-	env_set_addr("initrd_high", (void *)initrd_hi);
+	ret |= env_set_addr("initrd_high", (void *)initrd_hi);
 
-	env_set_addr("bootm_low", (void *)gd->ram_base);
-	env_set_addr("bootm_size", (void *)gd->ram_size);
+	ret |= env_set_addr("bootm_low", (void *)gd->ram_base);
+	ret |= env_set_addr("bootm_size", (void *)gd->ram_size);
+
+	if (ret)
+		printf("%s: Saving run time variables FAILED\n", __func__);
 
 	return 0;
 }
-- 
2.27.0



More information about the U-Boot mailing list