|
@@ -1,84 +0,0 @@
|
|
|
-/** @file
|
|
|
- This file defines the Univeral Payload Platform BootManager Protocol.
|
|
|
-
|
|
|
- Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
|
|
|
- SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
-**/
|
|
|
-
|
|
|
-#ifndef __PLATFORM_BOOT_MANAGER_OVERRIDE_H__
|
|
|
-#define __PLATFORM_BOOT_MANAGER_OVERRIDE_H__
|
|
|
-
|
|
|
-/**
|
|
|
- Do the platform specific action before the console is connected.
|
|
|
-
|
|
|
- Such as:
|
|
|
- Update console variable;
|
|
|
- Register new Driver#### or Boot####;
|
|
|
- Signal ReadyToLock event.
|
|
|
-
|
|
|
- This function will override the default behavior in PlatformBootManagerLib
|
|
|
-**/
|
|
|
-typedef
|
|
|
-VOID
|
|
|
-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_BEFORE_CONSOLE)(
|
|
|
- VOID
|
|
|
- );
|
|
|
-
|
|
|
-/**
|
|
|
- Do the platform specific action after the console is connected.
|
|
|
-
|
|
|
- Such as:
|
|
|
- Dynamically switch output mode;
|
|
|
- Signal console ready platform customized event;
|
|
|
- Run diagnostics like memory testing;
|
|
|
- Connect certain devices;
|
|
|
- Dispatch aditional option roms.
|
|
|
-
|
|
|
- This function will override the default behavior in PlatformBootManagerLib
|
|
|
-**/
|
|
|
-typedef
|
|
|
-VOID
|
|
|
-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_AFTER_CONSOLE)(
|
|
|
- VOID
|
|
|
- );
|
|
|
-
|
|
|
-/**
|
|
|
- This function is called each second during the boot manager waits the timeout.
|
|
|
- This function will override the default behavior in PlatformBootManagerLib
|
|
|
-
|
|
|
- @param TimeoutRemain The remaining timeout.
|
|
|
-**/
|
|
|
-typedef
|
|
|
-VOID
|
|
|
-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_WAIT_CALLBACK)(
|
|
|
- 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.
|
|
|
-
|
|
|
- If this function returns, BDS attempts to enter an infinite loop.
|
|
|
- This function will override the default behavior in PlatformBootManagerLib
|
|
|
-**/
|
|
|
-typedef
|
|
|
-VOID
|
|
|
-(EFIAPI *UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_UNABLE_TO_BOOT)(
|
|
|
- VOID
|
|
|
- );
|
|
|
-
|
|
|
-///
|
|
|
-/// Provides an interface to override the default behavior in PlatformBootManagerLib,
|
|
|
-/// so platform can provide its own platform specific logic through this protocol
|
|
|
-///
|
|
|
-typedef struct {
|
|
|
- UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_BEFORE_CONSOLE BeforeConsole;
|
|
|
- UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_AFTER_CONSOLE AfterConsole;
|
|
|
- UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_WAIT_CALLBACK WaitCallback;
|
|
|
- UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_UNABLE_TO_BOOT UnableToBoot;
|
|
|
-} UNIVERSAL_PAYLOAD_PLATFORM_BOOT_MANAGER_OVERRIDE_PROTOCOL;
|
|
|
-
|
|
|
-extern GUID gUniversalPayloadPlatformBootManagerOverrideProtocolGuid;
|
|
|
-
|
|
|
-#endif
|