summaryrefslogtreecommitdiff
path: root/board/xilinx/versal/board.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/xilinx/versal/board.c')
-rw-r--r--board/xilinx/versal/board.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/board/xilinx/versal/board.c b/board/xilinx/versal/board.c
index b4483d00ad1..05530736751 100644
--- a/board/xilinx/versal/board.c
+++ b/board/xilinx/versal/board.c
@@ -8,6 +8,7 @@
#include <cpu_func.h>
#include <dfu.h>
#include <env.h>
+#include <efi_loader.h>
#include <fdtdec.h>
#include <init.h>
#include <env_internal.h>
@@ -280,6 +281,9 @@ int board_late_init(void)
{
int ret;
+ if (IS_ENABLED(CONFIG_EFI_HAVE_CAPSULE_SUPPORT))
+ configure_capsule_updates();
+
if (!(gd->flags & GD_FLG_ENV_DEFAULT)) {
debug("Saved variables - Skipping\n");
return 0;
@@ -356,8 +360,6 @@ enum env_location env_get_location(enum env_operation op, int prio)
}
#endif
-#if defined(CONFIG_SET_DFU_ALT_INFO)
-
#define DFU_ALT_BUF_LEN SZ_1K
static void mtd_found_part(u32 *base, u32 *size)
@@ -385,7 +387,7 @@ static void mtd_found_part(u32 *base, u32 *size)
}
}
-void set_dfu_alt_info(char *interface, char *devstr)
+void configure_capsule_updates(void)
{
int bootseq = 0, len = 0;
u32 multiboot = versal_multi_boot();
@@ -393,9 +395,6 @@ void set_dfu_alt_info(char *interface, char *devstr)
ALLOC_CACHE_ALIGN_BUFFER(char, buf, DFU_ALT_BUF_LEN);
- if (env_get("dfu_alt_info"))
- return;
-
memset(buf, 0, sizeof(buf));
multiboot = env_get_hex("multiboot", multiboot);
@@ -436,7 +435,6 @@ void set_dfu_alt_info(char *interface, char *devstr)
return;
}
- env_set("dfu_alt_info", buf);
- puts("DFU alt info setting: done\n");
+ update_info.dfu_string = strdup(buf);
+ debug("Capsule DFU: %s\n", update_info.dfu_string);
}
-#endif