## @file\r
+# General BDS library.\r
# \r
# General BDS defines and produce general interfaces for platform BDS driver including:\r
# 1) BDS boot policy interface;\r
[Defines]\r
INF_VERSION = 0x00010005\r
BASE_NAME = GenericBdsLib\r
+ MODULE_UNI_FILE = GenericBdsLib.uni\r
FILE_GUID = e405ec31-ccaa-4dd4-83e8-0aec01703f7e\r
MODULE_TYPE = DXE_DRIVER\r
VERSION_STRING = 1.0\r
ReportStatusCodeLib\r
\r
[Guids]\r
- gEfiMemoryTypeInformationGuid ## CONSUMES ## GUID (The identifier of memory type information type in system table)\r
- gEfiGlobalVariableGuid ## SOMETIMES_PRODUCES ## Variable:L"BootCurrent" (The boot option of current boot)\r
- gEfiFileInfoGuid ## CONSUMES ## GUID\r
- gPerformanceProtocolGuid ## SOMETIMES_PRODUCES ## Variable:L"PerfDataMemAddr" (The ACPI address of performance data)\r
- gEfiUartDevicePathGuid ## CONSUMES ## GUID (Identify the device path for UARD device)\r
- gLastEnumLangGuid ## SOMETIMES_PRODUCES ## Variable:L"LastEnumLang" (Platform language at last time enumeration.)\r
- gHdBootDevicePathVariablGuid ## SOMETIMES_PRODUCES ## Variable:L"HDDP" (The device path of Boot file on Hard device.)\r
- gBdsLibStringPackageGuid ## PRODUCES ## GUID (HII String PackageList Guid)\r
- gEfiLegacyDevOrderVariableGuid ## CONSUMES ## GUID\r
- gEdkiiStatusCodeDataTypeVariableGuid ## SOMETIMES_CONSUMES\r
+ ## SOMETIMES_CONSUMES ## HOB # The hob holding memory type information\r
+ ## SOMETIMES_CONSUMES ## SystemTable # The identifier of memory type information type in system table\r
+ ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation"\r
+ ## SOMETIMES_PRODUCES ## Variable:L"MemoryTypeInformation"\r
+ gEfiMemoryTypeInformationGuid \r
+ ## SOMETIMES_CONSUMES ## Variable:L"BootXXXX" # Boot option variable\r
+ ## SOMETIMES_PRODUCES ## Variable:L"BootXXXX" # Boot option variable\r
+ ## SOMETIMES_CONSUMES ## Variable:L"DriverXXXX" # Driver load option.\r
+ ## SOMETIMES_PRODUCES ## Variable:L"DriverXXXX" # Driver load option.\r
+ ## SOMETIMES_CONSUMES ## Variable:L"BootNext" # Next Boot Option\r
+ ## SOMETIMES_PRODUCES ## Variable:L"BootNext" # Next Boot Option\r
+ ## SOMETIMES_CONSUMES ## Variable:L"BootOrder" # The boot option array\r
+ ## SOMETIMES_PRODUCES ## Variable:L"BootOrder" # The boot option array\r
+ ## SOMETIMES_CONSUMES ## Variable:L"DriverOrder" # The driver order list\r
+ ## SOMETIMES_CONSUMES ## Variable:L"ConIn" # The device path of console in device\r
+ ## SOMETIMES_PRODUCES ## Variable:L"ConIn" # The device path of console in device\r
+ ## SOMETIMES_CONSUMES ## Variable:L"ConOut" # The device path of console out device\r
+ ## SOMETIMES_PRODUCES ## Variable:L"ConOut" # The device path of console out device\r
+ ## SOMETIMES_CONSUMES ## Variable:L"ErrOut" # The device path of error out device\r
+ ## SOMETIMES_PRODUCES ## Variable:L"ErrOut" # The device path of error out device\r
+ ## SOMETIMES_PRODUCES ## Variable:L"BootCurrent" # The boot option of current boot\r
+ ## SOMETIMES_PRODUCES ## Variable:L"BootNext" # The number of next boot option\r
+ gEfiGlobalVariableGuid\r
+ gEfiFileInfoGuid ## SOMETIMES_CONSUMES ## GUID\r
+ gPerformanceProtocolGuid ## SOMETIMES_CONSUMES ## Variable:L"PerfDataMemAddr" # The ACPI address of performance data\r
+ gLastEnumLangGuid ## SOMETIMES_PRODUCES ## Variable:L"LastEnumLang" # Platform language at last time enumeration.\r
+ gHdBootDevicePathVariablGuid ## SOMETIMES_PRODUCES ## Variable:L"HDDP" # The device path of Boot file on Hard device.\r
+ gBdsLibStringPackageGuid ## CONSUMES ## HII # HII String PackageList Guid\r
+ ## SOMETIMES_PRODUCES ## Variable:L"LegacyDevOrder"\r
+ ## SOMETIMES_CONSUMES ## Variable:L"LegacyDevOrder"\r
+ gEfiLegacyDevOrderVariableGuid\r
+ gEdkiiStatusCodeDataTypeVariableGuid ## SOMETIMES_CONSUMES ## GUID\r
\r
[Protocols]\r
- gEfiSimpleFileSystemProtocolGuid # PROTOCOL CONSUMES\r
- gEfiLoadFileProtocolGuid # PROTOCOL CONSUMES\r
- gEfiSimpleTextOutProtocolGuid # PROTOCOL CONSUMES\r
- gEfiPciIoProtocolGuid # PROTOCOL CONSUMES\r
- gEfiLoadedImageProtocolGuid # PROTOCOL CONSUMES\r
- gEfiSimpleNetworkProtocolGuid # PROTOCOL CONSUMES\r
- gEfiDebugPortProtocolGuid # PROTOCOL CONSUMES\r
- gEfiSimpleTextInProtocolGuid # PROTOCOL CONSUMES\r
- gEfiBlockIoProtocolGuid # PROTOCOL CONSUMES\r
- gEfiFirmwareVolume2ProtocolGuid # PROTOCOL CONSUMES\r
- gEfiLegacyBiosProtocolGuid # PROTOCOL SOMETIMES_CONSUMES\r
- gEfiCpuArchProtocolGuid # PROTOCOL CONSUMES\r
- gEfiDevicePathProtocolGuid # PROTOCOL CONSUMES\r
- gEfiAcpiS3SaveProtocolGuid # PROTOCOL CONSUMES\r
- gEfiGraphicsOutputProtocolGuid # PROTOCOL SOMETIMES_CONSUMES\r
- gEfiUgaDrawProtocolGuid |gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport # PROTOCOL SOMETIMES_CONSUMES\r
- gEfiOEMBadgingProtocolGuid # PROTOCOL CONSUMES\r
- gEfiHiiFontProtocolGuid # PROTOCOL CONSUMES\r
- gEfiUserManagerProtocolGuid # PROTOCOL CONSUMES\r
- gEfiUsbIoProtocolGuid # PROTOCOL SOMETIMES_CONSUMES\r
- gEfiBootLogoProtocolGuid # PROTOCOL SOMETIMES_CONSUMES\r
+ gEfiSimpleFileSystemProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiLoadFileProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiSimpleTextOutProtocolGuid ## CONSUMES\r
+ gEfiPciIoProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiLoadedImageProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiSimpleNetworkProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiDebugPortProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiSimpleTextInProtocolGuid ## CONSUMES\r
+ gEfiBlockIoProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiFirmwareVolume2ProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiLegacyBiosProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiCpuArchProtocolGuid ## CONSUMES\r
+ gEfiDevicePathProtocolGuid ## CONSUMES\r
+ gEfiGraphicsOutputProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiUgaDrawProtocolGuid |gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport ## SOMETIMES_CONSUMES\r
+ gEfiOEMBadgingProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiHiiFontProtocolGuid ## CONSUMES\r
+ gEfiUserManagerProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiUsbIoProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiBootLogoProtocolGuid ## SOMETIMES_CONSUMES\r
\r
[FeaturePcd]\r
- gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport\r
- gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootlogoOnlyEnable\r
+ gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport ## CONSUMES\r
+ gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootlogoOnlyEnable ## CONSUMES\r
\r
[Pcd]\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderLoad\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderStart\r
- gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable\r
- gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderLoad ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderStart ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable ## CONSUMES\r
+ gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile ## CONSUMES\r
+\r
+#\r
+# [BootMode] \r
+# RECOVERY_FULL ## SOMETIMES_CONSUMES # Memory Type Information variable\r
+#\r
+\r