## @file # # BDSDxe module is core driver for BDS phase. # When DxeCore dispatching all DXE driver, this module will produce architecture protocol # gEfiBdsArchProtocolGuid. After DxeCore finish dispatching, DxeCore will invoke Entry # interface of protocol gEfiBdsArchProtocolGuid, then BDS phase is entered. # # Generally, this module take reposiblity to connect all necessary devices for platform boot, # these boot device path are hold in PlatformBdsLib library instance produced by platform. # For legacy boot, BDS will transfer control to legacy BIOS after legacy boot device is select. # For EFI boot, BDS will load boot loader file EFI\BOOT\BOOTIA32.EFI, EFI\BOOT\BOOTX64.EFI, # EFI\BOOT\BOOTIA64.EFI file from selected boot device and transfer control to boot loader. # # BDSDxe also maintain the UI for "Boot Manager, Boot Maintaince Manager, Device Manager" which # is used for user to configure boot option or maintain hardware device. # # Copyright (c) 2008 - 2011, 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. # ## [Defines] INF_VERSION = 0x00010005 BASE_NAME = BdsDxe FILE_GUID = FC5C7020-1A48-4198-9BE2-EAD5ABC8CF2F MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 ENTRY_POINT = BdsInitialize # # The following information is for reference only and not required by the build tools. # # VALID_ARCHITECTURES = IA32 X64 IPF EBC # [Sources] FrontPage.h Language.h Bds.h Hotkey.h BootMaint/BBSsupport.h BootMngr/BootManager.h BootMaint/BootMaint.h String.h BootMaint/FormGuid.h HwErrRecSupport.c HwErrRecSupport.h DeviceMngr/DeviceManager.h DeviceMngr/DeviceManagerVfr.h DeviceMngr/DeviceManagerVfr.Vfr DeviceMngr/DriverHealthVfr.Vfr DeviceMngr/DeviceManagerStrings.uni DeviceMngr/DeviceManager.c BootMngr/BootManagerVfr.Vfr BootMngr/BootManagerStrings.uni BootMngr/BootManager.c BootMaint/FE.vfr BootMaint/FileExplorer.c BootMaint/BootMaint.c BootMaint/BBSsupport.c BootMaint/UpdatePage.c BootMaint/Variable.c BootMaint/Data.c BootMaint/ConsoleOption.c BootMaint/BootOption.c BootMaint/BmLib.c BootMaint/Bm.vfr BootMaint/Bmstring.uni Hotkey.c MemoryTest.c Capsules.c Strings.uni String.c Language.c FrontPageVfr.Vfr FrontPageStrings.uni FrontPage.c BdsEntry.c [Packages] MdePkg/MdePkg.dec MdeModulePkg/MdeModulePkg.dec IntelFrameworkPkg/IntelFrameworkPkg.dec IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec [LibraryClasses] DevicePathLib BaseLib HobLib UefiRuntimeServicesTableLib GenericBdsLib ReportStatusCodeLib PerformanceLib MemoryAllocationLib UefiLib UefiBootServicesTableLib BaseMemoryLib DebugLib PrintLib HiiLib UefiDriverEntryPoint PlatformBdsLib CapsuleLib PcdLib UefiHiiServicesLib [Guids] ## SOMETIMES_PRODUCES ## Variable:L"BootXX" (Boot option variable) ## SOMETIMES_PRODUCES ## Variable:L"PlatformLang" (Platform supported languange in Rfc4646 format) ## SOMETIMES_PRODUCES ## Variable:L"Lang" (Platform supported languange in Iso639 format) ## SOMETIMES_PRODUCES ## Variable:L"KeyOrder" (Number of hotkey) ## SOMETIMES_PRODUCES ## Variable:L"KeyXX" (Hotkey option variable) ## PRODUCES ## Variable:L"HwErrRecSupport" (The level of platform supported hardware Error Record Persistence) ## SOMETIMES_PRODUCES ## Variable:L"BootOptionSupport" (The feature supported in boot option menu, value could be: EFI_BOOT_OPTION_SUPPORT_KEY, EFI_BOOT_OPTION_SUPPORT_APP ## SOMETIMES_PRODUCES (not PcdUefiVariableDefaultLangDeprecate)## Variable:L"LangCodes" (Value of PcdUefiVariableDefaultLangCodes) ## PRODUCES ## Variable:L"PlatformLangCodes" (Value of PcdUefiVariableDefaultPlatformLangCodes) ## PRODUCES ## Variable:L"Timeout" (The time out value in second of showing progress bar) ## SOMETIMES_PRODUCES ## Variable:L"BootOrder" (The boot option array) ## SOMETIMES_PRODUCES ## Variable:L"DriverOrder" (The driver order list) ## SOMETIMES_CONSUMES ## Variable:L"ConIn" (The device path of console in device) ## SOMETIMES_CONSUMES ## Variable:L"ConOut" (The device path of console out device) ## SOMETIMES_CONSUMES ## Variable:L"ErrOut" (The device path of error out device) gEfiGlobalVariableGuid ## SOMETIMES_PRODUCES ## Variable:L"BootNext" (The number of next boot option) gEfiFileSystemVolumeLabelInfoIdGuid ## CONSUMES ## GUID (Indicate the information type is volume) gEfiFileInfoGuid ## CONSUMES ## GUID (Indicate the information type is file) gEfiHiiPlatformSetupFormsetGuid ## CONSUMES ## GUID (Indicate the formset class guid to be displayed) gEfiIfrTianoGuid ## CONSUMES ## GUID (Extended IFR Guid Opcode) gEfiHiiDriverHealthFormsetGuid ## CONSUMES ## GUID (Indicate the Driver Health formset class guid to be displayed) gEfiLegacyDevOrderVariableGuid ## SOMETIMES_PRODUCES ## Variable:L"LegacyDevOrder" gFrontPageFormSetGuid ## PRODUCES ## FrontPage HII Package gBootMaintFormSetGuid ## SOMETIMES_PRODUCES ## BootMaint HII Package gFileExploreFormSetGuid ## SOMETIMES_PRODUCES ## FileExplore HII Package gBootManagerFormSetGuid ## SOMETIMES_PRODUCES ## BootManager HII Package gDeviceManagerFormSetGuid ## SOMETIMES_PRODUCES ## DeviceManager HII Package gDriverHealthFormSetGuid ## SOMETIMES_PRODUCES ## DriverHealth HII Package [Protocols] gEfiSimpleFileSystemProtocolGuid ## PROTOCOL CONSUMES gEfiLoadFileProtocolGuid ## PROTOCOL CONSUMES gEfiBdsArchProtocolGuid ## PROTOCOL PRODUCES gEfiSmbiosProtocolGuid ## PROTOCOL CONSUMES gEfiGenericMemTestProtocolGuid ## PROTOCOL CONSUMES gEfiLegacyBiosProtocolGuid ## PROTOCOL CONSUMES gEfiUgaDrawProtocolGuid |gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport ## PROTOCOL SOMETIMES_CONSUMES gEfiBlockIoProtocolGuid ## PROTOCOL CONSUMES gEfiGraphicsOutputProtocolGuid ## PROTOCOL SOMETIMES_CONSUMES gEfiSimpleTextInputExProtocolGuid ## PROTOCOL CONSUMES gEfiHiiConfigAccessProtocolGuid ## PROTOCOL CONSUMES gEfiFormBrowser2ProtocolGuid ## PROTOCOL CONSUMES gEfiSerialIoProtocolGuid ## PROTOCOL CONSUMES gEfiDevicePathProtocolGuid ## PROTOCOL CONSUMES gEfiDriverHealthProtocolGuid ## PROTOCOL SOMETIMES_CONSUMES gEfiPciIoProtocolGuid ## PROTOCOL CONSUMES [FeaturePcd] gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangDeprecate gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport [Pcd] gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangCodes gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLangCodes gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision [Depex] TRUE # # [BootMode] # BOOT_ON_FLASH_UPDATE ## SOMETIMES_CONSUMES (Update Capsule Image) # # # [Hob] # HOB ## SOMETIMES_CONSUMES ## GUID EXTENSION Capsule Data Hob # #