]>
Commit | Line | Data |
---|---|---|
1 | ## @file\r | |
2 | # process FFS generation\r | |
3 | #\r | |
4 | # Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>\r | |
5 | #\r | |
6 | # This program and the accompanying materials\r | |
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 | |
19 | \r | |
20 | ## generate FFS\r | |
21 | #\r | |
22 | #\r | |
23 | class Ffs(FDClassObject):\r | |
24 | \r | |
25 | # mapping between MODULE type in FDF (from INF) and file type for GenFfs\r | |
26 | ModuleTypeToFileType = {\r | |
27 | 'SEC' : 'EFI_FV_FILETYPE_SECURITY_CORE',\r | |
28 | 'PEI_CORE' : 'EFI_FV_FILETYPE_PEI_CORE',\r | |
29 | 'PEIM' : 'EFI_FV_FILETYPE_PEIM',\r | |
30 | 'DXE_CORE' : 'EFI_FV_FILETYPE_DXE_CORE',\r | |
31 | 'DXE_DRIVER' : 'EFI_FV_FILETYPE_DRIVER',\r | |
32 | 'DXE_SAL_DRIVER' : 'EFI_FV_FILETYPE_DRIVER',\r | |
33 | 'DXE_SMM_DRIVER' : 'EFI_FV_FILETYPE_DRIVER',\r | |
34 | 'DXE_RUNTIME_DRIVER': 'EFI_FV_FILETYPE_DRIVER',\r | |
35 | 'UEFI_DRIVER' : 'EFI_FV_FILETYPE_DRIVER',\r | |
36 | 'UEFI_APPLICATION' : 'EFI_FV_FILETYPE_APPLICATION',\r | |
37 | 'SMM_CORE' : 'EFI_FV_FILETYPE_SMM_CORE'\r | |
38 | }\r | |
39 | \r | |
40 | # mapping between FILE type in FDF and file type for GenFfs\r | |
41 | FdfFvFileTypeToFileType = {\r | |
42 | 'SEC' : 'EFI_FV_FILETYPE_SECURITY_CORE',\r | |
43 | 'PEI_CORE' : 'EFI_FV_FILETYPE_PEI_CORE',\r | |
44 | 'PEIM' : 'EFI_FV_FILETYPE_PEIM',\r | |
45 | 'DXE_CORE' : 'EFI_FV_FILETYPE_DXE_CORE',\r | |
46 | 'FREEFORM' : 'EFI_FV_FILETYPE_FREEFORM',\r | |
47 | 'DRIVER' : 'EFI_FV_FILETYPE_DRIVER',\r | |
48 | 'APPLICATION' : 'EFI_FV_FILETYPE_APPLICATION',\r | |
49 | 'FV_IMAGE' : 'EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE',\r | |
50 | 'RAW' : 'EFI_FV_FILETYPE_RAW',\r | |
51 | 'PEI_DXE_COMBO' : 'EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER',\r | |
52 | 'SMM' : 'EFI_FV_FILETYPE_SMM',\r | |
53 | 'SMM_CORE' : 'EFI_FV_FILETYPE_SMM_CORE'\r | |
54 | }\r | |
55 | \r | |
56 | # mapping between section type in FDF and file suffix\r | |
57 | SectionSuffix = {\r | |
58 | 'PE32' : '.pe32',\r | |
59 | 'PIC' : '.pic',\r | |
60 | 'TE' : '.te',\r | |
61 | 'DXE_DEPEX' : '.dpx',\r | |
62 | 'VERSION' : '.ver',\r | |
63 | 'UI' : '.ui',\r | |
64 | 'COMPAT16' : '.com16',\r | |
65 | 'RAW' : '.raw',\r | |
66 | 'FREEFORM_SUBTYPE_GUID': '.guid',\r | |
67 | 'SUBTYPE_GUID' : '.guid', \r | |
68 | 'FV_IMAGE' : 'fv.sec',\r | |
69 | 'COMPRESS' : '.com',\r | |
70 | 'GUIDED' : '.guided',\r | |
71 | 'PEI_DEPEX' : '.dpx',\r | |
72 | 'SMM_DEPEX' : '.dpx'\r | |
73 | }\r | |
74 | \r | |
75 | ## The constructor\r | |
76 | #\r | |
77 | # @param self The object pointer\r | |
78 | #\r | |
79 | def __init__(self):\r | |
80 | FfsClassObject.__init__(self)\r |