[RFC PATCH v2 0/4] enable menu-driven boot device selection

Masahisa Kojima masahisa.kojima at linaro.org
Tue Feb 22 17:02:31 CET 2022


This patch series adds the menu-driven boot device selection.
This menu also provides the functionality to add and delete
Boot#### variable, and edit the BootOrder variable.

This menu appears with the command "bootefi bootmgr",
the menu structure is as follows.

* Menu structure
[Boot Manager]
    -> select Boot#### to boot
[Boot Manager Maintenance]
    - [Add Boot Option]
        -> add new Boot#### variable
    - [Delete Boot Option]
        -> delete existing Boot#### variable
    - [Change Boot Order]
        -> update BootOrder variable

* Things to consider
 - eliminate EFI_CALLs
 - replacement of ANSI_CLEAR_CONSOLE

* Remaining items
 - Support of adding Boot#### other than block device(e.g. network)
 - error notification

Masahisa Kojima (4):
  efi_loader: add menu-driven boot device selection
  lib/charset: add u16_strlcat() function
  test: unit test for u16_strlcat()
  efi_loader: add menu-driven UEFI Boot Variable maintenance

 cmd/bootmenu.c                |  145 -----
 common/menu.c                 |  137 ++++
 include/charset.h             |   15 +
 include/efi_loader.h          |   27 +
 include/menu.h                |   20 +
 lib/charset.c                 |   20 +
 lib/efi_loader/Kconfig        |   20 +
 lib/efi_loader/efi_bootmgr.c  | 1105 ++++++++++++++++++++++++++++++++-
 lib/efi_loader/efi_boottime.c |   55 +-
 lib/efi_loader/efi_console.c  |   81 +++
 lib/efi_loader/efi_file.c     |   74 ++-
 test/unicode_ut.c             |   45 ++
 12 files changed, 1548 insertions(+), 196 deletions(-)

-- 
2.17.1



More information about the U-Boot mailing list