summaryrefslogtreecommitdiff
path: root/board/beagle/beagleboneai64/beagleboneai64.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2024-06-18 10:47:10 -0600
committerTom Rini <trini@konsulko.com>2024-06-18 10:47:10 -0600
commit01a5d7547ed3a51a8ac5837c31a150f85bc475f8 (patch)
tree326a83a66dad60d2a406c593b775245b3ed764ca /board/beagle/beagleboneai64/beagleboneai64.c
parent2c92ec69d162c1ac1a6b6ab25324c0e53b4a6ffe (diff)
parent3e6fd29aa88c5c05a3e4057148ff74c7f2d7a3d2 (diff)
Merge patch series "EFI: ti: Enable EFI capsule updates"
Jonathan Humphreys <j-humphreys@ti.com> says: Enable on disk capsule updates, which includes defining the firmware components (tiboot3, spl, u-boot) and enabling processing of raw capsule updates. This is enabled for several TI SoC based platforms: AM64, AM62, AM62p, AM69, BeaglePlay, J7, and BeagleboneAI. The configs to enable this are in a single base config file. This will make it more scalable to add additional EFI capsule features (like authentication) across all TI boards that have capsules enabled. This series also includes enabling serial flash DFU for AM62 and MMC DFU for beagleplay.
Diffstat (limited to 'board/beagle/beagleboneai64/beagleboneai64.c')
-rw-r--r--board/beagle/beagleboneai64/beagleboneai64.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/board/beagle/beagleboneai64/beagleboneai64.c b/board/beagle/beagleboneai64/beagleboneai64.c
index c5b4ff7df47..1e43d1c1bd2 100644
--- a/board/beagle/beagleboneai64/beagleboneai64.c
+++ b/board/beagle/beagleboneai64/beagleboneai64.c
@@ -7,6 +7,7 @@
* Copyright (C) 2022-2023 Robert Nelson, BeagleBoard.org Foundation
*/
+#include <efi_loader.h>
#include <cpu_func.h>
#include <env.h>
#include <fdt_support.h>
@@ -14,6 +15,44 @@
DECLARE_GLOBAL_DATA_PTR;
+struct efi_fw_image fw_images[] = {
+ {
+ .image_type_id = BEAGLEBONEAI64_TIBOOT3_IMAGE_GUID,
+ .fw_name = u"BEAGLEBONEAI64_TIBOOT3",
+ .image_index = 1,
+ },
+ {
+ .image_type_id = BEAGLEBONEAI64_SPL_IMAGE_GUID,
+ .fw_name = u"BEAGLEBONEAI64_SPL",
+ .image_index = 2,
+ },
+ {
+ .image_type_id = BEAGLEBONEAI64_UBOOT_IMAGE_GUID,
+ .fw_name = u"BEAGLEBONEAI64_UBOOT",
+ .image_index = 3,
+ },
+ {
+ .image_type_id = BEAGLEBONEAI64_SYSFW_IMAGE_GUID,
+ .fw_name = u"BEAGLEBONEAI64_SYSFW",
+ .image_index = 4,
+ }
+};
+
+struct efi_capsule_update_info update_info = {
+ .dfu_string = "mmc 0=tiboot3.bin raw 0 2000 mmcpart 1;"
+ "tispl.bin fat 0 1;u-boot.img fat 0 1; sysfw.itb fat 0 1",
+ .num_images = ARRAY_SIZE(fw_images),
+ .images = fw_images,
+};
+
+#if IS_ENABLED(CONFIG_SET_DFU_ALT_INFO)
+void set_dfu_alt_info(char *interface, char *devstr)
+{
+ if (IS_ENABLED(CONFIG_EFI_HAVE_CAPSULE_SUPPORT))
+ env_set("dfu_alt_info", update_info.dfu_string);
+}
+#endif
+
int board_init(void)
{
return 0;