]>
Commit | Line | Data |
---|---|---|
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 | |
18 | from CommonDataClass.FdfClass import FDClassObject\r | |
8bb63e37 | 19 | from Common.DataType import *\r |
30fdf114 LG |
20 | \r |
21 | ## generate FFS\r | |
22 | #\r | |
23 | #\r | |
24 | class 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 |