[edk2-devel] [edk2-platforms] [PATCH 04/11] MinPlatformPkg: Add BDS Board Boot Manager library
Kubacki, Michael A
michael.a.kubacki at intel.com
Sat Dec 21 02:36:36 UTC 2019
Since BoardBootManagerWaitCallback () is a new function, please add @param[in] for the TimeoutRemain parameter.
With that change - Reviewed-by: Michael Kubacki <michael.a.kubacki at intel.com>
> -----Original Message-----
> From: Agyeman, Prince <prince.agyeman at intel.com>
> Sent: Friday, December 13, 2019 5:33 PM
> To: devel at edk2.groups.io
> Cc: Kubacki, Michael A <michael.a.kubacki at intel.com>; Chiu, Chasel
> <chasel.chiu at intel.com>; Desimone, Nathaniel L
> <nathaniel.l.desimone at intel.com>
> Subject: [edk2-platforms] [PATCH 04/11] MinPlatformPkg: Add BDS Board
> Boot Manager library
>
> 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.kubacki at intel.com>
> Cc: Chasel Chiu <chasel.chiu at intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone at intel.com>
>
> Signed-off-by: Prince Agyeman <prince.agyeman at 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/Boar
> dBootManagerLib.c
> create mode 100644
> Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Boar
> dBootManagerLibNull.inf
> create mode 100644
> Platform/Intel/MinPlatformPkg/Include/Library/BoardBootManagerLib.h
>
> diff --git
> a/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Bo
> ardBootManagerLib.c
> b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Bo
> ardBootManagerLib.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/Bo
> ardBootManagerLibNull.inf
> b/Platform/Intel/MinPlatformPkg/Bds/Library/BoardBootManagerLibNull/Bo
> ardBootManagerLibNull.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 (#52468): https://edk2.groups.io/g/devel/message/52468
Mute This Topic: https://groups.io/mt/68590731/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