event: Introduce EVT_POST_PREBOOT event

Add a new EVT_POST_PREBOOT event type which is fired in main_loop()
after the preboot command has been executed.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
This commit is contained in:
Michal Simek
2026-04-17 08:02:42 +02:00
committed by Heinrich Schuchardt
parent 583efb5040
commit fc36b91243
3 changed files with 16 additions and 0 deletions
+3
View File
@@ -49,6 +49,9 @@ const char *const type_name[] = {
/* main loop events */
"main_loop",
/* post preboot events */
"post_preboot",
/* livetree has been built */
"of_live_init",
};
+4
View File
@@ -19,6 +19,7 @@
#include <net.h>
#include <version_string.h>
#include <efi_loader.h>
#include <event.h>
static void run_preboot_environment_command(void)
{
@@ -53,6 +54,9 @@ void main_loop(void)
if (IS_ENABLED(CONFIG_USE_PREBOOT))
run_preboot_environment_command();
if (event_notify_null(EVT_POST_PREBOOT))
return;
if (IS_ENABLED(CONFIG_UPDATE_TFTP))
update_tftp(0UL, NULL, NULL);
+9
View File
@@ -153,6 +153,15 @@ enum event_t {
*/
EVT_MAIN_LOOP,
/**
* @EVT_POST_PREBOOT:
* This event is triggered in main_loop() after the preboot command
* has run, so that devices initialised by preboot (e.g. USB, UFS)
* are available to event handlers. Its parameter is NULL.
* A non-zero return value causes the boot to fail.
*/
EVT_POST_PREBOOT,
/**
* @EVT_OF_LIVE_BUILT:
* This event is triggered immediately after the live device tree has been