aboutsummaryrefslogtreecommitdiff
path: root/common/spl/spl.c
diff options
context:
space:
mode:
authorSimon Glass2023-09-26 08:14:36 -0600
committerTom Rini2023-10-06 14:38:12 -0400
commita17e1e76c8984396b82b2b20a1bf9d4e7160182a (patch)
tree039e5b83441b967a188182e8a44d184f26efe5ce /common/spl/spl.c
parent2354daaf3946b5d0eefc8c8c87b007b480680df5 (diff)
spl: Move bloblist writing until the image is known
The bloblist should not be finalised until the image is fully set up. This allows any final handoff information to be included in the bloblist. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common/spl/spl.c')
-rw-r--r--common/spl/spl.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/common/spl/spl.c b/common/spl/spl.c
index 9f605b32407..0cf887fd626 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -724,18 +724,6 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
}
spl_perform_fixups(&spl_image);
- if (CONFIG_IS_ENABLED(HANDOFF)) {
- ret = write_spl_handoff();
- if (ret)
- printf(SPL_TPL_PROMPT
- "SPL hand-off write failed (err=%d)\n", ret);
- }
- if (CONFIG_IS_ENABLED(BLOBLIST)) {
- ret = bloblist_finish();
- if (ret)
- printf("Warning: Failed to finish bloblist (ret=%d)\n",
- ret);
- }
os = spl_image.os;
if (os == IH_OS_U_BOOT) {
@@ -782,6 +770,18 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
dev->name, rc);
}
}
+ if (CONFIG_IS_ENABLED(HANDOFF)) {
+ ret = write_spl_handoff();
+ if (ret)
+ printf(SPL_TPL_PROMPT
+ "SPL hand-off write failed (err=%d)\n", ret);
+ }
+ if (CONFIG_IS_ENABLED(BLOBLIST)) {
+ ret = bloblist_finish();
+ if (ret)
+ printf("Warning: Failed to finish bloblist (ret=%d)\n",
+ ret);
+ }
spl_board_prepare_for_boot();
jump_to_image_no_args(&spl_image);