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]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to