[PATCH v5 13/17] efi_loader: menu-driven addition of UEFI boot option

Heinrich Schuchardt xypron.glpk at gmx.de
Mon May 9 14:56:27 CEST 2022


On 5/9/22 11:27, Masahisa Kojima wrote:
> On Sat, 7 May 2022 at 03:16, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>>
>>
>>
>> Am 6. Mai 2022 20:10:58 MESZ schrieb Mark Kettenis <mark.kettenis at xs4all.nl>:
>>>> Date: Fri, 6 May 2022 19:30:51 +0200
>>>> From: Heinrich Schuchardt <xypron.glpk at gmx.de>
>>>>
>>>> On 4/30/22 14:49, Heinrich Schuchardt wrote:
>>>>> On 4/29/22 12:56, Heinrich Schuchardt wrote:
>>>>>> On 4/28/22 18:33, Heinrich Schuchardt wrote:
>>>>>>> On 4/28/22 10:09, Masahisa Kojima wrote:
>>>>>>>> This commit supports the menu-driven UEFI boot option addition.
>>>>>>>> User can select the block device volume having
>>>>>>>> efi_simple_file_system_protocol and select the file corresponding
>>>>>>>> to the Boot#### variable. Then user enter the label of the BOOT####
>>>>>>>> variable in utf8.
>>>>>>>>
>>>>>>>> Signed-off-by: Masahisa Kojima <masahisa.kojima at linaro.org>
>>>>
>>>> This patch creates unexpected behavior:
>>>>
>>>> In the console I entered:
>>>>
>>>> setenv bootmenu_0 foo=echo foo
>>>> setenv bootmenu_1 bar=echo bar
>>>> bootmenu 20
>>>>
>>>> Nothing here relates to UEFI but the menu shows:
>>>>
>>>>         foo
>>>>         bar
>>>>         UEFI Boot Manager Maintenance
>>>>         Quit
>>>>
>>>> Please, don't show 'UEFI Boot Manager Maintenance' if we are not in the
>>>> boot manager.
>>>
>>> Not sure what you mean with this.  The "bootefi bootmgr" command
>>> simply looks at EFI variables and immediately exits if "BootOrder"
>>> isn't set.  So the EFI varaibles need to be modified beforehands.
>>>
>>> Do you mean that 'UEFI Boot Manager Maintenance' should only be
>>> included in the menu if any "Boot####" EFI variables exist (either
>>> because they have been explicitly set or because we have generated
>>> them for the "removable media" device paths)?
>>
>>
>> The bootmenu command can be used in many contexts. Not all are related to booting.
>
> I am still not sure the meaning of "don't show 'UEFI Boot Manager
> Maintenance' if we are not in the boot manager."
> What do you mean "in the boot manager"?

The bootmenu command is used to show a generic menu. It should only show
the menu items selected via the bootmenu_* variables or parameters of
the bootmenu command.

With CONFIG_AUTOBOOT_MENU_SHOW=y a special menu is shown instead of the
normal console countdown. Here you can show auto-generated entries.

Best regards

Heinrich


> The bootmenu already supports to enumerate the UEFI boot options,
> so it is some kind of boot manager.
>
> Thanks,
> Masahisa Kojima



More information about the U-Boot mailing list