summaryrefslogtreecommitdiffstats
path: root/include/spl.h
diff options
context:
space:
mode:
authorPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>2018-05-24 17:15:50 +0200
committerPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>2018-07-21 01:55:26 +0200
commitde5dd4c4e38575c4e27d56a5ed2bb3975b366830 (patch)
treec18c3c1c9a10aa246dfae37c68335c9c371a67cf /include/spl.h
parentdf253b8fca7c445767fa804d4de0168d860780ed (diff)
downloadu-boot-de5dd4c4e38575c4e27d56a5ed2bb3975b366830.tar.gz
u-boot-de5dd4c4e38575c4e27d56a5ed2bb3975b366830.tar.xz
u-boot-de5dd4c4e38575c4e27d56a5ed2bb3975b366830.zip
spl: record boot_device into spl_image and call spl_perform_fixups
On some boards, we want to give the board/architecture-specific code a chance to look at where the next image has been loaded from and perform fixups before starting the next image. This is of particular importance, when we probe multiple devices for bootable payloads and boot the first one found. This change adds the following: - we record the boot_device used into the spl_image structure - we provide an extension-point for boards/architectures that can perform late fixups depending on a fully populated spl_image structure (i.e. we'll know the final boot_device and have info on the image type and operating system to be booted). Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Tested-by: Klaus Goger <klaus.goger@theobroma-systems.com>
Diffstat (limited to 'include/spl.h')
-rw-r--r--include/spl.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/spl.h b/include/spl.h
index 8454ea7ad4..86287874e1 100644
--- a/include/spl.h
+++ b/include/spl.h
@@ -29,6 +29,7 @@ struct spl_image_info {
#if CONFIG_IS_ENABLED(LOAD_FIT)
void *fdt_addr;
#endif
+ u32 boot_device;
u32 size;
u32 flags;
void *arg;
@@ -296,4 +297,10 @@ void spl_invoke_atf(struct spl_image_info *spl_image);
* can implement 'board_return_to_bootrom'.
*/
void board_return_to_bootrom(void);
+
+/**
+ * spl_perform_fixups() - arch/board-specific callback before processing
+ * the boot-payload
+ */
+void spl_perform_fixups(struct spl_image_info *spl_image);
#endif