efi_loader: Pass in the required parameters from EFI bootmeth

Rather than setting up the global variables and then making the call,
pass them into function directly. This cleans up the code and makes it
all a bit easier to understand.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2025-01-23 15:07:23 -07:00
committed by Heinrich Schuchardt
parent 5f67c8800e
commit a2338955fc
3 changed files with 83 additions and 47 deletions

View File

@@ -20,6 +20,7 @@
#include <linux/oid_registry.h>
struct blk_desc;
struct bootflow;
struct jmp_buf_data;
#if CONFIG_IS_ENABLED(EFI_LOADER)
@@ -590,6 +591,15 @@ efi_status_t efi_install_fdt(void *fdt);
efi_status_t do_bootefi_exec(efi_handle_t handle, void *load_options);
/* Run loaded UEFI image with given fdt */
efi_status_t efi_binary_run(void *image, size_t size, void *fdt);
/**
* efi_bootflow_run() - Run a bootflow containing an EFI application
*
* @bootflow: Bootflow to run
* Return: Status code, something went wrong
*/
efi_status_t efi_bootflow_run(struct bootflow *bootflow);
/* Initialize variable services */
efi_status_t efi_init_variables(void);
/* Notify ExitBootServices() is called */