[edk2-devel] [PATCH v5 1/1] MdeModulePkg: Add BootDiscoveryPolicyUiLib.
Wu, Hao A
hao.a.wu at intel.com
Tue Aug 3 05:11:58 UTC 2021
Thanks all,
Patch merged via:
PR - https://github.com/tianocore/edk2/pull/1858
Commit - https://github.com/tianocore/edk2/commit/2b47aaecef38b9440a65809cbdaf9d97029f4eeb
Best Regards,
Hao Wu
> -----Original Message-----
> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of Sunny
> Wang
> Sent: Tuesday, August 3, 2021 11:03 AM
> To: Gao, Zhichao <zhichao.gao at intel.com>; Wu, Hao A
> <hao.a.wu at intel.com>; devel at edk2.groups.io; gjb at semihalf.com
> Cc: leif at nuviainc.com; ardb+tianocore at kernel.org; Samer El-Haj-Mahmoud
> <Samer.El-Haj-Mahmoud at arm.com>; mw at semihalf.com;
> upstream at semihalf.com; pete at akeo.ie; Wang, Jian J
> <jian.j.wang at intel.com>; Bi, Dandan <dandan.bi at intel.com>; Dong, Eric
> <eric.dong at intel.com>; Sunny Wang <Sunny.Wang at arm.com>
> Subject: Re: [edk2-devel] [PATCH v5 1/1] MdeModulePkg: Add
> BootDiscoveryPolicyUiLib.
>
> Ditto. v5 looks good to me as well, so keep my 'R-b' for v5.
> Thanks for helping on this, Hao. :)
>
> Best Regards,
> Sunny Wang
>
> -----Original Message-----
> From: Gao, Zhichao <zhichao.gao at intel.com>
> Sent: Tuesday, August 3, 2021 10:25 AM
> To: Wu, Hao A <hao.a.wu at intel.com>; devel at edk2.groups.io;
> gjb at semihalf.com; Sunny Wang <Sunny.Wang at arm.com>
> Cc: leif at nuviainc.com; ardb+tianocore at kernel.org; Samer El-Haj-Mahmoud
> <Samer.El-Haj-Mahmoud at arm.com>; mw at semihalf.com;
> upstream at semihalf.com; pete at akeo.ie; Wang, Jian J
> <jian.j.wang at intel.com>; Bi, Dandan <dandan.bi at intel.com>; Dong, Eric
> <eric.dong at intel.com>
> Subject: RE: [edk2-devel] [PATCH v5 1/1] MdeModulePkg: Add
> BootDiscoveryPolicyUiLib.
>
> No. Please keep my 'R-b' for v5.
>
> Thanks,
> Zhichao
>
> > -----Original Message-----
> > From: Wu, Hao A <hao.a.wu at intel.com>
> > Sent: Tuesday, August 3, 2021 8:01 AM
> > To: devel at edk2.groups.io; gjb at semihalf.com; Gao, Zhichao
> > <zhichao.gao at intel.com>; sunny.Wang at arm.com
> > Cc: leif at nuviainc.com; ardb+tianocore at kernel.org; Samer.El-Haj-
> > Mahmoud at arm.com; mw at semihalf.com; upstream at semihalf.com;
> pete at akeo.ie;
> > Wang, Jian J <jian.j.wang at intel.com>; Bi, Dandan
> > <dandan.bi at intel.com>; Dong, Eric <eric.dong at intel.com>
> > Subject: RE: [edk2-devel] [PATCH v5 1/1] MdeModulePkg: Add
> > BootDiscoveryPolicyUiLib.
> >
> > Thanks Greg, the new patch pass all the merging tests:
> > https://github.com/tianocore/edk2/pull/1858.
> >
> > Hello Zhichao and Sunny Wang,
> > Do you have comments for this new version of the patch? If not, I will
> > keep your 'R-b' tags from V4. Thanks in advance.
> >
> > Best Regards,
> > Hao Wu
> >
> > > -----Original Message-----
> > > From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of
> > > Grzegorz Bernacki
> > > Sent: Monday, August 2, 2021 8:19 PM
> > > To: devel at edk2.groups.io
> > > Cc: leif at nuviainc.com; ardb+tianocore at kernel.org; Samer.El-Haj-
> > > Mahmoud at arm.com; sunny.Wang at arm.com; mw at semihalf.com;
> > > upstream at semihalf.com; pete at akeo.ie; Wang, Jian J
> > > <jian.j.wang at intel.com>; Wu, Hao A <hao.a.wu at intel.com>; Bi, Dandan
> > > <dandan.bi at intel.com>; Dong, Eric <eric.dong at intel.com>; Grzegorz
> > > Bernacki <gjb at semihalf.com>; Gao, Zhichao <zhichao.gao at intel.com>
> > > Subject: [edk2-devel] [PATCH v5 1/1] MdeModulePkg: Add
> > > BootDiscoveryPolicyUiLib.
> > >
> > > This library extends Boot Maintenance Menu and allows to select Boot
> > > Discovery Policy. When choice is made BootDiscoveryPolicy variable is set.
> > > Platform code can use this variable to decide which class of device
> > > shall be connected.
> > >
> > > Signed-off-by: Grzegorz Bernacki <gjb at semihalf.com>
> > > Reviewed-by: Zhichao Gao <zhichao.gao at intel.com>
> > > ---
> > > MdeModulePkg/MdeModulePkg.dec | 9 ++
> > > MdeModulePkg/MdeModulePkg.dsc | 2 +
> > >
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > .inf
> > > | 52 +++++++
> > > MdeModulePkg/Include/Guid/BootDiscoveryPolicy.h |
> > 22
> > > +++
> > >
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > .c
> > > | 160 ++++++++++++++++++++
> > >
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > .uni
> > > | 18 +++
> > >
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > Stri
> > > ngs.uni | 29 ++++
> > >
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > Vfr.
> > > Vfr | 44 ++++++
> > > 8 files changed, 336 insertions(+)
> > > create mode 100644
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > .inf create mode 100644
> > > MdeModulePkg/Include/Guid/BootDiscoveryPolicy.h
> > > create mode 100644
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > .c
> > > create mode 100644
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > .uni
> > > create mode 100644
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > > Stri
> > > ngs.uni
> > > create mode 100644
> > >
> >
> MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLib
> > Vfr.
> > > Vfr
> > >
> > > diff --git a/MdeModulePkg/MdeModulePkg.dec
> > > b/MdeModulePkg/MdeModulePkg.dec index ad84421cf3..133e04ee86
> > 100644
> > > --- a/MdeModulePkg/MdeModulePkg.dec
> > > +++ b/MdeModulePkg/MdeModulePkg.dec
> > > @@ -425,6 +425,9 @@
> > > ## Include/UniversalPayload/SerialPortInfo.h
> > > gUniversalPayloadSerialPortInfoGuid = { 0xaa7e190d, 0xbe21,
> > > 0x4409, { 0x8e, 0x67, 0xa2, 0xcd, 0xf, 0x61, 0xe1, 0x70 } }
> > >
> > > + ## GUID used for Boot Discovery Policy FormSet guid and related
> > variables.
> > > + gBootDiscoveryPolicyMgrFormsetGuid = { 0x5b6f7107, 0xbb3c,
> > > + 0x4660, { 0x92, 0xcd, 0x54, 0x26, 0x90, 0x28, 0x0b, 0xbd } }
> > > +
> > > [Ppis]
> > > ## Include/Ppi/AtaController.h
> > > gPeiAtaControllerPpiGuid = { 0xa45e60d1, 0xc719, 0x44aa, { 0xb0,
> 0x7a,
> > > 0xaa, 0x77, 0x7f, 0x85, 0x90, 0x6d }} @@ -1600,6 +1603,12 @@
> > > # @Prompt Console Output Row of Text Setup
> > >
> > >
> >
> gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutRow|25|UINT32|0x40
> > 000
> > > 00e
> > >
> > > + ## Specify the Boot Discovery Policy settings # To support
> > > + configuring from setup page, this PCD should be overridden in
> > > + DynamicHii type
> > > in its platform .dsc:
> > > + #
> > > +
> > >
> >
> gEfiMdeModulePkgTokenSpaceGuid.PcdBootDiscoveryPolicy|L"BootDiscove
> > ryP
> > > + olicy"|gBootDiscoveryPolicyMgrFormsetGuid|0
> > > + # @Prompt Boot Discovery Policy
> > > +
> > > +
> > >
> >
> gEfiMdeModulePkgTokenSpaceGuid.PcdBootDiscoveryPolicy|2|UINT32|0x4
> > 000
> > > 0
> > > + 00f
> > > +
> > > [PcdsFixedAtBuild.AARCH64, PcdsPatchableInModule.AARCH64]
> > >
> > >
> >
> gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiExposedTableVersions|0x20|UI
> > NT3
> > > 2|0x0001004c
> > >
> > > diff --git a/MdeModulePkg/MdeModulePkg.dsc
> > > b/MdeModulePkg/MdeModulePkg.dsc index 132fb36d95..b1d8346186
> > 100644
> > > --- a/MdeModulePkg/MdeModulePkg.dsc
> > > +++ b/MdeModulePkg/MdeModulePkg.dsc
> > > @@ -220,6 +220,7 @@
> > > MdeModulePkg/Logo/Logo.inf
> > > MdeModulePkg/Logo/LogoDxe.inf
> > > MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf
> > > +
> > > +
> > MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiL
> > > + ib
> > > + .inf
> > >
> > >
> >
> MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance
> > Man
> > > agerUiLib.inf
> > > MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
> > >
> MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
> > > @@ -341,6 +342,7 @@
> > > MdeModulePkg/Application/UiApp/UiApp.inf{
> > > <LibraryClasses>
> > >
> > >
> >
> NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
> > > +
> > > +
> >
> NULL|MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPoli
> > > + NULL|cy
> > > + UiLib.inf
> > >
> > NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
> > >
> > >
> >
> NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMainte
> > nan
> > > ceManagerUiLib.inf
> > > }
> > > diff --git
> > >
> >
> a/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiL
> > > ib.i
> > > nf
> > >
> >
> b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiL
> > > ib.i
> > > nf
> > > new file mode 100644
> > > index 0000000000..1fb4d43caa
> > > --- /dev/null
> > > +++
> > b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolic
> > > +++ yU
> > > +++ iLib.inf
> > > @@ -0,0 +1,52 @@
> > > +## @file
> > > +# Library for BDS phase to use Boot Discovery Policy # # Copyright
> > > +(c) 2021, ARM Ltd. All rights reserved.<BR> # Copyright (c) 2021,
> > > +Semihalf All rights reserved.<BR> # SPDX-License-Identifier:
> > > +BSD-2-Clause-Patent # ##
> > > +
> > > +[Defines]
> > > + INF_VERSION = 0x00010005
> > > + BASE_NAME = BootDiscoveryPolicyUiLib
> > > + MODULE_UNI_FILE = BootDiscoveryPolicyUiLib.uni
> > > + FILE_GUID = BE73105A-B13D-4B57-A41A-463DBD15FE10
> > > + MODULE_TYPE = DXE_DRIVER
> > > + VERSION_STRING = 1.0
> > > + LIBRARY_CLASS = NULL|DXE_DRIVER UEFI_APPLICATION
> > > + CONSTRUCTOR = BootDiscoveryPolicyUiLibConstructor
> > > + DESTRUCTOR = BootDiscoveryPolicyUiLibDestructor
> > > +#
> > > +# The following information is for reference only and not required by
> > > +the build
> > > tools.
> > > +#
> > > +# VALID_ARCHITECTURES = IA32 X64 AARCH64
> > > +#
> > > +
> > > +[Sources]
> > > + BootDiscoveryPolicyUiLib.c
> > > + BootDiscoveryPolicyUiLibStrings.uni
> > > + BootDiscoveryPolicyUiLibVfr.Vfr
> > > +
> > > +[Packages]
> > > + MdePkg/MdePkg.dec
> > > + MdeModulePkg/MdeModulePkg.dec
> > > +
> > > +[LibraryClasses]
> > > + DevicePathLib
> > > + BaseLib
> > > + UefiRuntimeServicesTableLib
> > > + UefiBootServicesTableLib
> > > + DebugLib
> > > + HiiLib
> > > + UefiLib
> > > + BaseMemoryLib
> > > +
> > > +[Guids]
> > > + gBootDiscoveryPolicyMgrFormsetGuid
> > > +
> > > +[Pcd]
> > > + gEfiMdeModulePkgTokenSpaceGuid.PcdBootDiscoveryPolicy ##
> > PRODUCES
> > > +
> > > +[Depex]
> > > + gEfiHiiDatabaseProtocolGuid AND gPcdProtocolGuid
> > > diff --git a/MdeModulePkg/Include/Guid/BootDiscoveryPolicy.h
> > > b/MdeModulePkg/Include/Guid/BootDiscoveryPolicy.h
> > > new file mode 100644
> > > index 0000000000..06e38921a0
> > > --- /dev/null
> > > +++ b/MdeModulePkg/Include/Guid/BootDiscoveryPolicy.h
> > > @@ -0,0 +1,22 @@
> > > +/** @file
> > > + Definition for structure & defines exported by Boot Discovery
> > > +Policy UI
> > > +
> > > + Copyright (c) 2021, ARM Ltd. All rights reserved.<BR> Copyright
> > > + (c) 2021, Semihalf All rights reserved.<BR>
> > > +
> > > + SPDX-License-Identifier: BSD-2-Clause-Patent
> > > +
> > > +**/
> > > +
> > > +#ifndef BOOT_DISCOVERY_POLICY_UI_LIB_H_ #define
> > > +BOOT_DISCOVERY_POLICY_UI_LIB_H_
> > > +
> > > +#define BDP_CONNECT_MINIMAL 0 /* Do not connect any additional
> > > +devices
> > > */
> > > +#define BDP_CONNECT_NET 1
> > > +#define BDP_CONNECT_ALL 2
> > > +
> > > +#define BOOT_DISCOVERY_POLICY_MGR_FORMSET_GUID
> { 0x5b6f7107,
> > > 0xbb3c,
> > > +0x4660, { 0x92, 0xcd, 0x54, 0x26, 0x90, 0x28, 0x0b, 0xbd } }
> > > +
> > > +#define BOOT_DISCOVERY_POLICY_VAR L"BootDiscoveryPolicy"
> > > +
> > > +#endif
> > > diff --git
> > >
> >
> a/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLi
> > b.
> > > c
> > >
> >
> b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLi
> > b.
> > > c
> > > new file mode 100644
> > > index 0000000000..615958799c
> > > --- /dev/null
> > > +++
> > b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolic
> > > +++ yU
> > > +++ iLib.c
> > > @@ -0,0 +1,160 @@
> > > +/** @file
> > > + Boot Discovery Policy UI for Boot Maintenance menu.
> > > +
> > > + Copyright (c) 2021, ARM Ltd. All rights reserved.<BR> Copyright
> > > + (c) 2021, Semihalf All rights reserved.<BR>
> > > +
> > > + SPDX-License-Identifier: BSD-2-Clause-Patent
> > > +
> > > +**/
> > > +
> > > +#include <Guid/BootDiscoveryPolicy.h> #include
> > > +<Library/UefiDriverEntryPoint.h> #include
> > > +<Library/UefiBootServicesTableLib.h>
> > > +#include <Library/UefiRuntimeServicesTableLib.h>
> > > +#include <Library/BaseLib.h>
> > > +#include <Library/DevicePathLib.h>
> > > +#include <Library/DebugLib.h>
> > > +#include <Library/HiiLib.h>
> > > +#include <Library/UefiLib.h>
> > > +#include <Library/BaseMemoryLib.h>
> > > +#include <Include/Library/PcdLib.h>
> > > +
> > > +///
> > > +/// HII specific Vendor Device Path definition.
> > > +///
> > > +typedef struct {
> > > + VENDOR_DEVICE_PATH VendorDevicePath;
> > > + EFI_DEVICE_PATH_PROTOCOL End;
> > > +} HII_VENDOR_DEVICE_PATH;
> > > +
> > > +extern UINT8 BootDiscoveryPolicyUiLibVfrBin[];
> > > +
> > > +EFI_HII_HANDLE mBPHiiHandle = NULL;
> > > +EFI_HANDLE mBPDriverHandle = NULL;
> > > +
> > > +STATIC HII_VENDOR_DEVICE_PATH mVendorDevicePath = {
> > > + {
> > > + {
> > > + HARDWARE_DEVICE_PATH,
> > > + HW_VENDOR_DP,
> > > + {
> > > + (UINT8)(sizeof (VENDOR_DEVICE_PATH)),
> > > + (UINT8)((sizeof (VENDOR_DEVICE_PATH)) >> 8)
> > > + }
> > > + },
> > > + BOOT_DISCOVERY_POLICY_MGR_FORMSET_GUID
> > > + },
> > > + {
> > > + END_DEVICE_PATH_TYPE,
> > > + END_ENTIRE_DEVICE_PATH_SUBTYPE,
> > > + {
> > > + (UINT8)(END_DEVICE_PATH_LENGTH),
> > > + (UINT8)((END_DEVICE_PATH_LENGTH) >> 8)
> > > + }
> > > + }
> > > +};
> > > +
> > > +/**
> > > +
> > > + Initialize Boot Maintenance Menu library.
> > > +
> > > + @param ImageHandle The image handle.
> > > + @param SystemTable The system table.
> > > +
> > > + @retval EFI_SUCCESS Install Boot manager menu success.
> > > + @retval Other Return error status.gBPDisplayLibGuid
> > > +
> > > +**/
> > > +EFI_STATUS
> > > +EFIAPI
> > > +BootDiscoveryPolicyUiLibConstructor (
> > > + IN EFI_HANDLE ImageHandle,
> > > + IN EFI_SYSTEM_TABLE *SystemTable
> > > + )
> > > +{
> > > + EFI_STATUS Status;
> > > + UINTN Size;
> > > + UINT32 BootDiscoveryPolicy;
> > > +
> > > + Size = sizeof (UINT32);
> > > + Status = gRT->GetVariable (
> > > + BOOT_DISCOVERY_POLICY_VAR,
> > > + &gBootDiscoveryPolicyMgrFormsetGuid,
> > > + NULL,
> > > + &Size,
> > > + &BootDiscoveryPolicy
> > > + );
> > > + if (EFI_ERROR (Status)) {
> > > + Status = PcdSet32S (PcdBootDiscoveryPolicy, PcdGet32
> > > (PcdBootDiscoveryPolicy));
> > > + ASSERT_EFI_ERROR (Status);
> > > + }
> > > +
> > > + Status = gBS->InstallMultipleProtocolInterfaces (
> > > + &mBPDriverHandle,
> > > + &gEfiDevicePathProtocolGuid,
> > > + &mVendorDevicePath,
> > > + NULL
> > > + );
> > > + if (EFI_ERROR (Status)) {
> > > + return Status;
> > > + }
> > > +
> > > + //
> > > + // Publish our HII data
> > > + //
> > > + mBPHiiHandle = HiiAddPackages (
> > > + &gBootDiscoveryPolicyMgrFormsetGuid,
> > > + mBPDriverHandle,
> > > + BootDiscoveryPolicyUiLibVfrBin,
> > > + BootDiscoveryPolicyUiLibStrings,
> > > + NULL
> > > + );
> > > + if (mBPHiiHandle == NULL) {
> > > + gBS->UninstallMultipleProtocolInterfaces (
> > > + mBPDriverHandle,
> > > + &gEfiDevicePathProtocolGuid,
> > > + &mVendorDevicePath,
> > > + NULL
> > > + );
> > > +
> > > + return EFI_OUT_OF_RESOURCES;
> > > + }
> > > +
> > > + return EFI_SUCCESS;
> > > +}
> > > +
> > > +/**
> > > + Destructor of Boot Maintenance menu library.
> > > +
> > > + @param ImageHandle The firmware allocated handle for the EFI
> image.
> > > + @param SystemTable A pointer to the EFI System Table.
> > > +
> > > + @retval EFI_SUCCESS The destructor completed successfully.
> > > + @retval Other value The destructor did not complete successfully.
> > > +
> > > +**/
> > > +EFI_STATUS
> > > +EFIAPI
> > > +BootDiscoveryPolicyUiLibDestructor (
> > > + IN EFI_HANDLE ImageHandle,
> > > + IN EFI_SYSTEM_TABLE *SystemTable
> > > + )
> > > +{
> > > +
> > > + if (mBPDriverHandle != NULL) {
> > > + gBS->UninstallProtocolInterface (
> > > + mBPDriverHandle,
> > > + &gEfiDevicePathProtocolGuid,
> > > + &mVendorDevicePath
> > > + );
> > > + mBPDriverHandle = NULL;
> > > + }
> > > +
> > > + if (mBPHiiHandle != NULL) {
> > > + HiiRemovePackages (mBPHiiHandle);
> > > + mBPHiiHandle = NULL;
> > > + }
> > > +
> > > + return EFI_SUCCESS;
> > > +}
> > > diff --git
> > >
> >
> a/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLi
> > b.
> > > uni
> > >
> >
> b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiLi
> > b.
> > > uni
> > > new file mode 100644
> > > index 0000000000..eea3ca6c8d
> > > --- /dev/null
> > > +++
> > b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolic
> > > +++ yU
> > > +++ iLib.uni
> > > @@ -0,0 +1,18 @@
> > > +// /** @file
> > > +// Boot Discovery Policy UI module.
> > > +//
> > > +// Copyright (c) 2021, ARM Ltd. All rights reserved.<BR> // Copyright
> > > +(c) 2021, Semihalf All rights reserved.<BR> // //
> > > +SPDX-License-Identifier: BSD-2-Clause-Patent // // **/
> > > +
> > > +
> > > +#string STR_MODULE_ABSTRACT
> > > +#language en-US "Boot Discovery Policy UI module."
> > > +
> > > +#string STR_MODULE_DESCRIPTION
> > > +#language en-US "Boot Discovery Policy UI module."
> > > +
> > > +
> > > diff --git
> > >
> >
> a/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiL
> > > ibS
> > > trings.uni
> > >
> >
> b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiL
> > > ibS
> > > trings.uni
> > > new file mode 100644
> > > index 0000000000..736011c9bb
> > > --- /dev/null
> > > +++
> > b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolic
> > > +++ yU
> > > +++ iLibStrings.uni
> > > @@ -0,0 +1,29 @@
> > > +// *++
> > > +//
> > > +// Copyright (c) 2021, ARM Ltd. All rights reserved.<BR> //
> > > +Copyright
> > > +(c) 2021, Semihalf All rights reserved.<BR> //
> > > +SPDX-License-Identifier: BSD-2-Clause-Patent // // Module Name:
> > > +//
> > > +// BootDiscoveryPolicyUiLibStrings.uni
> > > +//
> > > +// Abstract:
> > > +//
> > > +// String definitions for Boot Discovery Policy UI.
> > > +//
> > > +// --*/
> > > +
> > > +/=#
> > > +
> > > +
> > > +#langdef en-US "English"
> > > +
> > > +#string STR_FORM_BDP_MAIN_TITLE #language en-US "Boot
> > Discovery
> > > Policy"
> > > +
> > > +#string STR_FORM_BDP_CONN_MIN #language en-US "Minimal"
> > > +
> > > +#string STR_FORM_BDP_CONN_NET #language en-US "Connect
> > Network
> > > Devices"
> > > +
> > > +#string STR_FORM_BDP_CONN_ALL #language en-US "Connect All
> > > Devices"
> > > +
> > > diff --git
> > >
> >
> a/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiL
> > > ibV
> > > fr.Vfr
> > >
> >
> b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolicyUiL
> > > ibV
> > > fr.Vfr
> > > new file mode 100644
> > > index 0000000000..0de87ec34f
> > > --- /dev/null
> > > +++
> > b/MdeModulePkg/Library/BootDiscoveryPolicyUiLib/BootDiscoveryPolic
> > > +++ yU
> > > +++ iLibVfr.Vfr
> > > @@ -0,0 +1,44 @@
> > > +///** @file
> > > +//
> > > +// Formset for Boot Discovery Policy UI // // Copyright (c) 2021,
> > > +ARM Ltd. All rights reserved.<BR> // Copyright (c) 2021, Semihalf
> > > +All rights reserved.<BR> // // SPDX-License-Identifier:
> > > +BSD-2-Clause-Patent // //**/
> > > +
> > > +#include <Uefi/UefiMultiPhase.h>
> > > +#include "Guid/BootDiscoveryPolicy.h"
> > > +#include <Guid/HiiBootMaintenanceFormset.h>
> > > +
> > > +typedef struct {
> > > + UINT32 BootDiscoveryPolicy;
> > > +} BOOT_DISCOVERY_POLICY_VARSTORE_DATA;
> > > +
> > > +formset
> > > + guid = BOOT_DISCOVERY_POLICY_MGR_FORMSET_GUID,
> > > + title = STRING_TOKEN(STR_FORM_BDP_MAIN_TITLE),
> > > + help = STRING_TOKEN(STR_FORM_BDP_MAIN_TITLE),
> > > + classguid = EFI_IFR_BOOT_MAINTENANCE_GUID,
> > > +
> > > + efivarstore BOOT_DISCOVERY_POLICY_VARSTORE_DATA,
> > > + attribute = EFI_VARIABLE_BOOTSERVICE_ACCESS |
> > > EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
> > > + name = BootDiscoveryPolicy,
> > > + guid = BOOT_DISCOVERY_POLICY_MGR_FORMSET_GUID;
> > > +
> > > + form formid = 0x0001,
> > > + title = STRING_TOKEN(STR_FORM_BDP_MAIN_TITLE);
> > > +
> > > + oneof varid = BootDiscoveryPolicy.BootDiscoveryPolicy,
> > > + prompt = STRING_TOKEN(STR_FORM_BDP_MAIN_TITLE),
> > > + help = STRING_TOKEN(STR_FORM_BDP_MAIN_TITLE),
> > > + flags = NUMERIC_SIZE_4 | INTERACTIVE | RESET_REQUIRED,
> > > + option text = STRING_TOKEN(STR_FORM_BDP_CONN_MIN), value =
> > > BDP_CONNECT_MINIMAL, flags = DEFAULT;
> > > + option text = STRING_TOKEN(STR_FORM_BDP_CONN_NET), value =
> > > BDP_CONNECT_NET, flags = 0;
> > > + option text = STRING_TOKEN(STR_FORM_BDP_CONN_ALL), value =
> > > + BDP_CONNECT_ALL, flags = 0; endoneof;
> > > +
> > > + endform;
> > > +endformset;
> > > --
> > > 2.25.1
> > >
> > >
> > >
> > >
> > >
>
> IMPORTANT NOTICE: The contents of this email and any attachments are
> confidential and may also be privileged. If you are not the intended recipient,
> please notify the sender immediately and do not disclose the contents to any
> other person, use it for any purpose, or store or copy the information in any
> medium. Thank you.
>
>
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#78580): https://edk2.groups.io/g/devel/message/78580
Mute This Topic: https://groups.io/mt/84609666/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list