EFI_PEIM_NOTIFY_ENTRY_POINT Notify;\r
};\r
\r
+///\r
+/// This data structure is the means by which callable services are installed and\r
+/// notifications are registered in the PEI phase.\r
+///\r
+typedef union {\r
+ ///\r
+ /// The typedef structure of the notification descriptor.\r
+ ///\r
+ EFI_PEI_NOTIFY_DESCRIPTOR Notify;\r
+ ///\r
+ /// The typedef structure of the PPI descriptor.\r
+ ///\r
+ EFI_PEI_PPI_DESCRIPTOR Ppi;\r
+} EFI_PEI_DESCRIPTOR;\r
+\r
/**\r
This service is the first one provided by the PEI Foundation. This function \r
installs an interface in the PEI PPI database by GUID. The purpose of the \r
and size.\r
\r
@param VolumeHandle Handle of the volume.\r
+ @param VolumeInfo Upon exit, points to the volume's information.\r
\r
- @param VolumeInfo Upon exit, points to the volume's\r
- information.\r
-\r
- @retval EFI_SUCCESS File information returned.\r
- @retval EFI_INVALID_PARAMETER If FileHandle does not\r
- represent a valid file.\r
- @retval EFI_INVALID_PARAMETER If FileInfo is NULL.\r
+ @retval EFI_SUCCESS Volume information returned.\r
+ @retval EFI_INVALID_PARAMETER If VolumeHandle does not represent a valid volume.\r
+ @retval EFI_INVALID_PARAMETER If VolumeHandle is NULL.\r
+ @retval EFI_SUCCESS Information successfully returned.\r
+ @retval EFI_INVALID_PARAMETER The volume designated by the VolumeHandle is not available.\r
\r
**/\r
typedef\r
// PEI Specification Revision information\r
//\r
#define PEI_SPECIFICATION_MAJOR_REVISION 1\r
-#define PEI_SPECIFICATION_MINOR_REVISION 0\r
-\r
+#define PEI_SPECIFICATION_MINOR_REVISION 20\r
+///\r
+/// Inconsistent with specification here: \r
+/// In PI1.0 spec, PEI_SERVICES_SIGNATURE is defined as 0x5652455320494550. But \r
+/// to pass multiple tool chain, it is append a ULL.\r
+///\r
//\r
// PEI Services Table\r
//\r
#define PEI_SERVICES_SIGNATURE 0x5652455320494550ULL\r
+///\r
+/// Inconsistent with specification here: \r
+/// In PI1.0 spec, There is a typo error in PEI_SERVICES_REVISION. In the spec. the defintion is \r
+/// #define ((PEI_SPECIFICATION_MAJOR_REVISION<<16) |(PEI_SPECIFICATION_MINOR_REVISION))\r
+/// and it should be as follow:\r
+///\r
#define PEI_SERVICES_REVISION ((PEI_SPECIFICATION_MAJOR_REVISION<<16) | (PEI_SPECIFICATION_MINOR_REVISION))\r
\r
/// \r