Hi Prince, Reviewed-by: Nate DeSimone <nathaniel.l.desim...@intel.com>
Thanks, Nate On Sat, Dec 14, 2019 at 01:32:30AM +0000, Agyeman, Prince wrote: > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2336 > > As Minplatform's PlatformBootManager library instance implements > event signals (as specified in the minimum platform specification) > to trigger board actions, some of its functions namely > PlatformBootManagerWaitCallback and PlatformBootManagerUnableToBoot > will not have events signaled for boards to take action. > > This library implements PlatformBootManagerWaitCallback > and PlatformBootManagerUnableToBoot which will be linked to Minplatform's > PlatformBootManager libary instance. > > Added is an interface/header file that defines the board boot manager > library. > > Also added is a NULL implementation of the board boot manager library > > Cc: Michael Kubacki <michael.a.kuba...@intel.com> > Cc: Chasel Chiu <chasel.c...@intel.com> > Cc: Nate DeSimone <nathaniel.l.desim...@intel.com> > > Signed-off-by: Prince Agyeman <prince.agye...@intel.com> > --- > .../BoardBootManagerLib.c | 38 ++++++++++++++++++ > .../BoardBootManagerLibNull.inf | 31 +++++++++++++++ > .../Include/Library/BoardBootManagerLib.h | 39 +++++++++++++++++++ > 3 files changed, 108 insertions(+) > create mode 100644 > Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLib.c > create mode 100644 > Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLibNull.inf > create mode 100644 > Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h > > diff --git > a/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLib.c > > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLib.c > new file mode 100644 > index 0000000000..46fce8f59f > --- /dev/null > +++ > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLib.c > @@ -0,0 +1,38 @@ > +/** @file > + This file include board specific boot manager callbacks > + > + Copyright (c) 2018, Intel Corporation. All rights reserved.<BR> > + SPDX-License-Identifier: BSD-2-Clause-Patent > +**/ > + > +#include <Library/BoardBootManagerLib.h> > + > +/** > + This function is called each second during the boot manager waits timeout. > + > + @param TimeoutRemain The remaining timeout. > +**/ > +VOID > +EFIAPI > +BoardBootManagerWaitCallback ( > + IN UINT16 TimeoutRemain > + ) > +{ > + return; > +} > + > +/** > + The function is called when no boot option could be launched, > + including platform recovery options and options pointing to applications > + built into firmware volumes. > + > +**/ > +VOID > +EFIAPI > +BoardBootManagerUnableToBoot ( > + VOID > + ) > +{ > + return; > +} > + > diff --git > a/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLibNull.inf > > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLibNull.inf > new file mode 100644 > index 0000000000..084207b111 > --- /dev/null > +++ > b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/BoardBootManagerLibNull.inf > @@ -0,0 +1,31 @@ > +## @file > +# The module definition file for BoardBootManagerLib. > +# > +# Copyright (c) 2019, Intel Corporation. All rights reserved.<BR> > +# SPDX-License-Identifier: BSD-2-Clause-Patent > +# > +## > + > +[Defines] > + INF_VERSION = 0x00010005 > + BASE_NAME = BoardBootManagerLib > + FILE_GUID = 7BA684A4-5B32-4F0C-B0FF-581F143E606C > + MODULE_TYPE = DXE_DRIVER > + VERSION_STRING = 1.0 > + LIBRARY_CLASS = BoardBootManagerLib|DXE_DRIVER > + > + > +# > +# The following information is for reference only and not required by the > build tools. > +# > +# VALID_ARCHITECTURES = IA32 X64 EBC > +# > + > +[Sources] > + BoardBootManagerLib.c > + > + > +[Packages] > + MdePkg/MdePkg.dec > + MdeModulePkg/MdeModulePkg.dec > + MinPlatformPkg/MinPlatformPkg.dec > diff --git > a/Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h > b/Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h > new file mode 100644 > index 0000000000..4240142073 > --- /dev/null > +++ b/Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h > @@ -0,0 +1,39 @@ > +/** @file > + Board Boot Manager library definition. A platform can implement > + instances to support platform-specific behavior. > + > + Copyright (c) 2019, Intel Corporation. All rights reserved.<BR> > + SPDX-License-Identifier: BSD-2-Clause-Patent > + > +**/ > + > + > +#ifndef __BOARD_BOOT_MANAGER_LIB_H_ > +#define __BOARD_BOOT_MANAGER_LIB_H_ > +#include <Library/UefiBootManagerLib.h> > + > + > +/** > + This function is called each second during boot manager waits the timeout. > + > + @param TimeoutRemain The remaining timeout. > +**/ > +VOID > +EFIAPI > +BoardBootManagerWaitCallback ( > + IN UINT16 TimeoutRemain > + ); > + > +/** > + The function is called when no boot option could be launched, > + including platform recovery options and options pointing to applications > + built into firmware volumes. > + > +**/ > +VOID > +EFIAPI > +BoardBootManagerUnableToBoot ( > + VOID > + ); > + > +#endif > -- > 2.19.1.windows.1 > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#52305): https://edk2.groups.io/g/devel/message/52305 Mute This Topic: https://groups.io/mt/68590731/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-