
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(-)