]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Disk/PartitionDxe/Partition.h
MdeModulePkg/PartitionDxe: Add impl of Partition Information Protocol
[mirror_edk2.git] / MdeModulePkg / Universal / Disk / PartitionDxe / Partition.h
index 7cb19882cb2df0ab8f8ed18b3c2225175adc6de6..f2f61853173f0f2ad69064b0c7aebbf80063256e 100644 (file)
@@ -4,7 +4,7 @@
   of the raw block devices media. Currently "El Torito CD-ROM", Legacy \r
   MBR, and GPT partition schemes are supported.\r
 \r
-Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
 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
@@ -27,6 +27,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Protocol/DriverBinding.h>\r
 #include <Protocol/DiskIo.h>\r
 #include <Protocol/DiskIo2.h>\r
+#include <Protocol/PartitionInfo.h>\r
 #include <Library/DebugLib.h>\r
 #include <Library/UefiDriverEntryPoint.h>\r
 #include <Library/BaseLib.h>\r
@@ -45,25 +46,26 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 //\r
 #define PARTITION_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('P', 'a', 'r', 't')\r
 typedef struct {\r
-  UINT64                    Signature;\r
-\r
-  EFI_HANDLE                Handle;\r
-  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;\r
-  EFI_BLOCK_IO_PROTOCOL     BlockIo;\r
-  EFI_BLOCK_IO2_PROTOCOL    BlockIo2;\r
-  EFI_BLOCK_IO_MEDIA        Media;\r
-  EFI_BLOCK_IO_MEDIA        Media2;//For BlockIO2\r
-\r
-  EFI_DISK_IO_PROTOCOL      *DiskIo;\r
-  EFI_DISK_IO2_PROTOCOL     *DiskIo2;\r
-  EFI_BLOCK_IO_PROTOCOL     *ParentBlockIo;\r
-  EFI_BLOCK_IO2_PROTOCOL    *ParentBlockIo2;\r
-  UINT64                    Start;\r
-  UINT64                    End;\r
-  UINT32                    BlockSize;\r
-  BOOLEAN                   InStop;\r
-\r
-  EFI_GUID                  *EspGuid;\r
+  UINT64                       Signature;\r
+\r
+  EFI_HANDLE                   Handle;\r
+  EFI_DEVICE_PATH_PROTOCOL     *DevicePath;\r
+  EFI_BLOCK_IO_PROTOCOL        BlockIo;\r
+  EFI_BLOCK_IO2_PROTOCOL       BlockIo2;\r
+  EFI_BLOCK_IO_MEDIA           Media;\r
+  EFI_BLOCK_IO_MEDIA           Media2;//For BlockIO2\r
+  EFI_PARTITION_INFO_PROTOCOL  PartitionInfo;\r
+\r
+  EFI_DISK_IO_PROTOCOL         *DiskIo;\r
+  EFI_DISK_IO2_PROTOCOL        *DiskIo2;\r
+  EFI_BLOCK_IO_PROTOCOL        *ParentBlockIo;\r
+  EFI_BLOCK_IO2_PROTOCOL       *ParentBlockIo2;\r
+  UINT64                       Start;\r
+  UINT64                       End;\r
+  UINT32                       BlockSize;\r
+  BOOLEAN                      InStop;\r
+\r
+  EFI_GUID                     *EspGuid;\r
 \r
 } PARTITION_PRIVATE_DATA;\r
 \r
@@ -321,10 +323,10 @@ PartitionComponentNameGetControllerName (
   @param[in]  ParentBlockIo2    Parent BlockIo2 interface.\r
   @param[in]  ParentDevicePath  Parent Device Path.\r
   @param[in]  DevicePathNode    Child Device Path node.\r
+  @param[in]  PartitionInfo     Child Partition Information interface.\r
   @param[in]  Start             Start Block.\r
   @param[in]  End               End Block.\r
   @param[in]  BlockSize         Child block size.\r
-  @param[in]  InstallEspGuid    Flag to install EFI System Partition GUID on handle.\r
 \r
   @retval EFI_SUCCESS       A child handle was added.\r
   @retval other             A child handle was not added.\r
@@ -340,10 +342,10 @@ PartitionInstallChildHandle (
   IN  EFI_BLOCK_IO2_PROTOCOL       *ParentBlockIo2,\r
   IN  EFI_DEVICE_PATH_PROTOCOL     *ParentDevicePath,\r
   IN  EFI_DEVICE_PATH_PROTOCOL     *DevicePathNode,\r
+  IN  EFI_PARTITION_INFO_PROTOCOL  *PartitionInfo,\r
   IN  EFI_LBA                      Start,\r
   IN  EFI_LBA                      End,\r
-  IN  UINT32                       BlockSize,\r
-  IN  BOOLEAN                      InstallEspGuid\r
+  IN  UINT32                       BlockSize\r
   );\r
 \r
 /**\r