1.Change the behavior of BdsBoot, to enumerate Boot Options by EfiLoadFileProtocol...
[efi/edk2/.git] / edk2 / IntelFrameworkModulePkg / Library / GenericBdsLib / GenericBdsLib.inf
1 ## @file\r
2 #  \r
3 #  General BDS defines and produce general interfaces for platform BDS driver including:\r
4 #  1) BDS boot policy interface;\r
5 #  2) BDS boot device connect interface;\r
6 #  3) BDS Misc interfaces for mainting boot variable, ouput string, etc.\r
7 #  \r
8 #  Copyright (c) 2007 - 2010, Intel Corporation. <BR>\r
9 #  All rights reserved. This program and the accompanying materials\r
10 #  are licensed and made available under the terms and conditions of the BSD License\r
11 #  which accompanies this distribution.  The full text of the license may be found at\r
12 #  http://opensource.org/licenses/bsd-license.php\r
13 #  \r
14 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
15 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
16 #  \r
17 ##\r
18 \r
19 [Defines]\r
20   INF_VERSION                    = 0x00010005\r
21   BASE_NAME                      = GenericBdsLib\r
22   FILE_GUID                      = e405ec31-ccaa-4dd4-83e8-0aec01703f7e\r
23   MODULE_TYPE                    = DXE_DRIVER\r
24   VERSION_STRING                 = 1.0\r
25   LIBRARY_CLASS                  = GenericBdsLib|DXE_DRIVER UEFI_APPLICATION \r
26 \r
27 #\r
28 # The following information is for reference only and not required by the build tools.\r
29 #\r
30 #  VALID_ARCHITECTURES           = IA32 X64 IPF EBC\r
31 #\r
32 \r
33 [Sources.common]\r
34   DevicePath.c\r
35   Performance.c\r
36   BdsConnect.c\r
37   BdsMisc.c\r
38   BdsConsole.c\r
39   BdsBoot.c\r
40   InternalBdsLib.h\r
41   Bmp.h\r
42   \r
43 [Sources.IPF]\r
44   Ipf/ShadowRom.c\r
45 \r
46 [Packages]\r
47   MdePkg/MdePkg.dec\r
48   MdeModulePkg/MdeModulePkg.dec\r
49   IntelFrameworkPkg/IntelFrameworkPkg.dec\r
50   IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec\r
51 \r
52 [LibraryClasses]\r
53   DevicePathLib\r
54   PeCoffGetEntryPointLib\r
55   BaseLib\r
56   HobLib\r
57   UefiRuntimeServicesTableLib\r
58   DxeServicesTableLib\r
59   MemoryAllocationLib\r
60   UefiLib\r
61   UefiBootServicesTableLib\r
62   BaseMemoryLib\r
63   DebugLib\r
64   PrintLib\r
65   PcdLib\r
66   PerformanceLib\r
67   TimerLib\r
68   PcdLib\r
69   DxeServicesLib\r
70 \r
71 [Guids]\r
72   gEfiVT100PlusGuid                             ## CONSUMES ## GUID (The type of terminal)\r
73   gEfiVT100Guid                                 ## CONSUMES ## GUID (The type of terminal)\r
74   gEfiMemoryTypeInformationGuid                 ## CONSUMES ## GUID (The identifier of memory type information type in system table)\r
75                                                 ## CONSUMES ## GUID HOB (The hob holding memory type information)\r
76   gEfiVTUTF8Guid                                ## CONSUMES ## GUID (The type of terminal)\r
77   gEfiGlobalVariableGuid                        ## SOMETIMES_PRODUCES ## Variable:L"BootCurrent" (The boot option of current boot)\r
78                                                 ## SOMETIMES_CONSUMES ## Variable:L"BootXX" (Boot option variable)\r
79                                                 ## CONSUMES           ## Variable:L"Timeout" (The time out value in second of showing progress bar)\r
80                                                 ## SOMETIMES_CONSUMES ## Variable:L"BootOrder" (The boot option array)\r
81                                                 ## SOMETIMES_CONSUMES ## Variable:L"DriverOrder" (The driver order list)\r
82                                                 ## SOMETIMES_CONSUMES ## Variable:L"ConIn" (The device path of console in device)\r
83                                                 ## SOMETIMES_CONSUMES ## Variable:L"ConOut" (The device path of console out device)\r
84                                                 ## SOMETIMES_CONSUMES ## Variable:L"ErrOut" (The device path of error out device)\r
85   gEfiFileInfoGuid                              ## CONSUMES ## GUID\r
86   gEfiPcAnsiGuid                                ## CONSUMES ## GUID (The type of terminal)\r
87   gPerformanceProtocolGuid                      ## SOMETIMES_PRODUCES ## Variable:L"PerfDataMemAddr" (The ACPI address of performance data)\r
88   gEfiUartDevicePathGuid                        ## CONSUMES ## GUID (Identify the device path for UARD device)\r
89   gEfiSasDevicePathGuid                         ## CONSUMES ## GUID (Identify the device path for SAS device)\r
90 \r
91 [Protocols]\r
92   gEfiSimpleFileSystemProtocolGuid              # PROTOCOL CONSUMES\r
93   gEfiLoadFileProtocolGuid                      # PROTOCOL CONSUMES\r
94   gEfiSimpleTextOutProtocolGuid                 # PROTOCOL CONSUMES\r
95   gEfiPciIoProtocolGuid                         # PROTOCOL CONSUMES\r
96   gEfiLoadedImageProtocolGuid                   # PROTOCOL CONSUMES\r
97   gEfiDevicePathToTextProtocolGuid              # PROTOCOL SOMETIMES_CONSUMES\r
98   gEfiSimpleNetworkProtocolGuid                 # PROTOCOL CONSUMES\r
99   gEfiDebugPortProtocolGuid                     # PROTOCOL CONSUMES\r
100   gEfiSimpleTextInProtocolGuid                  # PROTOCOL CONSUMES\r
101   gEfiBlockIoProtocolGuid                       # PROTOCOL CONSUMES\r
102   gEfiFirmwareVolume2ProtocolGuid               # PROTOCOL CONSUMES\r
103   gEfiLegacyBiosProtocolGuid                    # PROTOCOL SOMETIMES_CONSUMES\r
104   gEfiCpuArchProtocolGuid                       # PROTOCOL CONSUMES\r
105   gEfiDevicePathProtocolGuid                    # PROTOCOL CONSUMES\r
106   gEfiAcpiS3SaveProtocolGuid                    # PROTOCOL CONSUMES\r
107   gEfiGraphicsOutputProtocolGuid                # PROTOCOL SOMETIMES_CONSUMES\r
108   gEfiUgaDrawProtocolGuid |PcdUgaConsumeSupport # PROTOCOL SOMETIMES_CONSUMES\r
109   gEfiOEMBadgingProtocolGuid                    # PROTOCOL CONSUMES\r
110   gEfiHiiFontProtocolGuid                       # PROTOCOL CONSUMES\r
111 \r
112 [FeaturePcd]\r
113   gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport\r
114 \r
115 [Pcd]\r
116   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile\r