[edk2] [PATCH v3 01/10] BaseTools: Tools change to support PI v1.5 Specification.

Supreeth Venkatesh posted 10 patches 8 years ago
There is a newer version of this series
[edk2] [PATCH v3 01/10] BaseTools: Tools change to support PI v1.5 Specification.
Posted by Supreeth Venkatesh 8 years ago
PI specification v1.5 defines new firmware volume file types.

This patch adds the new file type EFI_FV_FILETYPE_SMM_STANDALONE and
EFI_FV_FILETYPE_SMM_CORE_STANDALONE in GenFfs tool.
*_SMM_* regex instead of *_MM_* is used to preserve
backwards compatibility.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
Signed-off-by: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
---
 BaseTools/Source/C/GenFfs/GenFfs.c                 | 8 ++++++--
 BaseTools/Source/C/Include/Common/PiFirmwareFile.h | 2 ++
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/BaseTools/Source/C/GenFfs/GenFfs.c b/BaseTools/Source/C/GenFfs/GenFfs.c
index c5d657b..c394b8b 100644
--- a/BaseTools/Source/C/GenFfs/GenFfs.c
+++ b/BaseTools/Source/C/GenFfs/GenFfs.c
@@ -43,8 +43,10 @@ STATIC CHAR8 *mFfsFileType[] = {
   "EFI_FV_FILETYPE_SMM",                  // 0x0A
   "EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE",// 0x0B
   "EFI_FV_FILETYPE_COMBINED_SMM_DXE",     // 0x0C
-  "EFI_FV_FILETYPE_SMM_CORE"              // 0x0D
- };
+  "EFI_FV_FILETYPE_SMM_CORE",             // 0x0D
+  "EFI_FV_FILETYPE_SMM_STANDALONE",       // 0x0E
+  "EFI_FV_FILETYPE_SMM_CORE_STANDALONE"   // 0x0F
+};
 
 STATIC CHAR8 *mAlignName[] = {
   "1", "2", "4", "8", "16", "32", "64", "128", "256", "512",
@@ -130,6 +132,8 @@ Returns:
                         EFI_FV_FILETYPE_DRIVER, EFI_FV_FILETYPE_APPLICATION,\n\
                         EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER,\n\
                         EFI_FV_FILETYPE_SMM, EFI_FV_FILETYPE_SMM_CORE,\n\
+                        EFI_FV_FILETYPE_SMM_STANDALONE,\n\
+                        EFI_FV_FILETYPE_SMM_CORE_STANDALONE,\n\
                         EFI_FV_FILETYPE_COMBINED_SMM_DXE, \n\
                         EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE.\n");
   fprintf (stdout, "  -g FileGuid, --fileguid FileGuid\n\
diff --git a/BaseTools/Source/C/Include/Common/PiFirmwareFile.h b/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
index 2984860..8b40ec2 100644
--- a/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
+++ b/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
@@ -52,6 +52,8 @@ typedef UINT8 EFI_FFS_FILE_STATE;
 #define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
 #define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
 #define EFI_FV_FILETYPE_SMM_CORE              0x0D
+#define EFI_FV_FILETYPE_SMM_STANDALONE        0x0E
+#define EFI_FV_FILETYPE_SMM_CORE_STANDALONE   0x0F
 #define EFI_FV_FILETYPE_OEM_MIN               0xc0
 #define EFI_FV_FILETYPE_OEM_MAX               0xdf
 #define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
-- 
2.7.4

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH v3 01/10] BaseTools: Tools change to support PI v1.5 Specification.
Posted by Gao, Liming 8 years ago
Supreeth:
  I just realize MM_STANDALONE and MM_CORE_STANDALONE are new feature. They have no compatibility issue. We can directly define them with MM prefix instead of SMM prefix. So, for new added FV file type MM_STANDALONE and MM_CORE_STANDALONE, I prefer to use the same definition with PI spec. For new module type MM_STANDALONE and MM_CORE_STANDALONE, I suggest to update BaseTools to support them only. 

  For the existing SMM_CORE, DXE_SMM_DRIVER, they will still be kept for compatibility. 

Thanks
Liming
>-----Original Message-----
>From: Supreeth Venkatesh [mailto:supreeth.venkatesh@arm.com]
>Sent: Friday, June 23, 2017 3:54 AM
>To: edk2-devel@lists.01.org
>Cc: leif.lindholm@linaro.org; Kinney, Michael D
><michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>;
>achin.gupta@arm.com; supreeth.venkatesh@arm.com; felixp@ami.com;
>jbrasen@qti.qualcomm.com; jonathan.zhang@cavium.com; Yao, Jiewen
><jiewen.yao@intel.com>
>Subject: [PATCH v3 01/10] BaseTools: Tools change to support PI v1.5
>Specification.
>
>PI specification v1.5 defines new firmware volume file types.
>
>This patch adds the new file type EFI_FV_FILETYPE_SMM_STANDALONE and
>EFI_FV_FILETYPE_SMM_CORE_STANDALONE in GenFfs tool.
>*_SMM_* regex instead of *_MM_* is used to preserve
>backwards compatibility.
>
>Contributed-under: TianoCore Contribution Agreement 1.0
>Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
>Signed-off-by: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
>---
> BaseTools/Source/C/GenFfs/GenFfs.c                 | 8 ++++++--
> BaseTools/Source/C/Include/Common/PiFirmwareFile.h | 2 ++
> 2 files changed, 8 insertions(+), 2 deletions(-)
>
>diff --git a/BaseTools/Source/C/GenFfs/GenFfs.c
>b/BaseTools/Source/C/GenFfs/GenFfs.c
>index c5d657b..c394b8b 100644
>--- a/BaseTools/Source/C/GenFfs/GenFfs.c
>+++ b/BaseTools/Source/C/GenFfs/GenFfs.c
>@@ -43,8 +43,10 @@ STATIC CHAR8 *mFfsFileType[] = {
>   "EFI_FV_FILETYPE_SMM",                  // 0x0A
>   "EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE",// 0x0B
>   "EFI_FV_FILETYPE_COMBINED_SMM_DXE",     // 0x0C
>-  "EFI_FV_FILETYPE_SMM_CORE"              // 0x0D
>- };
>+  "EFI_FV_FILETYPE_SMM_CORE",             // 0x0D
>+  "EFI_FV_FILETYPE_SMM_STANDALONE",       // 0x0E
>+  "EFI_FV_FILETYPE_SMM_CORE_STANDALONE"   // 0x0F
>+};
>
> STATIC CHAR8 *mAlignName[] = {
>   "1", "2", "4", "8", "16", "32", "64", "128", "256", "512",
>@@ -130,6 +132,8 @@ Returns:
>                         EFI_FV_FILETYPE_DRIVER, EFI_FV_FILETYPE_APPLICATION,\n\
>                         EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER,\n\
>                         EFI_FV_FILETYPE_SMM, EFI_FV_FILETYPE_SMM_CORE,\n\
>+                        EFI_FV_FILETYPE_SMM_STANDALONE,\n\
>+                        EFI_FV_FILETYPE_SMM_CORE_STANDALONE,\n\
>                         EFI_FV_FILETYPE_COMBINED_SMM_DXE, \n\
>                         EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE.\n");
>   fprintf (stdout, "  -g FileGuid, --fileguid FileGuid\n\
>diff --git a/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>b/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>index 2984860..8b40ec2 100644
>--- a/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>+++ b/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>@@ -52,6 +52,8 @@ typedef UINT8 EFI_FFS_FILE_STATE;
> #define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
> #define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
> #define EFI_FV_FILETYPE_SMM_CORE              0x0D
>+#define EFI_FV_FILETYPE_SMM_STANDALONE        0x0E
>+#define EFI_FV_FILETYPE_SMM_CORE_STANDALONE   0x0F
> #define EFI_FV_FILETYPE_OEM_MIN               0xc0
> #define EFI_FV_FILETYPE_OEM_MAX               0xdf
> #define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
>--
>2.7.4

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [PATCH v3 01/10] BaseTools: Tools change to support PI v1.5 Specification.
Posted by Supreeth Venkatesh 8 years ago
Liming,

No issue. I will update v4 to indicate Name change.

Supreeth

-----Original Message-----
From: Gao, Liming [mailto:liming.gao@intel.com]
Sent: Thursday, June 22, 2017 10:23 PM
To: Supreeth Venkatesh <Supreeth.Venkatesh@arm.com>; edk2-devel@lists.01.org
Cc: leif.lindholm@linaro.org; Kinney, Michael D <michael.d.kinney@intel.com>; Achin Gupta <Achin.Gupta@arm.com>; Felixp@ami.com; jbrasen@qti.qualcomm.com; jonathan.zhang@cavium.com; Yao, Jiewen <jiewen.yao@intel.com>
Subject: RE: [PATCH v3 01/10] BaseTools: Tools change to support PI v1.5 Specification.

Supreeth:
  I just realize MM_STANDALONE and MM_CORE_STANDALONE are new feature. They have no compatibility issue. We can directly define them with MM prefix instead of SMM prefix. So, for new added FV file type MM_STANDALONE and MM_CORE_STANDALONE, I prefer to use the same definition with PI spec. For new module type MM_STANDALONE and MM_CORE_STANDALONE, I suggest to update BaseTools to support them only.

  For the existing SMM_CORE, DXE_SMM_DRIVER, they will still be kept for compatibility.

Thanks
Liming
>-----Original Message-----
>From: Supreeth Venkatesh [mailto:supreeth.venkatesh@arm.com]
>Sent: Friday, June 23, 2017 3:54 AM
>To: edk2-devel@lists.01.org
>Cc: leif.lindholm@linaro.org; Kinney, Michael D
><michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>;
>achin.gupta@arm.com; supreeth.venkatesh@arm.com; felixp@ami.com;
>jbrasen@qti.qualcomm.com; jonathan.zhang@cavium.com; Yao, Jiewen
><jiewen.yao@intel.com>
>Subject: [PATCH v3 01/10] BaseTools: Tools change to support PI v1.5
>Specification.
>
>PI specification v1.5 defines new firmware volume file types.
>
>This patch adds the new file type EFI_FV_FILETYPE_SMM_STANDALONE and
>EFI_FV_FILETYPE_SMM_CORE_STANDALONE in GenFfs tool.
>*_SMM_* regex instead of *_MM_* is used to preserve backwards
>compatibility.
>
>Contributed-under: TianoCore Contribution Agreement 1.0
>Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
>Signed-off-by: Supreeth Venkatesh <supreeth.venkatesh@arm.com>
>---
> BaseTools/Source/C/GenFfs/GenFfs.c                 | 8 ++++++--
> BaseTools/Source/C/Include/Common/PiFirmwareFile.h | 2 ++
> 2 files changed, 8 insertions(+), 2 deletions(-)
>
>diff --git a/BaseTools/Source/C/GenFfs/GenFfs.c
>b/BaseTools/Source/C/GenFfs/GenFfs.c
>index c5d657b..c394b8b 100644
>--- a/BaseTools/Source/C/GenFfs/GenFfs.c
>+++ b/BaseTools/Source/C/GenFfs/GenFfs.c
>@@ -43,8 +43,10 @@ STATIC CHAR8 *mFfsFileType[] = {
>   "EFI_FV_FILETYPE_SMM",                  // 0x0A
>   "EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE",// 0x0B
>   "EFI_FV_FILETYPE_COMBINED_SMM_DXE",     // 0x0C
>-  "EFI_FV_FILETYPE_SMM_CORE"              // 0x0D
>- };
>+  "EFI_FV_FILETYPE_SMM_CORE",             // 0x0D
>+  "EFI_FV_FILETYPE_SMM_STANDALONE",       // 0x0E
>+  "EFI_FV_FILETYPE_SMM_CORE_STANDALONE"   // 0x0F
>+};
>
> STATIC CHAR8 *mAlignName[] = {
>   "1", "2", "4", "8", "16", "32", "64", "128", "256", "512", @@ -130,6
>+132,8 @@ Returns:
>                         EFI_FV_FILETYPE_DRIVER, EFI_FV_FILETYPE_APPLICATION,\n\
>                         EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER,\n\
>                         EFI_FV_FILETYPE_SMM,
>EFI_FV_FILETYPE_SMM_CORE,\n\
>+                        EFI_FV_FILETYPE_SMM_STANDALONE,\n\
>+                        EFI_FV_FILETYPE_SMM_CORE_STANDALONE,\n\
>                         EFI_FV_FILETYPE_COMBINED_SMM_DXE, \n\
>                         EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE.\n");
>   fprintf (stdout, "  -g FileGuid, --fileguid FileGuid\n\ diff --git
>a/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>b/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>index 2984860..8b40ec2 100644
>--- a/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>+++ b/BaseTools/Source/C/Include/Common/PiFirmwareFile.h
>@@ -52,6 +52,8 @@ typedef UINT8 EFI_FFS_FILE_STATE;  #define
>EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B
> #define EFI_FV_FILETYPE_COMBINED_SMM_DXE      0x0C
> #define EFI_FV_FILETYPE_SMM_CORE              0x0D
>+#define EFI_FV_FILETYPE_SMM_STANDALONE        0x0E
>+#define EFI_FV_FILETYPE_SMM_CORE_STANDALONE   0x0F
> #define EFI_FV_FILETYPE_OEM_MIN               0xc0
> #define EFI_FV_FILETYPE_OEM_MAX               0xdf
> #define EFI_FV_FILETYPE_DEBUG_MIN             0xe0
>--
>2.7.4

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel