mirror of
https://github.com/AsahiLinux/u-boot
synced 2025-02-17 22:49:02 +00:00
x86: Notify the FSP of the 'end firmware' event
Send this notification when U-Boot is about to boot into Linux, as requested by the FSP. Currently this causes a crash with the APL FSP, so leave it disabled for now. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
f31b02c84e
commit
7c73cea442
2 changed files with 31 additions and 0 deletions
|
@ -189,6 +189,14 @@ __weak void board_final_init(void)
|
|||
{
|
||||
}
|
||||
|
||||
/*
|
||||
* Implement a weak default function for boards that need to do some final
|
||||
* processing before booting the OS.
|
||||
*/
|
||||
__weak void board_final_cleanup(void)
|
||||
{
|
||||
}
|
||||
|
||||
int last_stage_init(void)
|
||||
{
|
||||
struct acpi_fadt __maybe_unused *fadt;
|
||||
|
@ -218,6 +226,13 @@ int last_stage_init(void)
|
|||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* TODO(sjg@chromium.org): Move this to bootm_announce_and_cleanup()
|
||||
* once APL FSP-S at 0x200000 does not overlap with the bzimage at
|
||||
* 0x100000.
|
||||
*/
|
||||
board_final_cleanup();
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -60,6 +60,22 @@ void board_final_init(void)
|
|||
debug("OK\n");
|
||||
}
|
||||
|
||||
void board_final_cleanup(void)
|
||||
{
|
||||
u32 status;
|
||||
|
||||
/* TODO(sjg@chromium.org): This causes Linux to crash */
|
||||
return;
|
||||
|
||||
/* call into FspNotify */
|
||||
debug("Calling into FSP (notify phase INIT_PHASE_END_FIRMWARE): ");
|
||||
status = fsp_notify(NULL, INIT_PHASE_END_FIRMWARE);
|
||||
if (status)
|
||||
debug("fail, error code %x\n", status);
|
||||
else
|
||||
debug("OK\n");
|
||||
}
|
||||
|
||||
int fsp_save_s3_stack(void)
|
||||
{
|
||||
struct udevice *dev;
|
||||
|
|
Loading…
Add table
Reference in a new issue