passage: Support an incoming passage

Plumb in the ability for U-Boot proper to accept an incoming standard
passage from a previous phase, such as SPL or TF-A. This allows data to
be passed from binary to binary when firmware is booting.

Series-changes: 2
- Rebase to master
- Rework global_data for new stdpass convention

Series-changes: 3
- Move passage.h into this patch
- Add passage_valid() to decide if stdpass was provided
- Move arch_passage_entry() into this patch
- Make the global_data fields present only when needed

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2021-10-29 07:41:13 -06:00
parent e2670b665d
commit e60873c8f3
7 changed files with 139 additions and 7 deletions

View File

@@ -48,5 +48,13 @@ int main(void)
DEFINE(GD_ENV_ADDR, offsetof(struct global_data, env_addr));
#endif
#if CONFIG_IS_ENABLED(PASSAGE_IN)
DEFINE(GD_PASSAGE_MACH, offsetof(struct global_data, passage_mach));
DEFINE(GD_PASSAGE_BLOBLIST,
offsetof(struct global_data, passage_bloblist));
DEFINE(GD_PASSAGE_DTB,
offsetof(struct global_data, passage_dtb));
#endif
return 0;
}