added PPI and Protocol definitions needed by porting modules
authorvanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 27 Jun 2007 06:15:36 +0000 (06:15 +0000)
committervanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 27 Jun 2007 06:15:36 +0000 (06:15 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2778 6f19259b-4bc3-4df7-8a09-765794883524

20 files changed:
MdeModulePkg/Include/Ppi/FindFv.h [new file with mode: 0644]
MdeModulePkg/Include/Protocol/CustomizedDecompress.h [new file with mode: 0644]
MdeModulePkg/Include/Protocol/EdkDecompress.h [new file with mode: 0644]
MdeModulePkg/Include/Protocol/LoadPe32Image.h [new file with mode: 0644]
MdeModulePkg/MdeModulePkg.dec
MdeModulePkg/MdeModulePkg.nspd
MdeModulePkg/Universal/Disk/DiskIo/Dxe/ComponentName.c
MdeModulePkg/Universal/Disk/DiskIo/Dxe/DiskIo.h
MdeModulePkg/Universal/Disk/DiskIo/Dxe/DiskIo.inf
MdeModulePkg/Universal/Disk/DiskIo/Dxe/diskio.c
MdeModulePkg/Universal/Disk/Partition/Dxe/ComponentName.c
MdeModulePkg/Universal/Disk/Partition/Dxe/ElTorito.c
MdeModulePkg/Universal/Disk/Partition/Dxe/Gpt.c
MdeModulePkg/Universal/Disk/Partition/Dxe/Mbr.c
MdeModulePkg/Universal/Disk/Partition/Dxe/Partition.c
MdeModulePkg/Universal/Disk/Partition/Dxe/Partition.h
MdeModulePkg/Universal/Disk/Partition/Dxe/Partition.inf
MdeModulePkg/Universal/Security/SecurityStub/Dxe/SecurityStub.c
MdeModulePkg/Universal/Security/SecurityStub/Dxe/SecurityStub.h
MdeModulePkg/Universal/Security/SecurityStub/Dxe/SecurityStub.inf

diff --git a/MdeModulePkg/Include/Ppi/FindFv.h b/MdeModulePkg/Include/Ppi/FindFv.h
new file mode 100644 (file)
index 0000000..9a3e173
--- /dev/null
@@ -0,0 +1,71 @@
+/** @file\r
+  This file declares FindFv PPI used to locate FVs that contain PEIMs in PEI\r
+\r
+  Copyright (c) 2006, Intel Corporation                                                         \r
+  All rights reserved. This program and the accompanying materials                          \r
+  are licensed and made available under the terms and conditions of the BSD License         \r
+  which accompanies this distribution.  The full text of the license may be found at        \r
+  http://opensource.org/licenses/bsd-license.php                                            \r
+\r
+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+\r
+  Module Name:  FindFv.h\r
+\r
+  @par Revision Reference:\r
+  This PPI is defined in PEI CIS\r
+  Version 0.91\r
+\r
+**/\r
+\r
+#ifndef __FIND_FV_H__\r
+#define __FIND_FV_H__\r
+\r
+#define EFI_PEI_FIND_FV_PPI_GUID \\r
+  { \\r
+    0x36164812, 0xa023, 0x44e5, {0xbd, 0x85, 0x5, 0xbf, 0x3c, 0x77, 0x0, 0xaa } \\r
+  }\r
+\r
+typedef struct _EFI_PEI_FIND_FV_PPI EFI_PEI_FIND_FV_PPI;\r
+\r
+/**\r
+  This interface returns the base address of the firmware volume whose index \r
+  was passed in FvNumber.Once this function reports a firmware volume \r
+  index/base address pair, that index/address pairing must continue throughout PEI.\r
+\r
+  @param  PeiServices    Pointer to the PEI Services Table.\r
+  @param  This           Interface pointer that implements the Find FV service.\r
+  @param  FvNumber       The index of the firmware volume to locate.\r
+  @param  FvAddress      The address of the volume to discover.\r
+\r
+  @retval EFI_SUCCESS           An additional firmware volume was found.\r
+  @retval EFI_OUT_OF_RESOURCES  There are no firmware volumes for the given FvNumber.\r
+  @retval EFI_INVALID_PARAMETER *FvAddress is NULL.\r
+\r
+**/\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_PEI_FIND_FV_FINDFV) (\r
+  IN EFI_PEI_FIND_FV_PPI      *This,\r
+  IN EFI_PEI_SERVICES         **PeiServices,\r
+  UINT8                       *FvNumber,\r
+  EFI_FIRMWARE_VOLUME_HEADER  **FVAddress\r
+  );\r
+\r
+/**\r
+  @par Ppi Description:\r
+  Hardware mechanisms for locating FVs in a platform vary widely.\r
+  EFI_PEI_FIND_FV_PPI serves to abstract this variation so that the \r
+  PEI Foundation can remain standard across a wide variety of platforms.\r
+\r
+  @param FindFv\r
+  Service that abstracts the location of additional firmware volumes.\r
+\r
+**/\r
+struct _EFI_PEI_FIND_FV_PPI {\r
+  EFI_PEI_FIND_FV_FINDFV  FindFv;\r
+};\r
+\r
+extern EFI_GUID gEfiFindFvPpiGuid;\r
+\r
+#endif\r
diff --git a/MdeModulePkg/Include/Protocol/CustomizedDecompress.h b/MdeModulePkg/Include/Protocol/CustomizedDecompress.h
new file mode 100644 (file)
index 0000000..bff8d46
--- /dev/null
@@ -0,0 +1,137 @@
+/*++\r
+\r
+Copyright (c) 2006, Intel Corporation                                                         \r
+All rights reserved. This program and the accompanying materials                          \r
+are licensed and made available under the terms and conditions of the BSD License         \r
+which accompanies this distribution.  The full text of the license may be found at        \r
+http://opensource.org/licenses/bsd-license.php                                            \r
+                                                                                          \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+\r
+Module Name:\r
+  CustomizedDecompress.h\r
+    \r
+Abstract:\r
+  The user Customized Decompress Protocol Interface\r
+\r
+--*/\r
+\r
+#ifndef __CUSTOMIZED_DECOMPRESS_H__\r
+#define __CUSTOMIZED_DECOMPRESS_H__\r
+\r
+#define EFI_CUSTOMIZED_DECOMPRESS_PROTOCOL_GUID \\r
+  { 0x9a44198e, 0xa4a2, 0x44e6, {0x8a, 0x1f, 0x39, 0xbe, 0xfd, 0xac, 0x89, 0x6f } }\r
+\r
+typedef struct _EFI_CUSTOMIZED_DECOMPRESS_PROTOCOL    EFI_CUSTOMIZED_DECOMPRESS_PROTOCOL;\r
+\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_CUSTOMIZED_DECOMPRESS_GET_INFO) (\r
+  IN EFI_CUSTOMIZED_DECOMPRESS_PROTOCOL       *This,\r
+  IN   VOID                                   *Source,\r
+  IN   UINT32                                 SourceSize,\r
+  OUT  UINT32                                 *DestinationSize,\r
+  OUT  UINT32                                 *ScratchSize\r
+  );\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  The GetInfo() function retrieves the size of the uncompressed buffer \r
+  and the temporary scratch buffer required to decompress the buffer \r
+  specified by Source and SourceSize.  If the size of the uncompressed\r
+  buffer or the size of the scratch buffer cannot be determined from \r
+  the compressed data specified by Source and SourceData, then \r
+  EFI_INVALID_PARAMETER is returned.  Otherwise, the size of the uncompressed\r
+  buffer is returned in DestinationSize, the size of the scratch buffer is \r
+  returned in ScratchSize, and EFI_SUCCESS is returned.\r
+  \r
+  The GetInfo() function does not have scratch buffer available to perform \r
+  a thorough checking of the validity of the source data. It just retrieves\r
+  the 'Original Size' field from the beginning bytes of the source data and\r
+  output it as DestinationSize.  And ScratchSize is specific to the decompression\r
+  implementation.\r
+\r
+Arguments:\r
+\r
+  This            - The protocol instance pointer\r
+  Source          - The source buffer containing the compressed data.\r
+  SourceSize      - The size, in bytes, of source buffer.\r
+  DestinationSize - A pointer to the size, in bytes, of the uncompressed buffer\r
+                    that will be generated when the compressed buffer specified \r
+                    by Source and SourceSize is decompressed.\r
+  ScratchSize     - A pointer to the size, in bytes, of the scratch buffer that \r
+                    is required to decompress the compressed buffer specified by\r
+                    Source and SourceSize.\r
+\r
+Returns:\r
+  EFI_SUCCESS     - The size of the uncompressed data was returned in DestinationSize\r
+                    and the size of the scratch buffer was returned in ScratchSize.\r
+  EFI_INVALID_PARAMETER - The size of the uncompressed data or the size of the scratch\r
+                  buffer cannot be determined from the compressed data specified by \r
+                  Source and SourceData.\r
+\r
+--*/\r
+\r
+\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_CUSTOMIZED_DECOMPRESS_DECOMPRESS) (\r
+  IN EFI_CUSTOMIZED_DECOMPRESS_PROTOCOL         *This,\r
+  IN     VOID*                                  Source,\r
+  IN     UINT32                                 SourceSize,\r
+  IN OUT VOID*                                  Destination,\r
+  IN     UINT32                                 DestinationSize,\r
+  IN OUT VOID*                                  Scratch,\r
+  IN     UINT32                                 ScratchSize\r
+  );\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  The Decompress() function extracts decompressed data to its original form.\r
+  \r
+  This protocol is designed so that the decompression algorithm can be \r
+  implemented without using any memory services.  As a result, the \r
+  Decompress() function is not allowed to call AllocatePool() or \r
+  AllocatePages() in its implementation.  It is the caller's responsibility \r
+  to allocate and free the Destination and Scratch buffers.\r
+  \r
+  If the compressed source data specified by Source and SourceSize is \r
+  sucessfully decompressed into Destination, then EFI_SUCCESS is returned.  \r
+  If the compressed source data specified by Source and SourceSize is not in \r
+  a valid compressed data format, then EFI_INVALID_PARAMETER is returned.\r
+\r
+Arguments:\r
+\r
+  This            - The protocol instance pointer\r
+  Source          - The source buffer containing the compressed data.\r
+  SourceSize      - The size of source data.\r
+  Destination     - On output, the destination buffer that contains \r
+                    the uncompressed data.\r
+  DestinationSize - The size of destination buffer. The size of destination\r
+                    buffer needed is obtained from GetInfo().\r
+  Scratch         - A temporary scratch buffer that is used to perform the \r
+                    decompression.\r
+  ScratchSize     - The size of scratch buffer. The size of scratch buffer needed\r
+                    is obtained from GetInfo().\r
+\r
+Returns:\r
+\r
+  EFI_SUCCESS     - Decompression completed successfully, and the uncompressed \r
+                    buffer is returned in Destination.\r
+  EFI_INVALID_PARAMETER \r
+                  - The source buffer specified by Source and SourceSize is \r
+                    corrupted (not in a valid compressed format).\r
+\r
+--*/\r
+\r
+struct _EFI_CUSTOMIZED_DECOMPRESS_PROTOCOL {\r
+  EFI_CUSTOMIZED_DECOMPRESS_GET_INFO    GetInfo;\r
+  EFI_CUSTOMIZED_DECOMPRESS_DECOMPRESS  Decompress;\r
+};\r
+\r
+extern EFI_GUID gEfiCustomizedDecompressProtocolGuid;\r
+\r
+#endif\r
diff --git a/MdeModulePkg/Include/Protocol/EdkDecompress.h b/MdeModulePkg/Include/Protocol/EdkDecompress.h
new file mode 100644 (file)
index 0000000..ab9b840
--- /dev/null
@@ -0,0 +1,137 @@
+/*++\r
+\r
+Copyright (c) 2006, Intel Corporation                                                         \r
+All rights reserved. This program and the accompanying materials                          \r
+are licensed and made available under the terms and conditions of the BSD License         \r
+which accompanies this distribution.  The full text of the license may be found at        \r
+http://opensource.org/licenses/bsd-license.php                                            \r
+                                                                                          \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+\r
+Module Name:\r
+  EdkDecompress.h\r
+    \r
+Abstract:\r
+  The Tiano Decompress Protocol Interface\r
+\r
+--*/\r
+\r
+#ifndef __EDK_DECOMPRESS_H__\r
+#define __EDK_DECOMPRESS_H__\r
+\r
+#define EFI_TIANO_DECOMPRESS_PROTOCOL_GUID  \\r
+  { 0xe84cf29c, 0x191f, 0x4eae, {0x96, 0xe1, 0xf4, 0x6a, 0xec, 0xea, 0xea, 0x0b } }\r
+\r
+typedef struct _EFI_TIANO_DECOMPRESS_PROTOCOL   EFI_TIANO_DECOMPRESS_PROTOCOL;\r
+\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_TIANO_DECOMPRESS_GET_INFO) (\r
+  IN EFI_TIANO_DECOMPRESS_PROTOCOL            *This,\r
+  IN   VOID                                   *Source,\r
+  IN   UINT32                                 SourceSize,\r
+  OUT  UINT32                                 *DestinationSize,\r
+  OUT  UINT32                                 *ScratchSize\r
+  );\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  The GetInfo() function retrieves the size of the uncompressed buffer \r
+  and the temporary scratch buffer required to decompress the buffer \r
+  specified by Source and SourceSize.  If the size of the uncompressed\r
+  buffer or the size of the scratch buffer cannot be determined from \r
+  the compressed data specified by Source and SourceData, then \r
+  EFI_INVALID_PARAMETER is returned.  Otherwise, the size of the uncompressed\r
+  buffer is returned in DestinationSize, the size of the scratch buffer is \r
+  returned in ScratchSize, and EFI_SUCCESS is returned.\r
+  \r
+  The GetInfo() function does not have scratch buffer available to perform \r
+  a thorough checking of the validity of the source data. It just retrieves\r
+  the 'Original Size' field from the beginning bytes of the source data and\r
+  output it as DestinationSize.  And ScratchSize is specific to the decompression\r
+  implementation.\r
+\r
+Arguments:\r
+\r
+  This            - The protocol instance pointer\r
+  Source          - The source buffer containing the compressed data.\r
+  SourceSize      - The size, in bytes, of source buffer.\r
+  DestinationSize - A pointer to the size, in bytes, of the uncompressed buffer\r
+                    that will be generated when the compressed buffer specified \r
+                    by Source and SourceSize is decompressed.\r
+  ScratchSize     - A pointer to the size, in bytes, of the scratch buffer that \r
+                    is required to decompress the compressed buffer specified by\r
+                    Source and SourceSize.\r
+\r
+Returns:\r
+  EFI_SUCCESS     - The size of the uncompressed data was returned in DestinationSize\r
+                    and the size of the scratch buffer was returned in ScratchSize.\r
+  EFI_INVALID_PARAMETER - The size of the uncompressed data or the size of the scratch\r
+                  buffer cannot be determined from the compressed data specified by \r
+                  Source and SourceData.\r
+\r
+--*/\r
+\r
+\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_TIANO_DECOMPRESS_DECOMPRESS) (\r
+  IN EFI_TIANO_DECOMPRESS_PROTOCOL              *This,\r
+  IN     VOID*                                  Source,\r
+  IN     UINT32                                 SourceSize,\r
+  IN OUT VOID*                                  Destination,\r
+  IN     UINT32                                 DestinationSize,\r
+  IN OUT VOID*                                  Scratch,\r
+  IN     UINT32                                 ScratchSize\r
+  );\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  The Decompress() function extracts decompressed data to its original form.\r
+  \r
+  This protocol is designed so that the decompression algorithm can be \r
+  implemented without using any memory services.  As a result, the \r
+  Decompress() function is not allowed to call AllocatePool() or \r
+  AllocatePages() in its implementation.  It is the caller's responsibility \r
+  to allocate and free the Destination and Scratch buffers.\r
+  \r
+  If the compressed source data specified by Source and SourceSize is \r
+  sucessfully decompressed into Destination, then EFI_SUCCESS is returned.  \r
+  If the compressed source data specified by Source and SourceSize is not in \r
+  a valid compressed data format, then EFI_INVALID_PARAMETER is returned.\r
+\r
+Arguments:\r
+\r
+  This            - The protocol instance pointer\r
+  Source          - The source buffer containing the compressed data.\r
+  SourceSize      - The size of source data.\r
+  Destination     - On output, the destination buffer that contains \r
+                    the uncompressed data.\r
+  DestinationSize - The size of destination buffer. The size of destination\r
+                    buffer needed is obtained from GetInfo().\r
+  Scratch         - A temporary scratch buffer that is used to perform the \r
+                    decompression.\r
+  ScratchSize     - The size of scratch buffer. The size of scratch buffer needed\r
+                    is obtained from GetInfo().\r
+\r
+Returns:\r
+\r
+  EFI_SUCCESS     - Decompression completed successfully, and the uncompressed \r
+                    buffer is returned in Destination.\r
+  EFI_INVALID_PARAMETER \r
+                  - The source buffer specified by Source and SourceSize is \r
+                    corrupted (not in a valid compressed format).\r
+\r
+--*/\r
+\r
+struct _EFI_TIANO_DECOMPRESS_PROTOCOL {\r
+  EFI_TIANO_DECOMPRESS_GET_INFO    GetInfo;\r
+  EFI_TIANO_DECOMPRESS_DECOMPRESS  Decompress;\r
+};\r
+\r
+extern EFI_GUID gEfiTianoDecompressProtocolGuid;\r
+\r
+#endif\r
diff --git a/MdeModulePkg/Include/Protocol/LoadPe32Image.h b/MdeModulePkg/Include/Protocol/LoadPe32Image.h
new file mode 100644 (file)
index 0000000..1ea2989
--- /dev/null
@@ -0,0 +1,68 @@
+/*++\r
+\r
+Copyright (c) 2006, Intel Corporation\r
+All rights reserved. This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution.  The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+Module Name:\r
+  LoadPe32Image.h\r
+\r
+Abstract:\r
+  Load File protocol as defined in the EFI 1.0 specification.\r
+\r
+  Load file protocol exists to supports the addition of new boot devices,\r
+  and to support booting from devices that do not map well to file system.\r
+  Network boot is done via a LoadFile protocol.\r
+\r
+  EFI 1.0 can boot from any device that produces a LoadFile protocol.\r
+\r
+--*/\r
+\r
+#ifndef __LOAD_PE32_IMAGE_H__\r
+#define __LOAD_PE32_IMAGE_H__\r
+\r
+#define PE32_IMAGE_PROTOCOL_GUID  \\r
+  {0x5cb5c776,0x60d5,0x45ee,{0x88,0x3c,0x45,0x27,0x8,0xcd,0x74,0x3f }}\r
+\r
+#define EFI_LOAD_PE_IMAGE_ATTRIBUTE_NONE                                 0x00\r
+#define EFI_LOAD_PE_IMAGE_ATTRIBUTE_RUNTIME_REGISTRATION                 0x01\r
+#define EFI_LOAD_PE_IMAGE_ATTRIBUTE_DEBUG_IMAGE_INFO_TABLE_REGISTRATION  0x02\r
+\r
+typedef struct _EFI_PE32_IMAGE_PROTOCOL   EFI_PE32_IMAGE_PROTOCOL;\r
+\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *LOAD_PE_IMAGE) (\r
+  IN EFI_PE32_IMAGE_PROTOCOL           *This,\r
+  IN  EFI_HANDLE                       ParentImageHandle,\r
+  IN  EFI_DEVICE_PATH_PROTOCOL         *FilePath,\r
+  IN  VOID                             *SourceBuffer       OPTIONAL,\r
+  IN  UINTN                            SourceSize,\r
+  IN  EFI_PHYSICAL_ADDRESS             DstBuffer           OPTIONAL,\r
+  OUT UINTN                            *NumberOfPages      OPTIONAL,\r
+  OUT EFI_HANDLE                       *ImageHandle,\r
+  OUT EFI_PHYSICAL_ADDRESS             *EntryPoint         OPTIONAL,\r
+  IN  UINT32                           Attribute\r
+  );\r
+\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *UNLOAD_PE_IMAGE) (\r
+  IN EFI_PE32_IMAGE_PROTOCOL          *This,\r
+  IN EFI_HANDLE                       ImageHandle\r
+  );\r
+\r
+struct _EFI_PE32_IMAGE_PROTOCOL {\r
+  LOAD_PE_IMAGE     LoadPeImage;\r
+  UNLOAD_PE_IMAGE  UnLoadPeImage;\r
+};\r
+\r
+extern EFI_GUID gEfiLoadPeImageProtocolGuid;\r
+\r
+#endif\r
+\r
index b3c87fe..52a2092 100644 (file)
@@ -37,6 +37,7 @@
 #\r
 ################################################################################\r
 [Guids.common]\r
+  gEfiPeiPeCoffLoaderGuid        = { 0xD8117CFF, 0x94A6, 0x11D4, { 0x9A, 0x3A, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }}\r
   gEfiGenericPlatformVariableGuid = { 0x59d1c24f, 0x50f1, 0x401a, { 0xb1, 0x01, 0xf3, 0x3e, 0x0d, 0xae, 0xd4, 0x43 }}\r
   gPeiPerformanceHobGuid         = { 0xEC4DF5AF, 0x4395, 0x4CC9, { 0x94, 0xDE, 0x77, 0x50, 0x6D, 0x12, 0xC7, 0xB8 }}\r
   gEfiCapsuleVendorGuid          = { 0x711C703F, 0xC285, 0x4B10, { 0xA3, 0xB0, 0x36, 0xEC, 0xBD, 0x3C, 0x8B, 0xE2 }}\r
@@ -75,6 +76,7 @@
 #\r
 ################################################################################\r
 [Protocols.common]\r
+  gEfiFindFvPpiGuid              = { 0x36164812, 0xA023, 0x44E5, { 0xBD, 0x85, 0x05, 0xBF, 0x3C, 0x77, 0x00, 0xAA }}\r
   gEfiScsiIoProtocolGuid         = { 0x403CD195, 0xF233, 0x48EC, { 0x84, 0x55, 0xB2, 0xE5, 0x2F, 0x1D, 0x9E, 0x02 }}\r
   gPerformanceProtocolGuid       = { 0x76B6BDFA, 0x2ACD, 0x4462, { 0x9E, 0x3F, 0xCB, 0x58, 0xC9, 0x69, 0xD9, 0x37 }}\r
   gEfiUsbAtapiProtocolGuid       = { 0x2B2F68DA, 0x0CD2, 0x44CF, { 0x8E, 0x8B, 0xBB, 0xA2, 0x0B, 0x1B, 0x5B, 0x75 }}\r
@@ -86,6 +88,8 @@
   gEfiGenericMemTestProtocolGuid = { 0x309DE7F1, 0x7F5E, 0x4ACE, { 0xB4, 0x9C, 0x53, 0x1B, 0xE5, 0xAA, 0x95, 0xEF }}\r
   gEfiPrintProtocolGuid          = { 0xDF2D868E, 0x32FC, 0x4CF0, { 0x8E, 0x6B, 0xFF, 0xD9, 0x5D, 0x13, 0x43, 0xD0 }}\r
   gEfiLoadPeImageProtocolGuid    = { 0x5CB5C776, 0x60D5, 0x45EE, { 0x88, 0x3C, 0x45, 0x27, 0x08, 0xCD, 0x74, 0x3F }}\r
+  gEfiTianoDecompressProtocolGuid = { 0xE84CF29C, 0x191F, 0x4EAE, { 0x96, 0xE1, 0xF4, 0x6A, 0xEC, 0xEA, 0xEA, 0x0B }}\r
+  gEfiCustomizedDecompressProtocolGuid = { 0x9A44198E, 0xA4A2, 0x44E6, { 0x8A, 0x1F, 0x39, 0xBE, 0xFD, 0xAC, 0x89, 0x6F }}\r
   gEfiCapsuleArchProtocolGuid    = { 0x5053697E, 0x2EBC, 0x4819, { 0x90, 0xD9, 0x05, 0x80, 0xDE, 0xEE, 0x57, 0x54 }}\r
 \r
 \r
index 44214f4..6302553 100644 (file)
       <GuidValue>59d1c24f-50f1-401a-b101-f33e0daed443</GuidValue>\r
       <HelpText>The variable space Guid to pair with a Unicode string name to tag an EFI variable</HelpText>\r
     </Entry>\r
+    <Entry Name="PeiPeCoffLoader">\r
+      <C_Name>gEfiPeiPeCoffLoaderGuid</C_Name>\r
+      <GuidValue>D8117CFF-94A6-11D4-9A3A-0090273FC14D</GuidValue>\r
+      <HelpText/>\r
+    </Entry>\r
   </GuidDeclarations>\r
   <ProtocolDeclarations>\r
     <Entry Name="Capsule">\r
       <GuidValue>5053697E-2EBC-4819-90D9-0580DEEE5754</GuidValue>\r
       <HelpText/>\r
     </Entry>\r
+    <Entry Name="CustomizedDecompress">\r
+      <C_Name>gEfiCustomizedDecompressProtocolGuid</C_Name>\r
+      <GuidValue>9A44198E-A4A2-44E6-8A1F-39BEFDAC896F</GuidValue>\r
+      <HelpText/>\r
+    </Entry>\r
+    <Entry Name="TianoDecompress">\r
+      <C_Name>gEfiTianoDecompressProtocolGuid</C_Name>\r
+      <GuidValue>E84CF29C-191F-4EAE-96E1-F46AECEAEA0B</GuidValue>\r
+      <HelpText/>\r
+    </Entry>\r
     <Entry Name="LoadPeImage">\r
       <C_Name>gEfiLoadPeImageProtocolGuid</C_Name>\r
       <GuidValue>5CB5C776-60D5-45EE-883C-452708CD743F</GuidValue>\r
       <GuidValue>403CD195-F233-48EC-8455-B2E52F1D9E02</GuidValue>\r
       <HelpText/>\r
     </Entry>\r
+    <Entry Name="FindFv">\r
+      <C_Name>gEfiFindFvPpiGuid</C_Name>\r
+      <GuidValue>36164812-A023-44E5-BD85-05BF3C7700AA</GuidValue>\r
+      <HelpText/>\r
+    </Entry>\r
   </ProtocolDeclarations>\r
   <PpiDeclarations>\r
     <Entry Name="BaseMemoryTest">\r
index bf95be1..de4bb2e 100644 (file)
 \r
 **/\r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "DiskIo.h"\r
 \r
 //\r
index c1a572f..5df48c6 100644 (file)
 #ifndef _DISK_IO_H\r
 #define _DISK_IO_H\r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include <Uefi.h>\r
 #include <Protocol/BlockIo.h>\r
 #include <Protocol/ComponentName.h>\r
index ad73679..3030bda 100644 (file)
@@ -1,12 +1,13 @@
 #/** @file\r
-#  Component description file for DiskIo module.\r
+# Component description file for DiskIo module.\r
+#\r
+# DiskIo driver that layers it's self on every Block IO protocol in the system.\r
+# Copyright (c) 2006 - 2007, Intel Corporation\r
 #\r
-#  Copyright (c) 2006 - 2007, Intel Corporation\r
 #  All rights reserved. This program and the accompanying materials\r
 #  are licensed and made available under the terms and conditions of the BSD License\r
 #  which accompanies this distribution. The full text of the license may be found at\r
 #  http://opensource.org/licenses/bsd-license.php\r
-#\r
 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 #\r
@@ -34,8 +35,8 @@
 #\r
 #  VALID_ARCHITECTURES           = IA32 X64 IPF EBC\r
 #\r
-#  DRIVER_BINDING                =  gDiskIoDriverBinding\r
-#  COMPONENT_NAME                =  gDiskIoComponentName\r
+#  DRIVER_BINDING                =  gDiskIoDriverBinding                         \r
+#  COMPONENT_NAME                =  gDiskIoComponentName                         \r
 #\r
 \r
 ################################################################################\r
@@ -48,6 +49,8 @@
   ComponentName.c\r
   DiskIo.h\r
   diskio.c\r
+  CommonHeader.h\r
+  EntryPoint.c\r
 \r
 \r
 ################################################################################\r
 [Includes]\r
   $(WORKSPACE)/MdePkg/Include/Library\r
 \r
-################################################################################\r
-#\r
-# Package Dependency Section - list of Package files that are required for\r
-#                              this module.\r
-#\r
-################################################################################\r
-\r
-[Packages]\r
-  $(WORKSPACE)/MdeModulePkg/MdeModulePkg.dec\r
-  $(WORKSPACE)/MdePkg/MdePkg.dec\r
-\r
-\r
 ################################################################################\r
 #\r
 # Library Class Section - list of Library Classes that are required for\r
index 0cb4922..d5efd63 100644 (file)
 \r
 **/\r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "DiskIo.h"\r
 \r
 EFI_DRIVER_BINDING_PROTOCOL gDiskIoDriverBinding = {\r
index e922cb0..8e8153f 100644 (file)
 \r
 **/\r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "Partition.h"\r
 \r
 //\r
index 37ac710..ab93c08 100644 (file)
 **/\r
 \r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "Partition.h"\r
 \r
 \r
index 581007e..c5978a1 100644 (file)
 **/\r
 \r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "Partition.h"\r
 \r
 \r
index d71698c..bc08963 100644 (file)
@@ -29,6 +29,11 @@ Abstract:
 \r
 --*/\r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "Partition.h"\r
 \r
 STATIC\r
index 4d0c76f..de2c802 100644 (file)
 **/\r
 \r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "Partition.h"\r
 \r
 //\r
index 570d019..289c9a5 100644 (file)
 #ifndef _PARTITION_H \r
 #define _PARTITION_H \r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include <Uefi.h>\r
 #include <Protocol/BlockIo.h>\r
 #include <Guid/Gpt.h>\r
index 1e00fcc..2036fa7 100644 (file)
@@ -5,13 +5,12 @@
 #  that represents the bytes Start to End of the Parent Block IO \r
 #  device (one partition of physical BlockIo device, \r
 #  which can be one of GPT, MBR, ElTorito partition).\r
+# Copyright (c) 2006 - 2007, Intel Corporation\r
 #\r
-#  Copyright (c) 2006 - 2007, Intel Corporation\r
 #  All rights reserved. This program and the accompanying materials\r
 #  are licensed and made available under the terms and conditions of the BSD License\r
 #  which accompanies this distribution. The full text of the license may be found at\r
 #  http://opensource.org/licenses/bsd-license.php\r
-#  \r
 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 #\r
@@ -56,6 +55,8 @@
   ElTorito.c\r
   Partition.c\r
   Partition.h\r
+  CommonHeader.h\r
+  EntryPoint.c\r
 \r
 \r
 ################################################################################\r
 [Includes]\r
   $(WORKSPACE)/MdePkg/Include/Library\r
 \r
-################################################################################\r
-#\r
-# Package Dependency Section - list of Package files that are required for\r
-#                              this module.\r
-#\r
-################################################################################\r
-\r
-[Packages]\r
-  MdePkg/MdePkg.dec\r
-\r
-\r
 ################################################################################\r
 #\r
 # Library Class Section - list of Library Classes that are required for\r
index 2eb325e..88811f1 100644 (file)
 **/\r
 \r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 #include "SecurityStub.h"\r
 \r
 //\r
index dedc14a..df57d9e 100644 (file)
 #define _SECURITY_STUB_ARCH_PROTOCOL_H\r
 \r
 \r
+//\r
+// Include common header file for this module.\r
+//\r
+#include "CommonHeader.h"\r
+\r
 //\r
 // Common header files for this module.\r
 //\r
index ec17cea..36504f9 100644 (file)
@@ -1,12 +1,13 @@
 #/** @file\r
-#  Component description file for SecurityStub module\r
+# Component description file for SecurityStub module\r
+#\r
+# This driver supports platform security service.\r
+# Copyright (c) 2006 - 2007, Intel Corporation\r
 #\r
-#  Copyright (c) 2006 - 2007, Intel Corporation\r
 #  All rights reserved. This program and the accompanying materials\r
 #  are licensed and made available under the terms and conditions of the BSD License\r
 #  which accompanies this distribution. The full text of the license may be found at\r
 #  http://opensource.org/licenses/bsd-license.php\r
-#\r
 #  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
 #  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 #\r
@@ -45,6 +46,7 @@
   SecurityStub.c\r
   SecurityStub.h\r
   SecurityStub.dxs\r
+  CommonHeader.h\r
 \r
 \r
 ################################################################################\r
 [Includes]\r
   $(WORKSPACE)/MdePkg/Include/Library\r
 \r
-################################################################################\r
-#\r
-# Package Dependency Section - list of Package files that are required for\r
-#                              this module.\r
-#\r
-################################################################################\r
-\r
-[Packages]\r
-  MdePkg/MdePkg.dec\r
-\r
-\r
 ################################################################################\r
 #\r
 # Library Class Section - list of Library Classes that are required for\r