MdePkg/Include: Add management mode FV file type and depex.
authorSupreeth Venkatesh <supreeth.venkatesh@arm.com>
Thu, 8 Feb 2018 20:25:16 +0000 (04:25 +0800)
committerLiming Gao <liming.gao@intel.com>
Fri, 9 Feb 2018 06:41:03 +0000 (14:41 +0800)
As per PI specification v1.6,
As per section 2.1.4.1,
The following file types exist:
Table 3. Defined File Types
Name                                   Value
EFI_FV_FILETYPE_RAW                    0x01
EFI_FV_FILETYPE_FREEFORM               0x02
EFI_FV_FILETYPE_SECURITY_CORE          0x03
EFI_FV_FILETYPE_PEI_CORE               0x04
EFI_FV_FILETYPE_DXE_CORE               0x05
EFI_FV_FILETYPE_PEIM                   0x06
EFI_FV_FILETYPE_DRIVER                 0x07
EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER   0x08
EFI_FV_FILETYPE_APPLICATION            0x09
EFI_FV_FILETYPE_MM                     0x0A
EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE  0x0B
EFI_FV_FILETYPE_COMBINED_MM_DXE        0x0C
EFI_FV_FILETYPE_MM_CORE                0x0D
EFI_FV_FILETYPE_MM_STANDALONE          0x0E
EFI_FV_FILETYPE_MM_CORE_STANDALONE     0x0F

The following new section type is added:
EFI_SECTION_MM_DEPEX

This patch adds the management mode FV file type and depex.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Achin Gupta <achin.gupta@arm.com>
Signed-off-by: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
MdePkg/Include/Pi/PiFirmwareFile.h

index b982c9e..16c007f 100644 (file)
@@ -71,10 +71,15 @@ typedef UINT8 EFI_FFS_FILE_STATE;
 #define EFI_FV_FILETYPE_DRIVER                0x07\r
 #define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER  0x08\r
 #define EFI_FV_FILETYPE_APPLICATION           0x09\r
-#define EFI_FV_FILETYPE_SMM                   0x0A\r
+#define EFI_FV_FILETYPE_MM                    0x0A\r
+#define EFI_FV_FILETYPE_SMM                   EFI_FV_FILETYPE_MM\r
 #define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B\r
-#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C\r
-#define EFI_FV_FILETYPE_SMM_CORE              0x0D\r
+#define EFI_FV_FILETYPE_COMBINED_MM_DXE       0x0C\r
+#define EFI_FV_FILETYPE_COMBINED_SMM_DXE      EFI_FV_FILETYPE_COMBINED_MM_DXE\r
+#define EFI_FV_FILETYPE_MM_CORE               0x0D\r
+#define EFI_FV_FILETYPE_SMM_CORE              EFI_FV_FILETYPE_MM_CORE\r
+#define EFI_FV_FILETYPE_MM_STANDALONE         0x0E\r
+#define EFI_FV_FILETYPE_MM_CORE_STANDALONE    0x0F\r
 #define EFI_FV_FILETYPE_OEM_MIN               0xc0\r
 #define EFI_FV_FILETYPE_OEM_MAX               0xdf\r
 #define EFI_FV_FILETYPE_DEBUG_MIN             0xe0\r
@@ -217,7 +222,8 @@ typedef UINT8 EFI_SECTION_TYPE;
 #define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18\r
 #define EFI_SECTION_RAW                   0x19\r
 #define EFI_SECTION_PEI_DEPEX             0x1B\r
-#define EFI_SECTION_SMM_DEPEX             0x1C\r
+#define EFI_SECTION_MM_DEPEX              0x1C\r
+#define EFI_SECTION_SMM_DEPEX             EFI_SECTION_MM_DEPEX\r
 \r
 ///\r
 /// Common section header.\r