Remove EdkGenericBdsLib as it is replaced by MdeModulePkg/Include/Library/GenericBdsLib.h.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4792 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
6c29550411
commit
1b5538a375
@ -1,397 +0,0 @@
|
|||||||
/*! \addtogroup Library EdkGenericBdsLib */
|
|
||||||
/*@{ */
|
|
||||||
/**@file
|
|
||||||
BDS library definition, include the file and data structure
|
|
||||||
|
|
||||||
Copyright (c) 2006 - 2007, Intel Corporation
|
|
||||||
All rights reserved. This program and the accompanying materials
|
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
|
||||||
http://opensource.org/licenses/bsd-license.php
|
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
||||||
|
|
||||||
**/
|
|
||||||
|
|
||||||
#ifndef _BDS_LIB_H_
|
|
||||||
#define _BDS_LIB_H_
|
|
||||||
|
|
||||||
#include <Protocol/SimpleTextOut.h>
|
|
||||||
#include <Protocol/FrameworkHii.h>
|
|
||||||
|
|
||||||
extern EFI_HANDLE mBdsImageHandle;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Constants which are variable names used to access variables
|
|
||||||
//
|
|
||||||
#define VarLegacyDevOrder L"LegacyDevOrder"
|
|
||||||
|
|
||||||
//
|
|
||||||
// Data structures and defines
|
|
||||||
//
|
|
||||||
#define FRONT_PAGE_QUESTION_ID 0x0000
|
|
||||||
#define FRONT_PAGE_DATA_WIDTH 0x01
|
|
||||||
|
|
||||||
//
|
|
||||||
// ConnectType
|
|
||||||
//
|
|
||||||
#define CONSOLE_OUT 0x00000001
|
|
||||||
#define STD_ERROR 0x00000002
|
|
||||||
#define CONSOLE_IN 0x00000004
|
|
||||||
#define CONSOLE_ALL (CONSOLE_OUT | CONSOLE_IN | STD_ERROR)
|
|
||||||
|
|
||||||
//
|
|
||||||
// Load Option Attributes defined in EFI Specification
|
|
||||||
//
|
|
||||||
#define IS_LOAD_OPTION_TYPE(_c, _Mask) (BOOLEAN) (((_c) & (_Mask)) != 0)
|
|
||||||
|
|
||||||
//
|
|
||||||
// Define Maxmim characters that will be accepted
|
|
||||||
//
|
|
||||||
#define MAX_CHAR 480
|
|
||||||
#define MAX_CHAR_SIZE (MAX_CHAR * 2)
|
|
||||||
|
|
||||||
#define MIN_ALIGNMENT_SIZE 4
|
|
||||||
#define ALIGN_SIZE(a) ((a % MIN_ALIGNMENT_SIZE) ? MIN_ALIGNMENT_SIZE - (a % MIN_ALIGNMENT_SIZE) : 0)
|
|
||||||
|
|
||||||
//
|
|
||||||
// Define maximum characters for boot option variable "BootXXXX"
|
|
||||||
//
|
|
||||||
#define BOOT_OPTION_MAX_CHAR 10
|
|
||||||
|
|
||||||
//
|
|
||||||
// This data structure is the part of BDS_CONNECT_ENTRY that we can hard code.
|
|
||||||
//
|
|
||||||
#define BDS_LOAD_OPTION_SIGNATURE EFI_SIGNATURE_32 ('B', 'd', 'C', 'O')
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
|
|
||||||
UINTN Signature;
|
|
||||||
LIST_ENTRY Link;
|
|
||||||
|
|
||||||
EFI_DEVICE_PATH_PROTOCOL *DevicePath;
|
|
||||||
|
|
||||||
CHAR16 *OptionName;
|
|
||||||
UINTN OptionNumber;
|
|
||||||
UINT16 BootCurrent;
|
|
||||||
UINT32 Attribute;
|
|
||||||
CHAR16 *Description;
|
|
||||||
VOID *LoadOptions;
|
|
||||||
UINT32 LoadOptionsSize;
|
|
||||||
|
|
||||||
} BDS_COMMON_OPTION;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
EFI_DEVICE_PATH_PROTOCOL *DevicePath;
|
|
||||||
UINTN ConnectType;
|
|
||||||
} BDS_CONSOLE_CONNECT_ENTRY;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Lib Functions
|
|
||||||
//
|
|
||||||
|
|
||||||
//
|
|
||||||
// Bds boot relate lib functions
|
|
||||||
//
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibUpdateBootOrderList (
|
|
||||||
IN LIST_ENTRY *BdsOptionList,
|
|
||||||
IN CHAR16 *VariableName
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
BdsLibBootNext (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
/*!
|
|
||||||
\fn BdsLibBootViaBootOption
|
|
||||||
\param BDS_COMMON_OPTION
|
|
||||||
\param EFI_DEVICE_PATH_PROTOCOL
|
|
||||||
*/
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibBootViaBootOption (
|
|
||||||
IN BDS_COMMON_OPTION * Option,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL * DevicePath,
|
|
||||||
OUT UINTN *ExitDataSize,
|
|
||||||
OUT CHAR16 **ExitData OPTIONAL
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibEnumerateAllBootOption (
|
|
||||||
IN OUT LIST_ENTRY *BdsBootOptionList
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
BdsLibBuildOptionFromHandle (
|
|
||||||
IN EFI_HANDLE Handle,
|
|
||||||
IN LIST_ENTRY *BdsBootOptionList
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
BdsLibBuildOptionFromShell (
|
|
||||||
IN EFI_HANDLE Handle,
|
|
||||||
IN LIST_ENTRY *BdsBootOptionList
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
|
||||||
// Bds misc lib functions
|
|
||||||
//
|
|
||||||
UINT16
|
|
||||||
BdsLibGetTimeout (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
BdsLibLoadDrivers (
|
|
||||||
IN LIST_ENTRY *BdsDriverLists
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibBuildOptionFromVar (
|
|
||||||
IN LIST_ENTRY *BdsCommonOptionList,
|
|
||||||
IN CHAR16 *VariableName
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID *
|
|
||||||
BdsLibGetVariableAndSize (
|
|
||||||
IN CHAR16 *Name,
|
|
||||||
IN EFI_GUID *VendorGuid,
|
|
||||||
OUT UINTN *VariableSize
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibOutputStrings (
|
|
||||||
IN EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *ConOut,
|
|
||||||
...
|
|
||||||
);
|
|
||||||
|
|
||||||
BDS_COMMON_OPTION *
|
|
||||||
BdsLibVariableToOption (
|
|
||||||
IN OUT LIST_ENTRY *BdsCommonOptionList,
|
|
||||||
IN CHAR16 *VariableName
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibRegisterNewOption (
|
|
||||||
IN LIST_ENTRY *BdsOptionList,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath,
|
|
||||||
IN CHAR16 *String,
|
|
||||||
IN CHAR16 *VariableName
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
|
||||||
// Bds connect or disconnect driver lib funcion
|
|
||||||
//
|
|
||||||
VOID
|
|
||||||
BdsLibConnectAllDriversToAllControllers (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
BdsLibConnectAll (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibConnectDevicePath (
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePathToConnect
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibConnectAllEfi (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibDisconnectAllEfi (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
|
||||||
// Bds console relate lib functions
|
|
||||||
//
|
|
||||||
VOID
|
|
||||||
BdsLibConnectAllConsoles (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibConnectAllDefaultConsoles (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibUpdateConsoleVariable (
|
|
||||||
IN CHAR16 *ConVarName,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *CustomizedConDevicePath,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *ExclusiveDevicePath
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibConnectConsoleVariable (
|
|
||||||
IN CHAR16 *ConVarName
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
|
||||||
// Bds device path relate lib functions
|
|
||||||
//
|
|
||||||
EFI_DEVICE_PATH_PROTOCOL *
|
|
||||||
BdsLibUnpackDevicePath (
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *DevPath
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
BdsLibSafeFreePool (
|
|
||||||
IN VOID *Buffer
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_DEVICE_PATH_PROTOCOL *
|
|
||||||
BdsLibDelPartMatchInstance (
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *Multi,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *Single
|
|
||||||
);
|
|
||||||
|
|
||||||
BOOLEAN
|
|
||||||
BdsLibMatchDevicePaths (
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *Multi,
|
|
||||||
IN EFI_DEVICE_PATH_PROTOCOL *Single
|
|
||||||
);
|
|
||||||
|
|
||||||
CHAR16 *
|
|
||||||
DevicePathToStr (
|
|
||||||
EFI_DEVICE_PATH_PROTOCOL *DevPath
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID *
|
|
||||||
EfiLibGetVariable (
|
|
||||||
IN CHAR16 *Name,
|
|
||||||
IN EFI_GUID *VendorGuid
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
|
||||||
// Internal definitions
|
|
||||||
//
|
|
||||||
typedef struct {
|
|
||||||
CHAR16 *str;
|
|
||||||
UINTN len;
|
|
||||||
UINTN maxlen;
|
|
||||||
} POOL_PRINT;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
UINT8 Type;
|
|
||||||
UINT8 SubType;
|
|
||||||
VOID (*Function) (POOL_PRINT *, VOID *);
|
|
||||||
} DEVICE_PATH_STRING_TABLE;
|
|
||||||
|
|
||||||
//
|
|
||||||
// Internal functions
|
|
||||||
//
|
|
||||||
EFI_STATUS
|
|
||||||
BdsBootByDiskSignatureAndPartition (
|
|
||||||
IN BDS_COMMON_OPTION * Option,
|
|
||||||
IN HARDDRIVE_DEVICE_PATH * HardDriveDevicePath,
|
|
||||||
IN UINT32 LoadOptionsSize,
|
|
||||||
IN VOID *LoadOptions,
|
|
||||||
OUT UINTN *ExitDataSize,
|
|
||||||
OUT CHAR16 **ExitData OPTIONAL
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
|
||||||
// Notes: EFI 64 shadow all option rom
|
|
||||||
//
|
|
||||||
#if defined (MDE_CPU_IPF)
|
|
||||||
#define EFI64_SHADOW_ALL_LEGACY_ROM() ShadowAllOptionRom ();
|
|
||||||
VOID
|
|
||||||
ShadowAllOptionRom();
|
|
||||||
#else
|
|
||||||
#define EFI64_SHADOW_ALL_LEGACY_ROM()
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
|
||||||
// BBS support macros and functions
|
|
||||||
//
|
|
||||||
#if defined (MDE_CPU_IA32)
|
|
||||||
#define REFRESH_LEGACY_BOOT_OPTIONS \
|
|
||||||
BdsDeleteAllInvalidLegacyBootOptions ();\
|
|
||||||
BdsAddNonExistingLegacyBootOptions (); \
|
|
||||||
BdsUpdateLegacyDevOrder ()
|
|
||||||
#else
|
|
||||||
#define REFRESH_LEGACY_BOOT_OPTIONS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsDeleteAllInvalidLegacyBootOptions (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsAddNonExistingLegacyBootOptions (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsUpdateLegacyDevOrder (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsRefreshBbsTableForBoot (
|
|
||||||
IN BDS_COMMON_OPTION *Entry
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsDeleteBootOption (
|
|
||||||
IN UINTN OptionNumber,
|
|
||||||
IN OUT UINT16 *BootOrder,
|
|
||||||
IN OUT UINTN *BootOrderSize
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
|
||||||
//The interface functions relate with Setup Browser Reset Reminder feature
|
|
||||||
//
|
|
||||||
VOID
|
|
||||||
EnableResetReminderFeature (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
DisableResetReminderFeature (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
EnableResetRequired (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
DisableResetRequired (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
BOOLEAN
|
|
||||||
IsResetReminderFeatureEnable (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
BOOLEAN
|
|
||||||
IsResetRequired (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
VOID
|
|
||||||
SetupResetReminder (
|
|
||||||
VOID
|
|
||||||
);
|
|
||||||
|
|
||||||
EFI_STATUS
|
|
||||||
BdsLibGetHiiHandles (
|
|
||||||
IN EFI_HII_PROTOCOL *Hii,
|
|
||||||
IN OUT UINT16 *HandleBufferLength,
|
|
||||||
OUT FRAMEWORK_EFI_HII_HANDLE **HiiHandles
|
|
||||||
);
|
|
||||||
|
|
||||||
#endif // _BDS_LIB_H_
|
|
||||||
/*@} */
|
|
@ -50,8 +50,6 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
[LibraryClasses.common]
|
[LibraryClasses.common]
|
||||||
WinNtLib|Include/Library/WinNtLib.h
|
WinNtLib|Include/Library/WinNtLib.h
|
||||||
EdkGenericBdsLib|Include/Library/EdkGenericBdsLib.h
|
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
#
|
#
|
||||||
|
Loading…
x
Reference in New Issue
Block a user