[PATCH v3 05/11] efi_loader: add efi_app_common skeleton

Simon Glass sjg at chromium.org
Wed Jul 1 13:59:38 CEST 2026


On 2026-06-28T08:27:58, Heinrich Schuchardt
<heinrich.schuchardt at canonical.com> wrote:
> efi_loader: add efi_app_common skeleton
>
> The EFI dump applications (acpidump, dbginfodump, dtbdump, initrddump,
> smbiosdump) each contain duplicate copies of the same output and
> input helpers, and each has its own command loop. This patch series
> deduplicates that code by introducing a shared module.
>
> Create lib/efi_loader/efi_app_common.c and efi_app_common.h to hold
> utilities shared across the EFI dump applications.
>
> This first patch adds the module skeleton:
>
> * State variables (app_handle, cout, bs, nocolor, systable) owned by
>   the common module. (Removing bs, handle, systable duplication in
>   the apps is left to a later patch.)
> * efi_app_init() to initialize them from sys_table and image_handle,
>   including detecting the 'nocolor' load option via get_load_options()
>   and starts_with().
> * Output helpers: print(), printx(), color(), cls(), error().
> * starts_with() - test whether a UTF-16 string begins with a keyword.
> [...]
>
> lib/efi_loader/Makefile         |  13 +++-
>  lib/efi_loader/dbginfodump.c    |  43 +------------
>  lib/efi_loader/dtbdump.c        | 133 ++--------------------------------------
>  lib/efi_loader/efi_app_common.c | 106 ++++++++++++++++++++++++++++++++
>  lib/efi_loader/efi_app_common.h |  67 ++++++++++++++++++++
>  lib/efi_loader/initrddump.c     | 126 +------------------------------------
>  lib/efi_loader/smbiosdump.c     | 100 +-----------------------------
>  7 files changed, 196 insertions(+), 392 deletions(-)

Reviewed-by: Simon Glass <sjg at chromium.org>


More information about the U-Boot mailing list