Home | History | Annotate | Download | only in EmbeddedPkg
      1 # This is Ebl FDF file
      2 #
      3 # Copyright (c) 2008, Intel Corporation. All rights reserved.<BR>
      4 #
      5 #    This program and the accompanying materials
      6 #    are licensed and made available under the terms and conditions of the BSD License
      7 #    which accompanies this distribution. The full text of the license may be found at
      8 #    http://opensource.org/licenses/bsd-license.php
      9 #
     10 #    THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     11 #    WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     12 #
     13 
     14 ################################################################################
     15 #
     16 # FV Section
     17 #
     18 # [FV] section is used to define what components or modules are placed within a flash
     19 # device file.  This section also defines order the components and modules are positioned
     20 # within the image.  The [FV] section consists of define statements, set statements and
     21 # module statements.
     22 #
     23 ################################################################################
     24 [FV.FvLoad]
     25 FvAlignment        = 16         #FV alignment and FV attributes setting.
     26 ERASE_POLARITY     = 1
     27 MEMORY_MAPPED      = TRUE
     28 STICKY_WRITE       = TRUE
     29 LOCK_CAP           = TRUE
     30 LOCK_STATUS        = TRUE
     31 WRITE_DISABLED_CAP = TRUE
     32 WRITE_ENABLED_CAP  = TRUE
     33 WRITE_STATUS       = TRUE
     34 WRITE_LOCK_CAP     = TRUE
     35 WRITE_LOCK_STATUS  = TRUE
     36 READ_DISABLED_CAP  = TRUE
     37 READ_ENABLED_CAP   = TRUE
     38 READ_STATUS        = TRUE
     39 READ_LOCK_CAP      = TRUE
     40 READ_LOCK_STATUS   = TRUE
     41 
     42 ################################################################################
     43 #
     44 # The INF statements point to module INF files, which will be placed into this FV image.
     45 # Parsing tools will scan the INF file to determine the type of component or module.
     46 # The component or module type is used to reference the standard rules
     47 # defined elsewhere in the FDF file.
     48 #
     49 # The format for INF statements is:
     50 # INF $(PathAndInfFileName)
     51 #
     52 ################################################################################
     53 INF  EmbeddedPkg/Ebl/Ebl.inf
     54 
     55 ################################################################################
     56 #
     57 # Rules are use with the [FV] section's module INF type to define
     58 # how an FFS file is created for a given INF file. The following Rule are the default
     59 # rules for the different module type. User can add the customized rules to define the
     60 # content of the FFS file.
     61 #
     62 ################################################################################
     63 
     64 
     65 ############################################################################
     66 # Example of a DXE_DRIVER FFS file with a Checksum encapsulation section   #
     67 ############################################################################
     68 #
     69 #[Rule.Common.DXE_DRIVER]
     70 #  FILE DRIVER = $(NAMED_GUID) {
     71 #    DXE_DEPEX    DXE_DEPEX               Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
     72 #    COMPRESS PI_STD {
     73 #      GUIDED {
     74 #        PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi
     75 #        UI       STRING="$(MODULE_NAME)" Optional
     76 #        VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
     77 #      }
     78 #    }
     79 #  }
     80 #
     81 ############################################################################
     82 
     83 [Rule.Common.SEC]
     84   FILE SEC = $(NAMED_GUID) {
     85     PE32     PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
     86   }
     87 
     88 [Rule.Common.PEI_CORE]
     89   FILE PEI_CORE = $(NAMED_GUID) {
     90     PE32     PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
     91     UI       STRING ="$(MODULE_NAME)" Optional
     92   }
     93 
     94 [Rule.Common.PEIM]
     95   FILE PEIM = $(NAMED_GUID) {
     96    PEI_DEPEX PEI_DEPEX Optional       $(MODULE_NAME).depex
     97    PE32      PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
     98    UI       STRING="$(MODULE_NAME)" Optional
     99   }
    100 
    101 [Rule.Common.PEIM.TIANOCOMPRESSED]
    102   FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {
    103     PEI_DEPEX PEI_DEPEX Optional       $(MODULE_NAME).depex
    104     GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {
    105       PE32      PE32                  $(INF_OUTPUT)/$(MODULE_NAME).efi
    106       UI        STRING="$(MODULE_NAME)" Optional
    107     }
    108   }
    109 
    110 [Rule.Common.DXE_CORE]
    111   FILE DXE_CORE = $(NAMED_GUID) {
    112     PE32     PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
    113     UI       STRING="$(MODULE_NAME)" Optional
    114   }
    115 
    116 [Rule.Common.UEFI_DRIVER]
    117   FILE DRIVER = $(NAMED_GUID) {
    118     DXE_DEPEX    DXE_DEPEX            Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
    119     PE32     PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
    120     UI       STRING="$(MODULE_NAME)" Optional
    121   }
    122 
    123 [Rule.Common.DXE_DRIVER]
    124   FILE DRIVER = $(NAMED_GUID) {
    125     DXE_DEPEX    DXE_DEPEX            Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
    126     PE32     PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
    127     UI       STRING="$(MODULE_NAME)" Optional
    128   }
    129 
    130 [Rule.Common.DXE_RUNTIME_DRIVER]
    131   FILE DRIVER = $(NAMED_GUID) {
    132     DXE_DEPEX    DXE_DEPEX            Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
    133     PE32     PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
    134     UI       STRING="$(MODULE_NAME)" Optional
    135   }
    136 
    137 [Rule.Common.UEFI_APPLICATION]
    138   FILE APPLICATION = $(NAMED_GUID) {
    139     PE32     PE32                     $(INF_OUTPUT)/$(MODULE_NAME).efi
    140     UI       STRING="$(MODULE_NAME)" Optional
    141   }
    142