[PATCH 1/7] efi_selftest: expose runtime table address

Ilias Apalodimas ilias.apalodimas at linaro.org
Mon Nov 17 15:51:45 CET 2025


On Fri, 14 Nov 2025 at 11:33, Heinrich Schuchardt
<heinrich.schuchardt at canonical.com> wrote:
>
> Save the address of the EFI runtime as a global variable.
> This allows to simplify the setup of tests.
>
> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>

Reviewed-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>

> ---
>  include/efi_selftest.h          | 1 +
>  lib/efi_selftest/efi_selftest.c | 8 ++++----
>  2 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/include/efi_selftest.h b/include/efi_selftest.h
> index 1b708849bcb..4ee46cbbb66 100644
> --- a/include/efi_selftest.h
> +++ b/include/efi_selftest.h
> @@ -19,6 +19,7 @@
>
>  extern const struct efi_system_table *st_systable;
>  extern const struct efi_boot_services *st_boottime;
> +extern const struct efi_runtime_services *st_runtime;
>
>  /**
>   * efi_st_printf() - print a message
> diff --git a/lib/efi_selftest/efi_selftest.c b/lib/efi_selftest/efi_selftest.c
> index 191da7fc451..2b95713afb4 100644
> --- a/lib/efi_selftest/efi_selftest.c
> +++ b/lib/efi_selftest/efi_selftest.c
> @@ -16,7 +16,7 @@
>
>  const struct efi_system_table *st_systable;
>  const struct efi_boot_services *st_boottime;
> -static const struct efi_runtime_services *runtime;
> +const struct efi_runtime_services *st_runtime;
>  static efi_handle_t handle;
>  static u16 reset_message[] = u"Selftest completed";
>  static int *setup_status;
> @@ -259,7 +259,7 @@ efi_status_t EFIAPI efi_selftest(efi_handle_t image_handle,
>
>         st_systable = systab;
>         st_boottime = st_systable->boottime;
> -       runtime = st_systable->runtime;
> +       st_runtime = st_systable->runtime;
>         handle = image_handle;
>         con_out = st_systable->con_out;
>         con_in = st_systable->con_in;
> @@ -347,8 +347,8 @@ efi_status_t EFIAPI efi_selftest(efi_handle_t image_handle,
>         efi_st_get_key();
>
>         if (IS_ENABLED(CONFIG_EFI_HAVE_RUNTIME_RESET)) {
> -               runtime->reset_system(EFI_RESET_WARM, EFI_NOT_READY,
> -                                     sizeof(reset_message), reset_message);
> +               st_runtime->reset_system(EFI_RESET_WARM, EFI_NOT_READY,
> +                                        sizeof(reset_message), reset_message);
>         } else {
>                 efi_restore_gd();
>                 do_reset(NULL, 0, 0, NULL);
> --
> 2.51.0
>


More information about the U-Boot mailing list