1## @file
2#  BdsDxe module is core driver for BDS phase.
3#
4#  When DxeCore dispatching all DXE driver, this module will produce architecture protocol
5#  gEfiBdsArchProtocolGuid. After DxeCore finish dispatching, DxeCore will invoke Entry
6#  interface of protocol gEfiBdsArchProtocolGuid, then BDS phase is entered.
7#
8#  Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
9#  This program and the accompanying materials
10#  are licensed and made available under the terms and conditions of the BSD License
11#  which accompanies this distribution.  The full text of the license may be found at
12#  http://opensource.org/licenses/bsd-license.php
13#
14#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
15#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
16#
17##
18
19[Defines]
20  INF_VERSION                    = 0x00010005
21  BASE_NAME                      = BdsDxe
22  MODULE_UNI_FILE                = BdsDxe.uni
23  FILE_GUID                      = 6D33944A-EC75-4855-A54D-809C75241F6C
24  MODULE_TYPE                    = DXE_DRIVER
25  VERSION_STRING                 = 1.0
26  ENTRY_POINT                    = BdsInitialize
27
28#
29# The following information is for reference only and not required by the build tools.
30#
31#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
32#
33
34[Sources]
35  Language.h
36  Bds.h
37  HwErrRecSupport.c
38  HwErrRecSupport.h
39  Language.c
40  BdsEntry.c
41
42
43[Packages]
44  MdePkg/MdePkg.dec
45  MdeModulePkg/MdeModulePkg.dec
46
47[LibraryClasses]
48  DevicePathLib
49  BaseLib
50  MemoryAllocationLib
51  UefiDriverEntryPoint
52  UefiBootServicesTableLib
53  UefiRuntimeServicesTableLib
54  ReportStatusCodeLib
55  UefiLib
56  BaseMemoryLib
57  DebugLib
58  UefiBootManagerLib
59  PlatformBootManagerLib
60  PcdLib
61  PrintLib
62
63[Guids]
64  gEfiGlobalVariableGuid                        ## SOMETIMES_PRODUCES ## Variable:L"BootNext" (The number of next boot option)
65                                                ## SOMETIMES_PRODUCES ## Variable:L"Boot####" (Boot option variable)
66                                                ## SOMETIMES_PRODUCES ## Variable:L"PlatformLang" (Platform supported languange in Rfc4646 format)
67                                                ## SOMETIMES_PRODUCES ## Variable:L"Lang" (Platform supported languange in Iso639 format)
68                                                ## SOMETIMES_PRODUCES ## Variable:L"Key####" (Hotkey option variable)
69                                                ## PRODUCES           ## Variable:L"HwErrRecSupport" (The level of platform supported hardware Error Record Persistence)
70                                                ## 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
71                                                ## SOMETIMES_PRODUCES (not PcdUefiVariableDefaultLangDeprecate) ## Variable:L"LangCodes" (Value of PcdUefiVariableDefaultLangCodes)
72                                                ## PRODUCES           ## Variable:L"PlatformLangCodes" (Value of PcdUefiVariableDefaultPlatformLangCodes)
73                                                ## PRODUCES           ## Variable:L"Timeout" (The time out value in second of showing progress bar)
74                                                ## SOMETIMES_PRODUCES ## Variable:L"BootOrder" (The boot option array)
75                                                ## SOMETIMES_PRODUCES ## Variable:L"DriverOrder" (The driver order list)
76                                                ## SOMETIMES_CONSUMES ## Variable:L"ConIn" (The device path of console in device)
77                                                ## SOMETIMES_CONSUMES ## Variable:L"ConOut" (The device path of console out device)
78                                                ## SOMETIMES_CONSUMES ## Variable:L"ErrOut" (The device path of error out device)
79  gConnectConInEventGuid                        ## SOMETIMES_CONSUMES ## Event
80  gEdkiiStatusCodeDataTypeVariableGuid          ## SOMETIMES_CONSUMES ## GUID
81
82[Protocols]
83  gEfiBdsArchProtocolGuid                       ## PRODUCES
84  gEfiSimpleTextInputExProtocolGuid             ## CONSUMES
85  gEdkiiVariableLockProtocolGuid                ## CONSUMES
86
87[FeaturePcd]
88  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangDeprecate    ## CONSUMES
89
90[Pcd]
91  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangCodes            ## CONSUMES
92  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang                 ## SOMETIMES_CONSUMES
93  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLangCodes    ## CONSUMES
94  gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang         ## CONSUMES
95  gEfiMdePkgTokenSpaceGuid.PcdHardwareErrorRecordLevel                ## CONSUMES
96  gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut                     ## CONSUMES
97  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor                    ## CONSUMES
98  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareRevision                  ## CONSUMES
99  gEfiMdeModulePkgTokenSpaceGuid.PcdConInConnectOnDemand              ## CONSUMES
100  gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable              ## SOMETIMES_CONSUMES
101
102[Depex]
103  TRUE
104
105[UserExtensions.TianoCore."ExtraFiles"]
106  BdsDxeExtra.uni
107