REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4621

1)Refer to FIT spec change, add a new entry in FIT table -
FSP Boot Manifest(Type 0xD) to store the location of FBM.
2)We found that 0xD was occupied by FIT_TABLE_TYPE_BIOS_DATA_AREA.
But all FIT specs in archive show record 0xD as reserved.After
confirming with architect,we will use 0xD for FBM and update
FitGen.c accordingly.

Signed-off-by: Liqi Liu <liqi....@intel.com>
Cc: Chen Christine <yuwei.c...@intel.com>
Cc: Feng Bob C <bob.c.f...@intel.com>
Cc: Chagnanty Rangasai V <rangasai.v.chaga...@intel.com>
Cc: Liming Gao <gaolim...@byosoft.com.cn>
---
 .../IndustryStandard/FirmwareInterfaceTable.h    |  1 +
 Silicon/Intel/Tools/FitGen/FitGen.c              | 16 ++++++++--------
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git 
a/Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/FirmwareInterfaceTable.h
 
b/Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/FirmwareInterfaceTable.h
index f65779eb3778..27d83f5f72ea 100644
--- 
a/Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/FirmwareInterfaceTable.h
+++ 
b/Silicon/Intel/IntelSiliconPkg/Include/IndustryStandard/FirmwareInterfaceTable.h
@@ -24,6 +24,7 @@
 #define FIT_TYPE_0A_TXT_POLICY              0x0A
 #define FIT_TYPE_0B_KEY_MANIFEST            0x0B
 #define FIT_TYPE_0C_BOOT_POLICY_MANIFEST    0x0C
+#define FIT_TYPE_0D_FSP_BOOT_MANIFEST       0x0D
 #define FIT_TYPE_10_CSE_SECURE_BOOT         0x10
 #define FIT_TYPE_2D_TXTSX_POLICY            0x2D
 #define FIT_TYPE_2F_JMP_DEBUG_POLICY        0x2F
diff --git a/Silicon/Intel/Tools/FitGen/FitGen.c 
b/Silicon/Intel/Tools/FitGen/FitGen.c
index 16c8b9b026f5..055ffd4cf8b9 100644
--- a/Silicon/Intel/Tools/FitGen/FitGen.c
+++ b/Silicon/Intel/Tools/FitGen/FitGen.c
@@ -285,7 +285,7 @@ typedef struct {
 #define FIT_TABLE_TYPE_TXT_POLICY                  10
 #define FIT_TABLE_TYPE_KEY_MANIFEST                11
 #define FIT_TABLE_TYPE_BOOT_POLICY_MANIFEST        12
-#define FIT_TABLE_TYPE_BIOS_DATA_AREA              13
+#define FIT_TABLE_TYPE_FSP_BOOT_MANIFEST           13
 #define FIT_TABLE_TYPE_CSE_SECURE_BOOT             16
 #define FIT_TABLE_SUBTYPE_FIT_PATCH_MANIFEST       12
 #define FIT_TABLE_SUBTYPE_ACM_MANIFEST             13
@@ -1444,7 +1444,7 @@ GetFitEntryNumber (
         case FIT_TABLE_TYPE_TXT_POLICY:
         case FIT_TABLE_TYPE_KEY_MANIFEST:
         case FIT_TABLE_TYPE_BOOT_POLICY_MANIFEST:
-        case FIT_TABLE_TYPE_BIOS_DATA_AREA:
+        case FIT_TABLE_TYPE_FSP_BOOT_MANIFEST:
         case FIT_TABLE_TYPE_CSE_SECURE_BOOT:
         default :
           if (BiosInfoStruct[BiosInfoIndex].Version != 0) {
@@ -2126,7 +2126,7 @@ GetFitEntryNumber (
     if ((gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_POLICY) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_KEY_MANIFEST) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BOOT_POLICY_MANIFEST) ||
-        (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_DATA_AREA) ||
+        (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_FSP_BOOT_MANIFEST) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_CSE_SECURE_BOOT) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_PROVISION_TABLE) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_BOOT_IMAGE_MANIFEST) ||
@@ -2311,7 +2311,7 @@ GetFreeSpaceForFit (
       if ((gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_POLICY) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_KEY_MANIFEST) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BOOT_POLICY_MANIFEST) ||
-          (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_DATA_AREA) ||
+          (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_FSP_BOOT_MANIFEST) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_CSE_SECURE_BOOT) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_PROVISION_TABLE) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_BOOT_IMAGE_MANIFEST) ||
@@ -2326,7 +2326,7 @@ GetFreeSpaceForFit (
       if ((gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_POLICY) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_KEY_MANIFEST) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BOOT_POLICY_MANIFEST) ||
-          (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_DATA_AREA) ||
+          (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_FSP_BOOT_MANIFEST) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_CSE_SECURE_BOOT) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_PROVISION_TABLE) ||
           (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_BOOT_IMAGE_MANIFEST) ||
@@ -2364,7 +2364,7 @@ GetFreeSpaceForFit (
     if ((gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_POLICY) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_KEY_MANIFEST) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BOOT_POLICY_MANIFEST) ||
-        (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_BIOS_DATA_AREA) ||
+        (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_FSP_BOOT_MANIFEST) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_CSE_SECURE_BOOT) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_PROVISION_TABLE) ||
         (gFitTableContext.OptionalModule[Index].Type == 
FIT_TABLE_TYPE_VAB_BOOT_IMAGE_MANIFEST) ||
@@ -2458,7 +2458,7 @@ CHAR8 *mFitTypeStr[] = {
   "TXT_POLICY ",
   "KEYMANIFEST",
   "BP_MANIFEST",
-  "BIOS_DATA_A",
+  "FSP_BOOT_MF",
   " ",
   " ",
   "CSE_SECUREB"
@@ -3256,7 +3256,7 @@ ClearFitTable (
     case FIT_TABLE_TYPE_BIOS_POLICY:
     case FIT_TABLE_TYPE_KEY_MANIFEST:
     case FIT_TABLE_TYPE_BOOT_POLICY_MANIFEST:
-    case FIT_TABLE_TYPE_BIOS_DATA_AREA:
+    case FIT_TABLE_TYPE_FSP_BOOT_MANIFEST:
     case FIT_TABLE_TYPE_CSE_SECURE_BOOT:
       //
       // Clear FIT table data buffer
-- 
2.37.1.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#112432): https://edk2.groups.io/g/devel/message/112432
Mute This Topic: https://groups.io/mt/103129294/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to