Jones:
  UEFI spec defines this table format. And, for the a capsule with 
CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE flag, the firmware should install this 
system table for it. So, I don't agree this change. 

UEFI spec 7.5.3 Update Capsule:
A capsule which has the CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE Flag must have 
CAPSULE_FLAGS_PERSIST_ACROSS_RESET set in its header as well. Firmware that 
processes a capsule that has the CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE Flag set 
in its header will coalesce the contents of the capsule from the 
ScatterGatherList into a contiguous buffer and must then place a pointer to 
this coalesced capsule in the EFI System Table after the system has been reset. 
Agents searching for this capsule will look in the EFI_CONFIGURATION_TABLE and 
search for the capsule's GUID and associated pointer to retrieve the data after 
the reset.

The EFI System Table entry must use the GUID from the CapsuleGuid field of the 
EFI_CAPSULE_HEADER. The EFI System Table entry must point to an array of 
capsules that contain the same CapsuleGuid value. The array must be prefixed by 
a UINT32 that represents the size of the array of capsules.

Thanks
Liming
-----Original Message-----
From: Peter Jones [mailto:pjo...@redhat.com] 
Sent: Saturday, April 11, 2015 3:02 AM
To: edk2-devel@lists.sourceforge.net
Subject: [edk2] [PATCH 04/11] MdePkg: Remove EFI_CAPSULE_TABLE definition from 
UefiSpec.h

EFI_CAPSULE_TABLE is an implementation detail, and it shouldn't be defined in 
UefISpec.h.  Additionally it currently has no consumers in this source tree.

Remove it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Peter Jones <pjo...@redhat.com>
---
 MdePkg/Include/Uefi/UefiSpec.h | 16 ----------------
 1 file changed, 16 deletions(-)

diff --git a/MdePkg/Include/Uefi/UefiSpec.h b/MdePkg/Include/Uefi/UefiSpec.h 
index 64105c2..d157532 100644
--- a/MdePkg/Include/Uefi/UefiSpec.h
+++ b/MdePkg/Include/Uefi/UefiSpec.h
@@ -1628,22 +1628,6 @@ typedef struct {
   UINT32            CapsuleImageSize;
 } EFI_CAPSULE_HEADER;
 
-///
-/// The EFI System Table entry must point to an array of capsules -/// that 
contain the same CapsuleGuid value. The array must be -/// prefixed by a UINT32 
that represents the size of the array of capsules.
-///
-typedef struct {
-  ///
-  /// the size of the array of capsules.
-  ///
-  UINT32   CapsuleArrayNumber;
-  ///
-  /// Point to an array of capsules that contain the same CapsuleGuid value.
-  ///
-  VOID*    CapsulePtr[1];
-} EFI_CAPSULE_TABLE;
-
 #define CAPSULE_FLAGS_PERSIST_ACROSS_RESET          0x00010000
 #define CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE         0x00020000
 #define CAPSULE_FLAGS_INITIATE_RESET                0x00040000
--
2.3.5


------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to