aboutsummaryrefslogtreecommitdiff
path: root/board
diff options
context:
space:
mode:
authorJonathan Humphreys2024-06-14 11:35:31 -0500
committerTom Rini2024-06-18 10:43:29 -0600
commit5b84d2de5e6cbecdbb363cfcf488a51af2e725b8 (patch)
tree6ce28dfa174fbf7b679cc9113d6151db86c00260 /board
parent287c08e4132c6db8e99b88f4000bdde45b1e6105 (diff)
board: am64x: Define capsule update firmware info
Define the firmware components updatable via EFI capsule update, including defining capsule GUIDs for the various firmware components for the AM64x SK. Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com> Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'board')
-rw-r--r--board/ti/am64x/evm.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/board/ti/am64x/evm.c b/board/ti/am64x/evm.c
index b8de69da06c..609e5cf6d51 100644
--- a/board/ti/am64x/evm.c
+++ b/board/ti/am64x/evm.c
@@ -7,6 +7,7 @@
*
*/
+#include <efi_loader.h>
#include <asm/io.h>
#include <dm/uclass.h>
#include <k3-ddrss.h>
@@ -27,6 +28,39 @@
DECLARE_GLOBAL_DATA_PTR;
+struct efi_fw_image fw_images[] = {
+ {
+ .image_type_id = AM64X_SK_TIBOOT3_IMAGE_GUID,
+ .fw_name = u"AM64X_SK_TIBOOT3",
+ .image_index = 1,
+ },
+ {
+ .image_type_id = AM64X_SK_SPL_IMAGE_GUID,
+ .fw_name = u"AM64X_SK_SPL",
+ .image_index = 2,
+ },
+ {
+ .image_type_id = AM64X_SK_UBOOT_IMAGE_GUID,
+ .fw_name = u"AM64X_SK_UBOOT",
+ .image_index = 3,
+ }
+};
+
+struct efi_capsule_update_info update_info = {
+ .dfu_string = "sf 0:0=tiboot3.bin raw 0 100000;"
+ "tispl.bin raw 100000 200000;u-boot.img raw 300000 400000",
+ .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;