Signed-off-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13178 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			81 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| ## @file
 | |
| # process FFS generation
 | |
| #
 | |
| #  Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>
 | |
| #
 | |
| #  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.
 | |
| #
 | |
| 
 | |
| ##
 | |
| # Import Modules
 | |
| #
 | |
| from CommonDataClass.FdfClass import FDClassObject
 | |
| 
 | |
| ## generate FFS
 | |
| #
 | |
| #
 | |
| class Ffs(FDClassObject):
 | |
|     
 | |
|     # mapping between MODULE type in FDF (from INF) and file type for GenFfs
 | |
|     ModuleTypeToFileType = {
 | |
|         'SEC'               : 'EFI_FV_FILETYPE_SECURITY_CORE',
 | |
|         'PEI_CORE'          : 'EFI_FV_FILETYPE_PEI_CORE',
 | |
|         'PEIM'              : 'EFI_FV_FILETYPE_PEIM',
 | |
|         'DXE_CORE'          : 'EFI_FV_FILETYPE_DXE_CORE',
 | |
|         'DXE_DRIVER'        : 'EFI_FV_FILETYPE_DRIVER',
 | |
|         'DXE_SAL_DRIVER'    : 'EFI_FV_FILETYPE_DRIVER',
 | |
|         'DXE_SMM_DRIVER'    : 'EFI_FV_FILETYPE_DRIVER',
 | |
|         'DXE_RUNTIME_DRIVER': 'EFI_FV_FILETYPE_DRIVER',
 | |
|         'UEFI_DRIVER'       : 'EFI_FV_FILETYPE_DRIVER',
 | |
|         'UEFI_APPLICATION'  : 'EFI_FV_FILETYPE_APPLICATION',
 | |
|         'SMM_CORE'          : 'EFI_FV_FILETYPE_SMM_CORE'
 | |
|     }
 | |
|     
 | |
|     # mapping between FILE type in FDF and file type for GenFfs
 | |
|     FdfFvFileTypeToFileType = {
 | |
|         'SEC'               : 'EFI_FV_FILETYPE_SECURITY_CORE',
 | |
|         'PEI_CORE'          : 'EFI_FV_FILETYPE_PEI_CORE',
 | |
|         'PEIM'              : 'EFI_FV_FILETYPE_PEIM',
 | |
|         'DXE_CORE'          : 'EFI_FV_FILETYPE_DXE_CORE',
 | |
|         'FREEFORM'          : 'EFI_FV_FILETYPE_FREEFORM',
 | |
|         'DRIVER'            : 'EFI_FV_FILETYPE_DRIVER',
 | |
|         'APPLICATION'       : 'EFI_FV_FILETYPE_APPLICATION',
 | |
|         'FV_IMAGE'          : 'EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE',
 | |
|         'RAW'               : 'EFI_FV_FILETYPE_RAW',
 | |
|         'PEI_DXE_COMBO'     : 'EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER',
 | |
|         'SMM'               : 'EFI_FV_FILETYPE_SMM',
 | |
|         'SMM_CORE'          : 'EFI_FV_FILETYPE_SMM_CORE'
 | |
|     }
 | |
|     
 | |
|     # mapping between section type in FDF and file suffix
 | |
|     SectionSuffix = {
 | |
|         'PE32'                 : '.pe32',
 | |
|         'PIC'                  : '.pic',
 | |
|         'TE'                   : '.te',
 | |
|         'DXE_DEPEX'            : '.dpx',
 | |
|         'VERSION'              : '.ver',
 | |
|         'UI'                   : '.ui',
 | |
|         'COMPAT16'             : '.com16',
 | |
|         'RAW'                  : '.raw',
 | |
|         'FREEFORM_SUBTYPE_GUID': '.guid',
 | |
|         'SUBTYPE_GUID'         : '.guid',        
 | |
|         'FV_IMAGE'             : 'fv.sec',
 | |
|         'COMPRESS'             : '.com',
 | |
|         'GUIDED'               : '.guided',
 | |
|         'PEI_DEPEX'            : '.dpx',
 | |
|         'SMM_DEPEX'            : '.dpx'
 | |
|     }
 | |
|     
 | |
|     ## The constructor
 | |
|     #
 | |
|     #   @param  self        The object pointer
 | |
|     #
 | |
|     def __init__(self):
 | |
|         FfsClassObject.__init__(self)
 |