Home | History | Annotate | Download | only in GenericBdsLib
      1 ## @file

      2 #  General BDS library.

      3 #  

      4 #  General BDS defines and produce general interfaces for platform BDS driver including:

      5 #  1) BDS boot policy interface;

      6 #  2) BDS boot device connect interface;

      7 #  3) BDS Misc interfaces for mainting boot variable, ouput string, etc.

      8 #  

      9 #  Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>

     10 #  This program and the accompanying materials

     11 #  are licensed and made available under the terms and conditions of the BSD License

     12 #  which accompanies this distribution.  The full text of the license may be found at

     13 #  http://opensource.org/licenses/bsd-license.php

     14 #  

     15 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,

     16 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

     17 #  

     18 ##

     19 
     20 [Defines]
     21   INF_VERSION                    = 0x00010005
     22   BASE_NAME                      = GenericBdsLib
     23   MODULE_UNI_FILE                = GenericBdsLib.uni
     24   FILE_GUID                      = e405ec31-ccaa-4dd4-83e8-0aec01703f7e
     25   MODULE_TYPE                    = DXE_DRIVER
     26   VERSION_STRING                 = 1.0
     27   LIBRARY_CLASS                  = GenericBdsLib|DXE_DRIVER DXE_RUNTIME_DRIVER UEFI_APPLICATION 
     28   CONSTRUCTOR                    = GenericBdsLibConstructor
     29 
     30 #

     31 # The following information is for reference only and not required by the build tools.

     32 #

     33 #  VALID_ARCHITECTURES           = IA32 X64 IPF EBC

     34 #

     35 
     36 [Sources]
     37   DevicePath.c
     38   Performance.c
     39   BdsConnect.c
     40   BdsMisc.c
     41   BdsConsole.c
     42   BdsBoot.c
     43   InternalBdsLib.h
     44   String.h
     45   String.c
     46   GenericBdsStrings.uni
     47   
     48 [Packages]
     49   MdePkg/MdePkg.dec
     50   MdeModulePkg/MdeModulePkg.dec
     51   IntelFrameworkPkg/IntelFrameworkPkg.dec
     52   IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
     53 
     54 [LibraryClasses]
     55   DevicePathLib
     56   PeCoffGetEntryPointLib
     57   BaseLib
     58   HobLib
     59   UefiRuntimeServicesTableLib
     60   DxeServicesTableLib
     61   MemoryAllocationLib
     62   UefiLib
     63   UefiBootServicesTableLib
     64   BaseMemoryLib
     65   DebugLib
     66   PrintLib
     67   PcdLib
     68   PerformanceLib
     69   TimerLib
     70   DxeServicesLib
     71   HiiLib
     72   ReportStatusCodeLib
     73 
     74 [Guids]
     75   ## SOMETIMES_CONSUMES ## HOB         # The hob holding memory type information

     76   ## SOMETIMES_CONSUMES ## SystemTable # The identifier of memory type information type in system table

     77   ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation"

     78   ## SOMETIMES_PRODUCES ## Variable:L"MemoryTypeInformation"

     79   gEfiMemoryTypeInformationGuid                 
     80   ## SOMETIMES_CONSUMES ## Variable:L"BootXXXX"    # Boot option variable

     81   ## SOMETIMES_PRODUCES ## Variable:L"BootXXXX"    # Boot option variable

     82   ## SOMETIMES_CONSUMES ## Variable:L"DriverXXXX"  # Driver load option.

     83   ## SOMETIMES_PRODUCES ## Variable:L"DriverXXXX"  # Driver load option.

     84   ## SOMETIMES_CONSUMES ## Variable:L"BootNext"    # Next Boot Option

     85   ## SOMETIMES_PRODUCES ## Variable:L"BootNext"    # Next Boot Option

     86   ## SOMETIMES_CONSUMES ## Variable:L"BootOrder"   # The boot option array

     87   ## SOMETIMES_PRODUCES ## Variable:L"BootOrder"   # The boot option array

     88   ## SOMETIMES_CONSUMES ## Variable:L"DriverOrder" # The driver order list

     89   ## SOMETIMES_CONSUMES ## Variable:L"ConIn"       # The device path of console in device

     90   ## SOMETIMES_PRODUCES ## Variable:L"ConIn"       # The device path of console in device

     91   ## SOMETIMES_CONSUMES ## Variable:L"ConOut"      # The device path of console out device

     92   ## SOMETIMES_PRODUCES ## Variable:L"ConOut"      # The device path of console out device

     93   ## SOMETIMES_CONSUMES ## Variable:L"ErrOut"      # The device path of error out device

     94   ## SOMETIMES_PRODUCES ## Variable:L"ErrOut"      # The device path of error out device

     95   ## SOMETIMES_PRODUCES ## Variable:L"BootCurrent" # The boot option of current boot

     96   ## SOMETIMES_PRODUCES ## Variable:L"BootNext"    # The number of next boot option

     97   gEfiGlobalVariableGuid
     98   gEfiFileInfoGuid                              ## SOMETIMES_CONSUMES ## GUID

     99   gPerformanceProtocolGuid                      ## SOMETIMES_CONSUMES ## Variable:L"PerfDataMemAddr" # The ACPI address of performance data

    100   gLastEnumLangGuid                             ## SOMETIMES_PRODUCES ## Variable:L"LastEnumLang" # Platform language at last time enumeration.

    101   gHdBootDevicePathVariablGuid                  ## SOMETIMES_PRODUCES ## Variable:L"HDDP" # The device path of Boot file on Hard device.

    102   gBdsLibStringPackageGuid                      ## CONSUMES ## HII # HII String PackageList Guid

    103   ## SOMETIMES_PRODUCES ## Variable:L"LegacyDevOrder"

    104   ## SOMETIMES_CONSUMES ## Variable:L"LegacyDevOrder"

    105   gEfiLegacyDevOrderVariableGuid
    106   gEdkiiStatusCodeDataTypeVariableGuid          ## SOMETIMES_CONSUMES ## GUID

    107 
    108 [Protocols]
    109   gEfiSimpleFileSystemProtocolGuid              ## SOMETIMES_CONSUMES

    110   gEfiLoadFileProtocolGuid                      ## SOMETIMES_CONSUMES

    111   gEfiSimpleTextOutProtocolGuid                 ## CONSUMES

    112   gEfiPciIoProtocolGuid                         ## SOMETIMES_CONSUMES

    113   gEfiLoadedImageProtocolGuid                   ## SOMETIMES_CONSUMES

    114   gEfiSimpleNetworkProtocolGuid                 ## SOMETIMES_CONSUMES

    115   gEfiDebugPortProtocolGuid                     ## SOMETIMES_CONSUMES

    116   gEfiSimpleTextInProtocolGuid                  ## CONSUMES

    117   gEfiBlockIoProtocolGuid                       ## SOMETIMES_CONSUMES

    118   gEfiFirmwareVolume2ProtocolGuid               ## SOMETIMES_CONSUMES

    119   gEfiLegacyBiosProtocolGuid                    ## SOMETIMES_CONSUMES

    120   gEfiCpuArchProtocolGuid                       ## CONSUMES

    121   gEfiDevicePathProtocolGuid                    ## CONSUMES

    122   gEfiGraphicsOutputProtocolGuid                ## SOMETIMES_CONSUMES

    123   gEfiUgaDrawProtocolGuid |gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport ## SOMETIMES_CONSUMES

    124   gEfiOEMBadgingProtocolGuid                    ## SOMETIMES_CONSUMES

    125   gEfiHiiFontProtocolGuid                       ## CONSUMES

    126   gEfiUserManagerProtocolGuid                   ## SOMETIMES_CONSUMES

    127   gEfiUsbIoProtocolGuid                         ## SOMETIMES_CONSUMES

    128   gEfiBootLogoProtocolGuid                      ## SOMETIMES_CONSUMES

    129 
    130 [FeaturePcd]
    131   gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport                   ## CONSUMES

    132   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdBootlogoOnlyEnable ## CONSUMES

    133 
    134 [Pcd]
    135   gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange ## SOMETIMES_CONSUMES

    136   gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderLoad  ## SOMETIMES_CONSUMES

    137   gEfiMdeModulePkgTokenSpaceGuid.PcdProgressCodeOsLoaderStart ## SOMETIMES_CONSUMES

    138   gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable      ## CONSUMES

    139   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile      ## CONSUMES

    140 
    141 #

    142 # [BootMode] 

    143 #   RECOVERY_FULL    ## SOMETIMES_CONSUMES # Memory Type Information variable

    144 #

    145 
    146