/** @file\r
Decode an El Torito formatted CD-ROM\r
\r
+Copyright (c) 2018 Qualcomm Datacenter Technologies, Inc.\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
&PartitionInfo,\r
Catalog->Boot.Lba * (SIZE_2KB / Media->BlockSize),\r
Catalog->Boot.Lba * (SIZE_2KB / Media->BlockSize) + CdDev.PartitionSize - 1,\r
- SubBlockSize\r
+ SubBlockSize,\r
+ NULL\r
);\r
if (!EFI_ERROR (Status)) {\r
Found = EFI_SUCCESS;\r
PartitionValidGptTable(), PartitionCheckGptEntry() routine will accept disk\r
partition content and validate the GPT table and GPT entry.\r
\r
+Copyright (c) 2018 Qualcomm Datacenter Technologies, Inc.\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
&PartitionInfo,\r
Entry->StartingLBA,\r
Entry->EndingLBA,\r
- BlockSize\r
+ BlockSize,\r
+ &Entry->PartitionTypeGUID\r
);\r
}\r
\r
always on the first sector of a media. The first sector also contains\r
the legacy boot strap code.\r
\r
+Copyright (c) 2018 Qualcomm Datacenter Technologies, Inc.\r
Copyright (c) 2014, Hewlett-Packard Development Company, L.P.<BR>\r
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
This program and the accompanying materials\r
&PartitionInfo,\r
HdDev.PartitionStart,\r
HdDev.PartitionStart + HdDev.PartitionSize - 1,\r
- MBR_SIZE\r
+ MBR_SIZE,\r
+ ((Mbr->Partition[Index].OSIndicator == EFI_PARTITION) ? &gEfiPartTypeSystemPartGuid: NULL)\r
);\r
\r
if (!EFI_ERROR (Status)) {\r
&PartitionInfo,\r
HdDev.PartitionStart - ParentHdDev.PartitionStart,\r
HdDev.PartitionStart - ParentHdDev.PartitionStart + HdDev.PartitionSize - 1,\r
- MBR_SIZE\r
+ MBR_SIZE,\r
+ ((Mbr->Partition[0].OSIndicator == EFI_PARTITION) ? &gEfiPartTypeSystemPartGuid: NULL)\r
);\r
if (!EFI_ERROR (Status)) {\r
Found = EFI_SUCCESS;\r
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
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 - 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
UINT32 BlockSize;\r
BOOLEAN InStop;\r
\r
- EFI_GUID *EspGuid;\r
+ EFI_GUID TypeGuid;\r
\r
} PARTITION_PRIVATE_DATA;\r
\r
@param[in] Start Start Block.\r
@param[in] End End Block.\r
@param[in] BlockSize Child block size.\r
+ @param[in] TypeGuid Parition Type Guid.\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
/**\r
/** @file\r
Scan for an UDF file system on a formatted media.\r
\r
+ Copyright (c) 2018 Qualcomm Datacenter Technologies, Inc.\r
Copyright (C) 2014-2017 Paulo Alcantara <pcacjr@zytor.com>\r
\r
This program and the accompanying materials are licensed and made available\r
&PartitionInfo,\r
StartingLBA,\r
EndingLBA,\r
- Media->BlockSize\r
+ Media->BlockSize,\r
+ NULL\r
);\r
if (EFI_ERROR (Status)) {\r
return (ChildCreated ? EFI_SUCCESS : Status);\r