## @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 - 2014, 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 MODULE_UNI_FILE = BdsDxe.uni 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 # Cpu2.c Capsules.c Strings.uni String.c Language.c FrontPageVfr.Vfr FrontPageStrings.uni FrontPage.c BdsEntry.c [Packages] CloverPkg.dec 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"BootXXXX" # Boot option variable ## SOMETIMES_PRODUCES ## Variable:L"DriverXXXX" # Driver load option. ## 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"LangCodes" # Value of PcdUefiVariableDefaultLangCodes ## PRODUCES ## Variable:L"PlatformLangCodes" # Value of PcdUefiVariableDefaultPlatformLangCodes ## SOMETIMES_PRODUCES ## Variable:L"KeyXXXX" # Hotkey option variable ## PRODUCES ## Variable:L"HwErrRecSupport" # The level of platform supported hardware Error Record Persistence ## PRODUCES ## Variable:L"Timeout" # The time out value in second of showing progress bar ## 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 ## 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_PRODUCES ## Variable:L"ConIn" # The device path of console in device ## SOMETIMES_CONSUMES ## Variable:L"ConOut" # The device path of console out device ## SOMETIMES_PRODUCES ## Variable:L"ConOut" # The device path of console out device ## SOMETIMES_CONSUMES ## Variable:L"ErrOut" # The device path of error out device ## SOMETIMES_PRODUCES ## Variable:L"ErrOut" # The device path of error out device ## SOMETIMES_CONSUMES ## Variable:L"ConInDev" # The device path of console in device ## SOMETIMES_CONSUMES ## Variable:L"ConOutDev" # The device path of console out device ## SOMETIMES_CONSUMES ## Variable:L"ErrOutDev" # The device path of error out device ## SOMETIMES_PRODUCES ## Variable:L"BootNext" # The number of next boot option gEfiGlobalVariableGuid gEfiFileSystemVolumeLabelInfoIdGuid ## SOMETIMES_CONSUMES ## UNDEFINED # Indicate the information type is volume gEfiFileInfoGuid ## SOMETIMES_CONSUMES ## UNDEFINED # Indicate the information type is file gEfiFileSystemInfoGuid ## SOMETIMES_CONSUMES gEfiHiiPlatformSetupFormsetGuid ## SOMETIMES_CONSUMES ## UNDEFINED # Indicate the formset class guid to be displayed gEfiIfrTianoGuid ## SOMETIMES_PRODUCES ## UNDEFINED # Extended IFR Guid Opcode gEfiHiiDriverHealthFormsetGuid ## SOMETIMES_CONSUMES ## UNDEFINED # Indicate the Driver Health formset class guid to be displayed ## SOMETIMES_PRODUCES ## Variable:L"LegacyDevOrder" ## SOMETIMES_CONSUMES ## Variable:L"LegacyDevOrder" gEfiLegacyDevOrderVariableGuid gFrontPageFormSetGuid ## SOMETIMES_CONSUMES ## HII # FrontPage HII Package gBootMaintFormSetGuid ## SOMETIMES_CONSUMES ## HII # BootMaint HII Package gFileExploreFormSetGuid ## SOMETIMES_CONSUMES ## HII # FileExplore HII Package gBootManagerFormSetGuid ## SOMETIMES_CONSUMES ## HII # BootManager HII Package gDeviceManagerFormSetGuid ## SOMETIMES_CONSUMES ## HII # DeviceManager HII Package gDriverHealthFormSetGuid ## SOMETIMES_CONSUMES ## HII # DriverHealth HII Package ## SOMETIMES_PRODUCES ## Event ## SOMETIMES_CONSUMES ## Event gConnectConInEventGuid gEfiFmpCapsuleGuid ## SOMETIMES_CONSUMES ## GUID # FMP Capsule gEdkiiStatusCodeDataTypeVariableGuid ## SOMETIMES_CONSUMES ## GUID gEfiUartDevicePathGuid ## SOMETIMES_CONSUMES ## GUID (Identify the device path for UARD device) [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 gEfiBlockIo2ProtocolGuid ## 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 gEfiBootLogoProtocolGuid ## PROTOCOL SOMETIMES_CONSUMES gEfiLegacy8259ProtocolGuid gEfiCpuArchProtocolGuid gEdkiiVariableLockProtocolGuid ## PROTOCOL CONSUMES [FeaturePcd] gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangDeprecate ## CONSUMES gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport ## CONSUMES gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootlogoOnlyEnable ## CONSUMES [Pcd] gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangCodes ## SOMETIMES_CONSUMES gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang ## SOMETIMES_CONSUMES gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLangCodes ## CONSUMES gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang ## SOMETIMES_CONSUMES ## CONSUMES ## PRODUCES ## gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel gEfiMdeModulePkgTokenSpaceGuid.PcdConOutRow ## PRODUCES gEfiMdeModulePkgTokenSpaceGuid.PcdConOutColumn ## PRODUCES ## SOMETIMES_CONSUMES ## SOMETIMES_PRODUCES ## gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdPlatformBootTimeOut gEfiMdePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel ## CONSUMES gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut ## CONSUMES gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootState gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution ## PRODUCES gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution ## PRODUCES gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand ## SOMETIMES_CONSUMES ## CONSUMES ## SOMETIMES_PRODUCES gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutColumn ## CONSUMES ## SOMETIMES_PRODUCES gEfiMdeModulePkgTokenSpaceGuid.PcdSetupConOutRow gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable ## CONSUMES gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable [Depex] TRUE # # [BootMode] # BOOT_ON_FLASH_UPDATE ## SOMETIMES_CONSUMES (Update Capsule Image) # # # [Hob] # HOB ## SOMETIMES_CONSUMES ## GUID EXTENSION Capsule Data Hob # # [UserExtensions.TianoCore."ExtraFiles"] BdsDxeExtra.uni [BuildOptions] XCODE:*_*_*_CC_FLAGS = -Os -DMDEPKG_NDEBUG GCC:*_*_*_CC_FLAGS = -Os -DMDEPKG_NDEBUG MSFT:*_*_*_CC_FLAGS = /D MDEPKG_NDEBUG