1 | ## @file
|
---|
2 | # Define and produce general Boot Manager related interfaces.
|
---|
3 | #
|
---|
4 | # The implementation provides richful library functions supporting load option
|
---|
5 | # manipulation, hotkey registration, UEFI boot, connect/disconnect, console
|
---|
6 | # manipulation, driver health checking and etc.
|
---|
7 | #
|
---|
8 | # Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved.
|
---|
9 | # Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
|
---|
10 | # (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
|
---|
11 | # SPDX-License-Identifier: BSD-2-Clause-Patent
|
---|
12 | #
|
---|
13 | ##
|
---|
14 |
|
---|
15 | [Defines]
|
---|
16 | INF_VERSION = 0x00010005
|
---|
17 | BASE_NAME = UefiBootManagerLib
|
---|
18 | MODULE_UNI_FILE = UefiBootManagerLib.uni
|
---|
19 | FILE_GUID = 8D4752BC-595E-49a2-B4AF-F3F57B601DE9
|
---|
20 | MODULE_TYPE = DXE_DRIVER
|
---|
21 | VERSION_STRING = 1.0
|
---|
22 | LIBRARY_CLASS = UefiBootManagerLib|DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_APPLICATION UEFI_DRIVER
|
---|
23 |
|
---|
24 | #
|
---|
25 | # The following information is for reference only and not required by the build tools.
|
---|
26 | #
|
---|
27 | # VALID_ARCHITECTURES = IA32 X64 EBC
|
---|
28 | #
|
---|
29 |
|
---|
30 | [Sources]
|
---|
31 | BmConnect.c
|
---|
32 | BmMisc.c
|
---|
33 | BmConsole.c
|
---|
34 | BmBoot.c
|
---|
35 | BmBootDescription.c
|
---|
36 | BmLoadOption.c
|
---|
37 | BmHotkey.c
|
---|
38 | BmDriverHealth.c
|
---|
39 | InternalBm.h
|
---|
40 |
|
---|
41 | [Packages]
|
---|
42 | MdePkg/MdePkg.dec
|
---|
43 | MdeModulePkg/MdeModulePkg.dec
|
---|
44 | VBoxPkg/VBoxPkg.dec
|
---|
45 |
|
---|
46 | [LibraryClasses]
|
---|
47 | HobLib
|
---|
48 | PcdLib
|
---|
49 | BaseLib
|
---|
50 | UefiLib
|
---|
51 | DebugLib
|
---|
52 | PrintLib
|
---|
53 | BaseMemoryLib
|
---|
54 | DevicePathLib
|
---|
55 | PerformanceLib
|
---|
56 | PeCoffGetEntryPointLib
|
---|
57 | UefiBootServicesTableLib
|
---|
58 | UefiRuntimeServicesTableLib
|
---|
59 | DxeServicesTableLib
|
---|
60 | MemoryAllocationLib
|
---|
61 | DxeServicesLib
|
---|
62 | ReportStatusCodeLib
|
---|
63 | PerformanceLib
|
---|
64 | HiiLib
|
---|
65 | SortLib
|
---|
66 |
|
---|
67 | [Guids]
|
---|
68 | ## SOMETIMES_CONSUMES ## SystemTable (The identifier of memory type information type in system table)
|
---|
69 | ## SOMETIMES_CONSUMES ## HOB (The hob holding memory type information)
|
---|
70 | ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation."
|
---|
71 | ## SOMETIMES_PRODUCES ## Variable:L"MemoryTypeInformation."
|
---|
72 | gEfiMemoryTypeInformationGuid
|
---|
73 |
|
---|
74 | ## SOMETIMES_PRODUCES ## Variable:L"BootCurrent" (The boot option of current boot)
|
---|
75 | ## SOMETIMES_CONSUMES ## Variable:L"BootXX" (Boot option variable)
|
---|
76 | ## SOMETIMES_CONSUMES ## Variable:L"BootOrder" (The boot option array)
|
---|
77 | ## SOMETIMES_CONSUMES ## Variable:L"DriverOrder" (The driver order list)
|
---|
78 | ## SOMETIMES_CONSUMES ## Variable:L"ConIn" (The device path of console in device)
|
---|
79 | ## SOMETIMES_CONSUMES ## Variable:L"ConOut" (The device path of console out device)
|
---|
80 | ## SOMETIMES_CONSUMES ## Variable:L"ErrOut" (The device path of error out device)
|
---|
81 | gEfiGlobalVariableGuid
|
---|
82 |
|
---|
83 | gEdkiiStatusCodeDataTypeVariableGuid ## SOMETIMES_CONSUMES ## GUID
|
---|
84 | gEfiDiskInfoAhciInterfaceGuid ## SOMETIMES_CONSUMES ## GUID
|
---|
85 | gEfiDiskInfoIdeInterfaceGuid ## SOMETIMES_CONSUMES ## GUID
|
---|
86 | gEfiDiskInfoScsiInterfaceGuid ## SOMETIMES_CONSUMES ## GUID
|
---|
87 | gEfiDiskInfoSdMmcInterfaceGuid ## SOMETIMES_CONSUMES ## GUID
|
---|
88 |
|
---|
89 | gVBoxFsBlessedFileInfoGuid ## SOMETIMES_CONSUMES ## GUID
|
---|
90 |
|
---|
91 | [Protocols]
|
---|
92 | gEfiPciRootBridgeIoProtocolGuid ## CONSUMES
|
---|
93 | gEfiSimpleFileSystemProtocolGuid ## SOMETIMES_CONSUMES
|
---|
94 | gEfiLoadFileProtocolGuid ## SOMETIMES_CONSUMES
|
---|
95 | gEfiSimpleTextOutProtocolGuid ## SOMETIMES_CONSUMES
|
---|
96 | gEfiPciIoProtocolGuid ## SOMETIMES_CONSUMES
|
---|
97 | gEfiLoadedImageProtocolGuid ## CONSUMES
|
---|
98 | gEfiSimpleNetworkProtocolGuid ## SOMETIMES_CONSUMES
|
---|
99 | gEfiSimpleTextInProtocolGuid ## SOMETIMES_CONSUMES
|
---|
100 | gEfiBlockIoProtocolGuid ## SOMETIMES_CONSUMES
|
---|
101 | gEfiFirmwareVolume2ProtocolGuid ## SOMETIMES_CONSUMES
|
---|
102 | gEfiDevicePathProtocolGuid ## SOMETIMES_CONSUMES
|
---|
103 | gEfiBootLogoProtocolGuid ## SOMETIMES_CONSUMES
|
---|
104 | gEfiSimpleTextInputExProtocolGuid ## SOMETIMES_CONSUMES
|
---|
105 | gEdkiiVariableLockProtocolGuid ## SOMETIMES_CONSUMES
|
---|
106 | gEfiGraphicsOutputProtocolGuid ## SOMETIMES_CONSUMES
|
---|
107 | gEfiUsbIoProtocolGuid ## SOMETIMES_CONSUMES
|
---|
108 | gEfiNvmExpressPassThruProtocolGuid ## SOMETIMES_CONSUMES
|
---|
109 | gEfiDiskInfoProtocolGuid ## SOMETIMES_CONSUMES
|
---|
110 | gEfiDriverHealthProtocolGuid ## SOMETIMES_CONSUMES
|
---|
111 | gEfiFormBrowser2ProtocolGuid ## SOMETIMES_CONSUMES
|
---|
112 | gEfiRamDiskProtocolGuid ## SOMETIMES_CONSUMES
|
---|
113 | gEfiDeferredImageLoadProtocolGuid ## SOMETIMES_CONSUMES
|
---|
114 | gEdkiiPlatformBootManagerProtocolGuid ## SOMETIMES_CONSUMES
|
---|
115 |
|
---|
116 | [Pcd]
|
---|
117 | gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange ## SOMETIMES_CONSUMES
|
---|
118 | gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderLoad ## SOMETIMES_CONSUMES
|
---|
119 | gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderStart ## SOMETIMES_CONSUMES
|
---|
120 | gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable ## SOMETIMES_CONSUMES
|
---|
121 | gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile ## CONSUMES
|
---|
122 | gEfiMdeModulePkgTokenSpaceGuid.PcdDriverHealthConfigureForm ## SOMETIMES_CONSUMES
|
---|
123 | gEfiMdeModulePkgTokenSpaceGuid.PcdMaxRepairCount ## CONSUMES
|
---|