Check In tool source code based on Build tool project revision r1655.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8964 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
81
BaseTools/Source/Python/GenFds/Ffs.py
Normal file
81
BaseTools/Source/Python/GenFds/Ffs.py
Normal file
@ -0,0 +1,81 @@
|
||||
## @file
|
||||
# process FFS generation
|
||||
#
|
||||
# Copyright (c) 2007, Intel Corporation
|
||||
#
|
||||
# All rights reserved. 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_DRIVER' : 'EFI_FV_FILETYPE_SMM',
|
||||
'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_DXE_COMBO' : 'EFI_FV_FILETYPE_COMBINED_SMM_DXE',
|
||||
'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',
|
||||
'FV_IMAGE' : 'fv.sec',
|
||||
'COMPRESS' : '.com',
|
||||
'GUIDED' : '.guided',
|
||||
'PEI_DEPEX' : '.dpx',
|
||||
'SMM_DEPEX' : '.smm'
|
||||
}
|
||||
|
||||
## The constructor
|
||||
#
|
||||
# @param self The object pointer
|
||||
#
|
||||
def __init__(self):
|
||||
FfsClassObject.__init__(self)
|
Reference in New Issue
Block a user