Hi Ard,

Form the Uefi spec:
'''
If a load option is marked as LOAD_OPTION_ACTIVE, the boot manager will attempt 
to boot
automatically using the device path information in the load option. This 
provides an easy way to disable
or enable load options without needing to delete and re-add them.
'''
The ACTIVE flag seems to enable/disable the option.

'''
Boot#### load options with LOAD_OPTION_CATEGORY set to LOAD_OPTION_CATEGORY_APP 
are
executables which are not part of the normal boot processing but can be 
optionally chosen for execution
if boot menu is provided, or via Hot Keys. See Section 3.1.6 for details
'''
There is another flag to implement your function. The option with ACTIVE | 
CATEGORY | CATEGORY_APP should show in the boot menu but not in the normal boot 
flow.

Thanks,
Zhichao

> -----Original Message-----
> From: Ard Biesheuvel <[email protected]>
> Sent: Tuesday, June 2, 2020 4:26 PM
> To: [email protected]
> Cc: [email protected]; Laszlo Ersek <[email protected]>; Leif Lindholm
> <[email protected]>; Ni, Ray <[email protected]>; Gao, Zhichao
> <[email protected]>
> Subject: Re: [PATCH v2 3/5] MdeModulePkg/BootManagerUiLib: show
> inactive boot options
> 
> Ray, Zhichao,
> 
> Do you have any comments on this patch?
> 
> 
> On 5/28/20 11:17 AM, Ard Biesheuvel wrote:
> > UEFI boot options may exist but have the LOAD_OPTION_ACTIVE flag
> > cleared. This means that the boot option should not be selected by
> > default, but it does not mean it should be omitted from the boot
> > selection presented by the boot manager: for this purpose, another
> > flag LOAD_OPTION_HIDDEN exists.
> >
> > Given that the latter flag exists solely for the purpose of omitting
> > boot options from the boot selection menu, and LOAD_OPTION_XXX flags
> > can be combined if desired, hiding inactive boot options as well is a
> > mistake, and violates the intent of paragraph 3.1.3 of the UEFI
> > specification (revision 2.8 errata A). Let's fix this by dropping the
> > LOAD_OPTION_ACTIVE check from the code that populates the boot
> > selection menu.
> >
> > Signed-off-by: Ard Biesheuvel <[email protected]>
> > ---
> >   MdeModulePkg/Library/BootManagerUiLib/BootManager.c | 4 ++--
> >   1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/MdeModulePkg/Library/BootManagerUiLib/BootManager.c
> > b/MdeModulePkg/Library/BootManagerUiLib/BootManager.c
> > index 13b40e11b396..4b2c4c77a124 100644
> > --- a/MdeModulePkg/Library/BootManagerUiLib/BootManager.c
> > +++ b/MdeModulePkg/Library/BootManagerUiLib/BootManager.c
> > @@ -535,9 +535,9 @@ UpdateBootManager (
> >       mKeyInput++;
> >
> >       //
> > -    // Don't display the hidden/inactive boot option
> > +    // Don't display hidden boot options, but retain inactive ones.
> >       //
> > -    if (((BootOption[Index].Attributes & LOAD_OPTION_HIDDEN) != 0) ||
> ((BootOption[Index].Attributes & LOAD_OPTION_ACTIVE) == 0)) {
> > +    if ((BootOption[Index].Attributes & LOAD_OPTION_HIDDEN) != 0) {
> >         continue;
> >       }
> >
> >


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#60565): https://edk2.groups.io/g/devel/message/60565
Mute This Topic: https://groups.io/mt/74518313/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to