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

      2 # PeiMain module is core module in PEI phase.

      3 #

      4 # It takes responsibilities of:

      5 # 1) Initialize memory, PPI, image services etc, to establish PEIM runtime environment.

      6 # 2) Dispatch PEIM from discovered FV.

      7 # 3) Handoff control to DxeIpl to load DXE core and enter DXE phase.

      8 #

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

     10 #

     11 #  This program and the accompanying materials

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

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

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

     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 
     21 [Defines]
     22   INF_VERSION                    = 0x00010005
     23   BASE_NAME                      = PeiCore
     24   MODULE_UNI_FILE                = PeiCore.uni
     25   FILE_GUID                      = 52C05B14-0B98-496c-BC3B-04B50211D680
     26   MODULE_TYPE                    = PEI_CORE
     27   VERSION_STRING                 = 1.0
     28   ENTRY_POINT                    = PeiCore
     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 (EBC is for build only)

     34 #

     35 
     36 [Sources]
     37   StatusCode/StatusCode.c
     38   Security/Security.c
     39   Reset/Reset.c
     40   Ppi/Ppi.c
     41   PeiMain/PeiMain.c
     42   Memory/MemoryServices.c
     43   Image/Image.c
     44   Hob/Hob.c
     45   FwVol/FwVol.c
     46   FwVol/FwVol.h
     47   Dispatcher/Dispatcher.c
     48   Dependency/Dependency.c
     49   Dependency/Dependency.h
     50   BootMode/BootMode.c
     51   CpuIo/CpuIo.c
     52   PciCfg2/PciCfg2.c
     53   PeiMain.h
     54 
     55 [Packages]
     56   MdePkg/MdePkg.dec
     57   MdeModulePkg/MdeModulePkg.dec
     58 
     59 [LibraryClasses]
     60   BaseMemoryLib
     61   PeCoffGetEntryPointLib
     62   ReportStatusCodeLib
     63   PeiServicesLib
     64   PerformanceLib
     65   HobLib
     66   BaseLib
     67   PeiCoreEntryPoint
     68   DebugLib
     69   MemoryAllocationLib
     70   CacheMaintenanceLib
     71   PeCoffLib
     72   PeiServicesTablePointerLib
     73   PcdLib
     74 
     75 [Guids]
     76   gPeiAprioriFileNameGuid       ## SOMETIMES_CONSUMES   ## File

     77   ## PRODUCES   ## UNDEFINED # Install ppi

     78   ## CONSUMES   ## UNDEFINED # Locate ppi

     79   gEfiFirmwareFileSystem2Guid
     80   ## PRODUCES   ## UNDEFINED # Install ppi

     81   ## CONSUMES   ## UNDEFINED # Locate ppi

     82   ## CONSUMES   ## GUID      # Used to compare with FV's file system guid and get the FV's file system format

     83   gEfiFirmwareFileSystem3Guid
     84   
     85 [Ppis]
     86   gEfiPeiStatusCodePpiGuid                      ## SOMETIMES_CONSUMES # PeiReportStatusService is not ready if this PPI doesn't exist

     87   gEfiPeiResetPpiGuid                           ## SOMETIMES_CONSUMES # PeiResetService is not ready if this PPI doesn't exist 

     88   gEfiDxeIplPpiGuid                             ## CONSUMES

     89   gEfiPeiMemoryDiscoveredPpiGuid                ## PRODUCES

     90   gEfiPeiDecompressPpiGuid                      ## SOMETIMES_CONSUMES

     91   ## NOTIFY

     92   ## SOMETIMES_PRODUCES # Produce FvInfoPpi if the encapsulated FvImage is found

     93   gEfiPeiFirmwareVolumeInfoPpiGuid
     94   ## NOTIFY

     95   ## SOMETIMES_PRODUCES # Produce FvInfoPpi2 if the encapsulated FvImage is found

     96   gEfiPeiFirmwareVolumeInfo2PpiGuid
     97   ## PRODUCES

     98   ## CONSUMES

     99   gEfiPeiLoadFilePpiGuid
    100   gEfiPeiSecurity2PpiGuid                       ## NOTIFY

    101   gEfiTemporaryRamSupportPpiGuid                ## SOMETIMES_CONSUMES

    102   gEfiTemporaryRamDonePpiGuid                   ## SOMETIMES_CONSUMES

    103   gEfiPeiReset2PpiGuid                          ## SOMETIMES_CONSUMES

    104 
    105 [Pcd]  
    106   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported                   ## CONSUMES

    107   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv                     ## CONSUMES

    108   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPpiSupported                  ## CONSUMES

    109   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeiStackSize                  ## CONSUMES

    110   gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreImageLoaderSearchTeSectionFirst  ## CONSUMES

    111   gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport           ## CONSUMES

    112   gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressPeiCodePageNumber         ## SOMETIMES_CONSUMES

    113   gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressBootTimeCodePageNumber    ## SOMETIMES_CONSUMES

    114   gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressRuntimeCodePageNumber     ## SOMETIMES_CONSUMES

    115   gEfiMdeModulePkgTokenSpaceGuid.PcdLoadModuleAtFixAddressEnable            ## CONSUMES

    116   gEfiMdeModulePkgTokenSpaceGuid.PcdShadowPeimOnS3Boot                      ## CONSUMES 

    117   gEfiMdeModulePkgTokenSpaceGuid.PcdShadowPeimOnBoot                        ## CONSUMES 

    118 
    119 # [BootMode]

    120 # S3_RESUME             ## SOMETIMES_CONSUMES

    121 
    122 # [Hob]

    123 # PHIT                  ## PRODUCES

    124 # RESOURCE_DESCRIPTOR   ## SOMETIMES_PRODUCES

    125 # RESOURCE_DESCRIPTOR   ## SOMETIMES_CONSUMES

    126 # MEMORY_ALLOCATION     ## SOMETIMES_CONSUMES

    127 # FIRMWARE_VOLUME       ## SOMETIMES_PRODUCES

    128 # FIRMWARE_VOLUME       ## SOMETIMES_CONSUMES

    129 # MEMORY_ALLOCATION     ## SOMETIMES_PRODUCES

    130 # MEMORY_ALLOCATION     ## PRODUCES # MEMORY_ALLOCATION_STACK

    131 # UNDEFINED             ## PRODUCES # MEMORY_POOL

    132 
    133 [UserExtensions.TianoCore."ExtraFiles"]
    134   PeiCoreExtra.uni
    135