of the raw block devices media. Currently "El Torito CD-ROM", UDF, Legacy\r
MBR, and GPT partition schemes are supported.\r
\r
+Copyright (c) 2018 Qualcomm Datacenter Technologies, Inc.\r
Copyright (c) 2006 - 2018, 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
BOOLEAN AllChildrenStopped;\r
PARTITION_PRIVATE_DATA *Private;\r
EFI_DISK_IO_PROTOCOL *DiskIo;\r
+ EFI_GUID *TypeGuid;\r
\r
BlockIo = NULL;\r
BlockIo2 = NULL;\r
This->DriverBindingHandle,\r
ChildHandleBuffer[Index]\r
);\r
+\r
+ if (IsZeroGuid (&Private->TypeGuid)) {\r
+ TypeGuid = NULL;\r
+ } else {\r
+ TypeGuid = &Private->TypeGuid;\r
+ }\r
+\r
//\r
// All Software protocols have be freed from the handle so remove it.\r
// Remove the BlockIo Protocol if has.\r
&Private->BlockIo2,\r
&gEfiPartitionInfoProtocolGuid,\r
&Private->PartitionInfo,\r
- Private->EspGuid,\r
+ TypeGuid,\r
NULL,\r
NULL\r
);\r
&Private->BlockIo,\r
&gEfiPartitionInfoProtocolGuid,\r
&Private->PartitionInfo,\r
- Private->EspGuid,\r
+ TypeGuid,\r
NULL,\r
NULL\r
);\r
@param[in] Start Start Block.\r
@param[in] End End Block.\r
@param[in] BlockSize Child block size.\r
+ @param[in] TypeGuid Partition GUID Type.\r
\r
@retval EFI_SUCCESS A child handle was added.\r
@retval other A child handle was not added.\r
IN EFI_PARTITION_INFO_PROTOCOL *PartitionInfo,\r
IN EFI_LBA Start,\r
IN EFI_LBA End,\r
- IN UINT32 BlockSize\r
+ IN UINT32 BlockSize,\r
+ IN EFI_GUID *TypeGuid\r
)\r
{\r
EFI_STATUS Status;\r
//\r
CopyMem (&Private->PartitionInfo, PartitionInfo, sizeof (EFI_PARTITION_INFO_PROTOCOL));\r
\r
- if (PartitionInfo->System == 1) {\r
- Private->EspGuid = &gEfiPartTypeSystemPartGuid;\r
+ if (TypeGuid != NULL) {\r
+ CopyGuid(&(Private->TypeGuid), TypeGuid);\r
} else {\r
- //\r
- // If NULL InstallMultipleProtocolInterfaces will ignore it.\r
- //\r
- Private->EspGuid = NULL;\r
+ ZeroMem ((VOID *)&(Private->TypeGuid), sizeof (EFI_GUID));\r
}\r
\r
//\r
&Private->BlockIo2,\r
&gEfiPartitionInfoProtocolGuid,\r
&Private->PartitionInfo,\r
- Private->EspGuid,\r
+ TypeGuid,\r
NULL,\r
NULL\r
);\r
&Private->BlockIo,\r
&gEfiPartitionInfoProtocolGuid,\r
&Private->PartitionInfo,\r
- Private->EspGuid,\r
+ TypeGuid,\r
NULL,\r
NULL\r
);\r