mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 07:04:28 +00:00
spl: pass args to board_return_to_bootrom
Pass spl_image and bootdev to board_return_bootrom. i.MX8MN needs the args to let ROM to load images Cc: Simon Glass <sjg@chromium.org> Cc: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Cc: Kever Yang <kever.yang@rock-chips.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
This commit is contained in:
parent
8c247bbe23
commit
cda789a5b1
5 changed files with 18 additions and 7 deletions
|
@ -277,7 +277,8 @@ void board_init_f(ulong dummy)
|
|||
* BootROM code right after having initialized a few components like the DRAM).
|
||||
* The following function is called from SPL common code (board_init_r).
|
||||
*/
|
||||
void board_return_to_bootrom(void)
|
||||
int board_return_to_bootrom(struct spl_image_info *spl_image,
|
||||
struct spl_boot_device *bootdev)
|
||||
{
|
||||
/*
|
||||
* Retrieve the BootROM's stack pointer and jump back to the start of
|
||||
|
@ -294,4 +295,6 @@ void board_return_to_bootrom(void)
|
|||
"bl back_to_bootrom;"
|
||||
#endif
|
||||
);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -14,9 +14,12 @@
|
|||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
void board_return_to_bootrom(void)
|
||||
int board_return_to_bootrom(struct spl_image_info *spl_image,
|
||||
struct spl_boot_device *bootdev)
|
||||
{
|
||||
back_to_bootrom(BROM_BOOT_NEXTSTAGE);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
__weak const char * const boot_devices[BROM_LAST_BOOTSOURCE + 1] = {
|
||||
|
|
|
@ -77,9 +77,12 @@ void board_init_f(ulong dummy)
|
|||
}
|
||||
}
|
||||
|
||||
void board_return_to_bootrom(void)
|
||||
int board_return_to_bootrom(struct spl_image_info *spl_image,
|
||||
struct spl_boot_device *bootdev)
|
||||
{
|
||||
back_to_bootrom(BROM_BOOT_NEXTSTAGE);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 spl_boot_device(void)
|
||||
|
|
|
@ -6,8 +6,10 @@
|
|||
#include <common.h>
|
||||
#include <spl.h>
|
||||
|
||||
__weak void board_return_to_bootrom(void)
|
||||
__weak int board_return_to_bootrom(struct spl_image_info *spl_image,
|
||||
struct spl_boot_device *bootdev)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int spl_return_to_bootrom(struct spl_image_info *spl_image,
|
||||
|
@ -19,8 +21,7 @@ static int spl_return_to_bootrom(struct spl_image_info *spl_image,
|
|||
* the ROM), it will implement board_return_to_bootrom() and
|
||||
* should not return from it.
|
||||
*/
|
||||
board_return_to_bootrom();
|
||||
return false;
|
||||
return board_return_to_bootrom(spl_image, bootdev);
|
||||
}
|
||||
|
||||
SPL_LOAD_IMAGE_METHOD("BOOTROM", 0, BOOT_DEVICE_BOOTROM, spl_return_to_bootrom);
|
||||
|
|
|
@ -387,7 +387,8 @@ void spl_invoke_opensbi(struct spl_image_info *spl_image);
|
|||
* stage wants to return to the ROM code to continue booting, boards
|
||||
* can implement 'board_return_to_bootrom'.
|
||||
*/
|
||||
void board_return_to_bootrom(void);
|
||||
int board_return_to_bootrom(struct spl_image_info *spl_image,
|
||||
struct spl_boot_device *bootdev);
|
||||
|
||||
/**
|
||||
* board_spl_fit_post_load - allow process images after loading finished
|
||||
|
|
Loading…
Reference in a new issue