]> git.proxmox.com Git - mirror_edk2.git/blame - BaseTools/Source/Python/GenFds/Ffs.py
BaseTools: remove redundant if comparison
[mirror_edk2.git] / BaseTools / Source / Python / GenFds / Ffs.py
CommitLineData
30fdf114
LG
1## @file\r
2# process FFS generation\r
3#\r
eece4292 4# Copyright (c) 2007-2018, Intel Corporation. All rights reserved.<BR>\r
30fdf114 5#\r
40d841f6 6# This program and the accompanying materials\r
30fdf114
LG
7# are licensed and made available under the terms and conditions of the BSD License\r
8# which accompanies this distribution. The full text of the license may be found at\r
9# http://opensource.org/licenses/bsd-license.php\r
10#\r
11# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
12# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
13#\r
14\r
15##\r
16# Import Modules\r
17#\r
18from CommonDataClass.FdfClass import FDClassObject\r
8bb63e37 19from Common.DataType import *\r
30fdf114
LG
20\r
21## generate FFS\r
22#\r
23#\r
24class Ffs(FDClassObject):\r
30fdf114
LG
25 # mapping between FILE type in FDF and file type for GenFfs\r
26 FdfFvFileTypeToFileType = {\r
8bb63e37
CJ
27 SUP_MODULE_SEC : 'EFI_FV_FILETYPE_SECURITY_CORE',\r
28 SUP_MODULE_PEI_CORE : 'EFI_FV_FILETYPE_PEI_CORE',\r
29 SUP_MODULE_PEIM : 'EFI_FV_FILETYPE_PEIM',\r
30 SUP_MODULE_DXE_CORE : 'EFI_FV_FILETYPE_DXE_CORE',\r
30fdf114
LG
31 'FREEFORM' : 'EFI_FV_FILETYPE_FREEFORM',\r
32 'DRIVER' : 'EFI_FV_FILETYPE_DRIVER',\r
33 'APPLICATION' : 'EFI_FV_FILETYPE_APPLICATION',\r
34 'FV_IMAGE' : 'EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE',\r
35 'RAW' : 'EFI_FV_FILETYPE_RAW',\r
36 'PEI_DXE_COMBO' : 'EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER',\r
30fdf114 37 'SMM' : 'EFI_FV_FILETYPE_SMM',\r
8bb63e37
CJ
38 SUP_MODULE_SMM_CORE : 'EFI_FV_FILETYPE_SMM_CORE',\r
39 SUP_MODULE_MM_STANDALONE : 'EFI_FV_FILETYPE_MM_STANDALONE',\r
40 SUP_MODULE_MM_CORE_STANDALONE : 'EFI_FV_FILETYPE_MM_CORE_STANDALONE'\r
30fdf114
LG
41 }\r
42 \r
43 # mapping between section type in FDF and file suffix\r
44 SectionSuffix = {\r
91fa33ee
CJ
45 BINARY_FILE_TYPE_PE32 : '.pe32',\r
46 BINARY_FILE_TYPE_PIC : '.pic',\r
47 BINARY_FILE_TYPE_TE : '.te',\r
48 BINARY_FILE_TYPE_DXE_DEPEX : '.dpx',\r
30fdf114 49 'VERSION' : '.ver',\r
91fa33ee 50 BINARY_FILE_TYPE_UI : '.ui',\r
30fdf114
LG
51 'COMPAT16' : '.com16',\r
52 'RAW' : '.raw',\r
53 'FREEFORM_SUBTYPE_GUID': '.guid',\r
64b2609f 54 'SUBTYPE_GUID' : '.guid', \r
30fdf114
LG
55 'FV_IMAGE' : 'fv.sec',\r
56 'COMPRESS' : '.com',\r
57 'GUIDED' : '.guided',\r
91fa33ee
CJ
58 BINARY_FILE_TYPE_PEI_DEPEX : '.dpx',\r
59 BINARY_FILE_TYPE_SMM_DEPEX : '.dpx'\r
30fdf114
LG
60 }\r
61 \r
62 ## The constructor\r
63 #\r
64 # @param self The object pointer\r
65 #\r
66 def __init__(self):\r
67 FfsClassObject.__init__(self)\r