mirror of https://github.com/acidanthera/audk.git
MdeModulePkg/PartitionDxe: Add impl of Partition Information Protocol
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Bret Barkelew <brbarkel@microsoft.com> Signed-off-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com>
This commit is contained in:
parent
bce72b5837
commit
3a3d62d2e6
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
Decode an El Torito formatted CD-ROM
|
||||
|
||||
Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -44,22 +44,23 @@ PartitionInstallElToritoChildHandles (
|
|||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
UINT64 VolDescriptorOffset;
|
||||
UINT32 Lba2KB;
|
||||
EFI_BLOCK_IO_MEDIA *Media;
|
||||
CDROM_VOLUME_DESCRIPTOR *VolDescriptor;
|
||||
ELTORITO_CATALOG *Catalog;
|
||||
UINTN Check;
|
||||
UINTN Index;
|
||||
UINTN BootEntry;
|
||||
UINTN MaxIndex;
|
||||
UINT16 *CheckBuffer;
|
||||
CDROM_DEVICE_PATH CdDev;
|
||||
UINT32 SubBlockSize;
|
||||
UINT32 SectorCount;
|
||||
EFI_STATUS Found;
|
||||
UINT32 VolSpaceSize;
|
||||
EFI_STATUS Status;
|
||||
UINT64 VolDescriptorOffset;
|
||||
UINT32 Lba2KB;
|
||||
EFI_BLOCK_IO_MEDIA *Media;
|
||||
CDROM_VOLUME_DESCRIPTOR *VolDescriptor;
|
||||
ELTORITO_CATALOG *Catalog;
|
||||
UINTN Check;
|
||||
UINTN Index;
|
||||
UINTN BootEntry;
|
||||
UINTN MaxIndex;
|
||||
UINT16 *CheckBuffer;
|
||||
CDROM_DEVICE_PATH CdDev;
|
||||
UINT32 SubBlockSize;
|
||||
UINT32 SectorCount;
|
||||
EFI_STATUS Found;
|
||||
UINT32 VolSpaceSize;
|
||||
EFI_PARTITION_INFO_PROTOCOL PartitionInfo;
|
||||
|
||||
Found = EFI_NOT_FOUND;
|
||||
Media = BlockIo->Media;
|
||||
|
@ -248,6 +249,10 @@ PartitionInstallElToritoChildHandles (
|
|||
);
|
||||
}
|
||||
|
||||
ZeroMem (&PartitionInfo, sizeof (EFI_PARTITION_INFO_PROTOCOL));
|
||||
PartitionInfo.Revision = EFI_PARTITION_INFO_PROTOCOL_REVISION;
|
||||
PartitionInfo.Type = PARTITION_TYPE_OTHER;
|
||||
|
||||
Status = PartitionInstallChildHandle (
|
||||
This,
|
||||
Handle,
|
||||
|
@ -257,10 +262,10 @@ PartitionInstallElToritoChildHandles (
|
|||
BlockIo2,
|
||||
DevicePath,
|
||||
(EFI_DEVICE_PATH_PROTOCOL *) &CdDev,
|
||||
&PartitionInfo,
|
||||
Catalog->Boot.Lba * (SIZE_2KB / Media->BlockSize),
|
||||
Catalog->Boot.Lba * (SIZE_2KB / Media->BlockSize) + CdDev.PartitionSize - 1,
|
||||
SubBlockSize,
|
||||
FALSE
|
||||
SubBlockSize
|
||||
);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
Found = EFI_SUCCESS;
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
PartitionValidGptTable(), PartitionCheckGptEntry() routine will accept disk
|
||||
partition content and validate the GPT table and GPT entry.
|
||||
|
||||
Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -205,19 +205,20 @@ PartitionInstallGptChildHandles (
|
|||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
UINT32 BlockSize;
|
||||
EFI_LBA LastBlock;
|
||||
MASTER_BOOT_RECORD *ProtectiveMbr;
|
||||
EFI_PARTITION_TABLE_HEADER *PrimaryHeader;
|
||||
EFI_PARTITION_TABLE_HEADER *BackupHeader;
|
||||
EFI_PARTITION_ENTRY *PartEntry;
|
||||
EFI_PARTITION_ENTRY *Entry;
|
||||
EFI_PARTITION_ENTRY_STATUS *PEntryStatus;
|
||||
UINTN Index;
|
||||
EFI_STATUS GptValidStatus;
|
||||
HARDDRIVE_DEVICE_PATH HdDev;
|
||||
UINT32 MediaId;
|
||||
EFI_STATUS Status;
|
||||
UINT32 BlockSize;
|
||||
EFI_LBA LastBlock;
|
||||
MASTER_BOOT_RECORD *ProtectiveMbr;
|
||||
EFI_PARTITION_TABLE_HEADER *PrimaryHeader;
|
||||
EFI_PARTITION_TABLE_HEADER *BackupHeader;
|
||||
EFI_PARTITION_ENTRY *PartEntry;
|
||||
EFI_PARTITION_ENTRY *Entry;
|
||||
EFI_PARTITION_ENTRY_STATUS *PEntryStatus;
|
||||
UINTN Index;
|
||||
EFI_STATUS GptValidStatus;
|
||||
HARDDRIVE_DEVICE_PATH HdDev;
|
||||
UINT32 MediaId;
|
||||
EFI_PARTITION_INFO_PROTOCOL PartitionInfo;
|
||||
|
||||
ProtectiveMbr = NULL;
|
||||
PrimaryHeader = NULL;
|
||||
|
@ -380,17 +381,25 @@ PartitionInstallGptChildHandles (
|
|||
}
|
||||
|
||||
ZeroMem (&HdDev, sizeof (HdDev));
|
||||
HdDev.Header.Type = MEDIA_DEVICE_PATH;
|
||||
HdDev.Header.SubType = MEDIA_HARDDRIVE_DP;
|
||||
HdDev.Header.Type = MEDIA_DEVICE_PATH;
|
||||
HdDev.Header.SubType = MEDIA_HARDDRIVE_DP;
|
||||
SetDevicePathNodeLength (&HdDev.Header, sizeof (HdDev));
|
||||
|
||||
HdDev.PartitionNumber = (UINT32) Index + 1;
|
||||
HdDev.MBRType = MBR_TYPE_EFI_PARTITION_TABLE_HEADER;
|
||||
HdDev.SignatureType = SIGNATURE_TYPE_GUID;
|
||||
HdDev.PartitionStart = Entry->StartingLBA;
|
||||
HdDev.PartitionSize = Entry->EndingLBA - Entry->StartingLBA + 1;
|
||||
HdDev.PartitionNumber = (UINT32) Index + 1;
|
||||
HdDev.MBRType = MBR_TYPE_EFI_PARTITION_TABLE_HEADER;
|
||||
HdDev.SignatureType = SIGNATURE_TYPE_GUID;
|
||||
HdDev.PartitionStart = Entry->StartingLBA;
|
||||
HdDev.PartitionSize = Entry->EndingLBA - Entry->StartingLBA + 1;
|
||||
CopyMem (HdDev.Signature, &Entry->UniquePartitionGUID, sizeof (EFI_GUID));
|
||||
|
||||
ZeroMem (&PartitionInfo, sizeof (EFI_PARTITION_INFO_PROTOCOL));
|
||||
PartitionInfo.Revision = EFI_PARTITION_INFO_PROTOCOL_REVISION;
|
||||
PartitionInfo.Type = PARTITION_TYPE_GPT;
|
||||
if (CompareGuid (&Entry->PartitionTypeGUID, &gEfiPartTypeSystemPartGuid)) {
|
||||
PartitionInfo.System = 1;
|
||||
}
|
||||
CopyMem (&PartitionInfo.Info.Gpt, Entry, sizeof (EFI_PARTITION_ENTRY));
|
||||
|
||||
DEBUG ((EFI_D_INFO, " Index : %d\n", (UINT32) Index));
|
||||
DEBUG ((EFI_D_INFO, " Start LBA : %lx\n", (UINT64) HdDev.PartitionStart));
|
||||
DEBUG ((EFI_D_INFO, " End LBA : %lx\n", (UINT64) Entry->EndingLBA));
|
||||
|
@ -407,10 +416,10 @@ PartitionInstallGptChildHandles (
|
|||
BlockIo2,
|
||||
DevicePath,
|
||||
(EFI_DEVICE_PATH_PROTOCOL *) &HdDev,
|
||||
&PartitionInfo,
|
||||
Entry->StartingLBA,
|
||||
Entry->EndingLBA,
|
||||
BlockSize,
|
||||
CompareGuid(&Entry->PartitionTypeGUID, &gEfiPartTypeSystemPartGuid)
|
||||
BlockSize
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
the legacy boot strap code.
|
||||
|
||||
Copyright (c) 2014, Hewlett-Packard Development Company, L.P.<BR>
|
||||
Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -129,18 +129,19 @@ PartitionInstallMbrChildHandles (
|
|||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
MASTER_BOOT_RECORD *Mbr;
|
||||
UINT32 ExtMbrStartingLba;
|
||||
UINT32 Index;
|
||||
HARDDRIVE_DEVICE_PATH HdDev;
|
||||
HARDDRIVE_DEVICE_PATH ParentHdDev;
|
||||
EFI_STATUS Found;
|
||||
EFI_DEVICE_PATH_PROTOCOL *DevicePathNode;
|
||||
EFI_DEVICE_PATH_PROTOCOL *LastDevicePathNode;
|
||||
UINT32 BlockSize;
|
||||
UINT32 MediaId;
|
||||
EFI_LBA LastBlock;
|
||||
EFI_STATUS Status;
|
||||
MASTER_BOOT_RECORD *Mbr;
|
||||
UINT32 ExtMbrStartingLba;
|
||||
UINT32 Index;
|
||||
HARDDRIVE_DEVICE_PATH HdDev;
|
||||
HARDDRIVE_DEVICE_PATH ParentHdDev;
|
||||
EFI_STATUS Found;
|
||||
EFI_DEVICE_PATH_PROTOCOL *DevicePathNode;
|
||||
EFI_DEVICE_PATH_PROTOCOL *LastDevicePathNode;
|
||||
UINT32 BlockSize;
|
||||
UINT32 MediaId;
|
||||
EFI_LBA LastBlock;
|
||||
EFI_PARTITION_INFO_PROTOCOL PartitionInfo;
|
||||
|
||||
Found = EFI_NOT_FOUND;
|
||||
|
||||
|
@ -225,6 +226,14 @@ PartitionInstallMbrChildHandles (
|
|||
HdDev.PartitionSize = UNPACK_UINT32 (Mbr->Partition[Index].SizeInLBA);
|
||||
CopyMem (HdDev.Signature, &(Mbr->UniqueMbrSignature[0]), sizeof (Mbr->UniqueMbrSignature));
|
||||
|
||||
ZeroMem (&PartitionInfo, sizeof (EFI_PARTITION_INFO_PROTOCOL));
|
||||
PartitionInfo.Revision = EFI_PARTITION_INFO_PROTOCOL_REVISION;
|
||||
PartitionInfo.Type = PARTITION_TYPE_MBR;
|
||||
if (Mbr->Partition[Index].OSIndicator == EFI_PARTITION) {
|
||||
PartitionInfo.System = 1;
|
||||
}
|
||||
CopyMem (&PartitionInfo.Info.Mbr, &Mbr->Partition[Index], sizeof (MBR_PARTITION_RECORD));
|
||||
|
||||
Status = PartitionInstallChildHandle (
|
||||
This,
|
||||
Handle,
|
||||
|
@ -234,10 +243,10 @@ PartitionInstallMbrChildHandles (
|
|||
BlockIo2,
|
||||
DevicePath,
|
||||
(EFI_DEVICE_PATH_PROTOCOL *) &HdDev,
|
||||
&PartitionInfo,
|
||||
HdDev.PartitionStart,
|
||||
HdDev.PartitionStart + HdDev.PartitionSize - 1,
|
||||
MBR_SIZE,
|
||||
(BOOLEAN) (Mbr->Partition[Index].OSIndicator == EFI_PARTITION)
|
||||
MBR_SIZE
|
||||
);
|
||||
|
||||
if (!EFI_ERROR (Status)) {
|
||||
|
@ -288,6 +297,14 @@ PartitionInstallMbrChildHandles (
|
|||
//
|
||||
*((UINT32 *) &HdDev.Signature[0]) = 0;
|
||||
|
||||
ZeroMem (&PartitionInfo, sizeof (EFI_PARTITION_INFO_PROTOCOL));
|
||||
PartitionInfo.Revision = EFI_PARTITION_INFO_PROTOCOL_REVISION;
|
||||
PartitionInfo.Type = PARTITION_TYPE_MBR;
|
||||
if (Mbr->Partition[0].OSIndicator == EFI_PARTITION) {
|
||||
PartitionInfo.System = 1;
|
||||
}
|
||||
CopyMem (&PartitionInfo.Info.Mbr, &Mbr->Partition[0], sizeof (MBR_PARTITION_RECORD));
|
||||
|
||||
Status = PartitionInstallChildHandle (
|
||||
This,
|
||||
Handle,
|
||||
|
@ -297,10 +314,10 @@ PartitionInstallMbrChildHandles (
|
|||
BlockIo2,
|
||||
DevicePath,
|
||||
(EFI_DEVICE_PATH_PROTOCOL *) &HdDev,
|
||||
&PartitionInfo,
|
||||
HdDev.PartitionStart - ParentHdDev.PartitionStart,
|
||||
HdDev.PartitionStart - ParentHdDev.PartitionStart + HdDev.PartitionSize - 1,
|
||||
MBR_SIZE,
|
||||
(BOOLEAN) (Mbr->Partition[0].OSIndicator == EFI_PARTITION)
|
||||
MBR_SIZE
|
||||
);
|
||||
if (!EFI_ERROR (Status)) {
|
||||
Found = EFI_SUCCESS;
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
of the raw block devices media. Currently "El Torito CD-ROM", Legacy
|
||||
MBR, and GPT partition schemes are supported.
|
||||
|
||||
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -514,6 +514,8 @@ PartitionDriverBindingStop (
|
|||
&Private->BlockIo,
|
||||
&gEfiBlockIo2ProtocolGuid,
|
||||
&Private->BlockIo2,
|
||||
&gEfiPartitionInfoProtocolGuid,
|
||||
&Private->PartitionInfo,
|
||||
Private->EspGuid,
|
||||
NULL,
|
||||
NULL
|
||||
|
@ -526,6 +528,8 @@ PartitionDriverBindingStop (
|
|||
Private->DevicePath,
|
||||
&gEfiBlockIoProtocolGuid,
|
||||
&Private->BlockIo,
|
||||
&gEfiPartitionInfoProtocolGuid,
|
||||
&Private->PartitionInfo,
|
||||
Private->EspGuid,
|
||||
NULL,
|
||||
NULL
|
||||
|
@ -1092,10 +1096,10 @@ PartitionFlushBlocksEx (
|
|||
@param[in] ParentBlockIo2 Parent BlockIo2 interface.
|
||||
@param[in] ParentDevicePath Parent Device Path.
|
||||
@param[in] DevicePathNode Child Device Path node.
|
||||
@param[in] PartitionInfo Child Partition Information interface.
|
||||
@param[in] Start Start Block.
|
||||
@param[in] End End Block.
|
||||
@param[in] BlockSize Child block size.
|
||||
@param[in] InstallEspGuid Flag to install EFI System Partition GUID on handle.
|
||||
|
||||
@retval EFI_SUCCESS A child handle was added.
|
||||
@retval other A child handle was not added.
|
||||
|
@ -1111,10 +1115,10 @@ PartitionInstallChildHandle (
|
|||
IN EFI_BLOCK_IO2_PROTOCOL *ParentBlockIo2,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePathNode,
|
||||
IN EFI_PARTITION_INFO_PROTOCOL *PartitionInfo,
|
||||
IN EFI_LBA Start,
|
||||
IN EFI_LBA End,
|
||||
IN UINT32 BlockSize,
|
||||
IN BOOLEAN InstallEspGuid
|
||||
IN UINT32 BlockSize
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
|
@ -1203,7 +1207,12 @@ PartitionInstallChildHandle (
|
|||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
|
||||
if (InstallEspGuid) {
|
||||
//
|
||||
// Set the PartitionInfo into Private Data.
|
||||
//
|
||||
CopyMem (&Private->PartitionInfo, PartitionInfo, sizeof (EFI_PARTITION_INFO_PROTOCOL));
|
||||
|
||||
if ((PartitionInfo->System == 1)) {
|
||||
Private->EspGuid = &gEfiPartTypeSystemPartGuid;
|
||||
} else {
|
||||
//
|
||||
|
@ -1225,6 +1234,8 @@ PartitionInstallChildHandle (
|
|||
&Private->BlockIo,
|
||||
&gEfiBlockIo2ProtocolGuid,
|
||||
&Private->BlockIo2,
|
||||
&gEfiPartitionInfoProtocolGuid,
|
||||
&Private->PartitionInfo,
|
||||
Private->EspGuid,
|
||||
NULL,
|
||||
NULL
|
||||
|
@ -1236,6 +1247,8 @@ PartitionInstallChildHandle (
|
|||
Private->DevicePath,
|
||||
&gEfiBlockIoProtocolGuid,
|
||||
&Private->BlockIo,
|
||||
&gEfiPartitionInfoProtocolGuid,
|
||||
&Private->PartitionInfo,
|
||||
Private->EspGuid,
|
||||
NULL,
|
||||
NULL
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
of the raw block devices media. Currently "El Torito CD-ROM", Legacy
|
||||
MBR, and GPT partition schemes are supported.
|
||||
|
||||
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -27,6 +27,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|||
#include <Protocol/DriverBinding.h>
|
||||
#include <Protocol/DiskIo.h>
|
||||
#include <Protocol/DiskIo2.h>
|
||||
#include <Protocol/PartitionInfo.h>
|
||||
#include <Library/DebugLib.h>
|
||||
#include <Library/UefiDriverEntryPoint.h>
|
||||
#include <Library/BaseLib.h>
|
||||
|
@ -45,25 +46,26 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|||
//
|
||||
#define PARTITION_PRIVATE_DATA_SIGNATURE SIGNATURE_32 ('P', 'a', 'r', 't')
|
||||
typedef struct {
|
||||
UINT64 Signature;
|
||||
UINT64 Signature;
|
||||
|
||||
EFI_HANDLE Handle;
|
||||
EFI_DEVICE_PATH_PROTOCOL *DevicePath;
|
||||
EFI_BLOCK_IO_PROTOCOL BlockIo;
|
||||
EFI_BLOCK_IO2_PROTOCOL BlockIo2;
|
||||
EFI_BLOCK_IO_MEDIA Media;
|
||||
EFI_BLOCK_IO_MEDIA Media2;//For BlockIO2
|
||||
EFI_HANDLE Handle;
|
||||
EFI_DEVICE_PATH_PROTOCOL *DevicePath;
|
||||
EFI_BLOCK_IO_PROTOCOL BlockIo;
|
||||
EFI_BLOCK_IO2_PROTOCOL BlockIo2;
|
||||
EFI_BLOCK_IO_MEDIA Media;
|
||||
EFI_BLOCK_IO_MEDIA Media2;//For BlockIO2
|
||||
EFI_PARTITION_INFO_PROTOCOL PartitionInfo;
|
||||
|
||||
EFI_DISK_IO_PROTOCOL *DiskIo;
|
||||
EFI_DISK_IO2_PROTOCOL *DiskIo2;
|
||||
EFI_BLOCK_IO_PROTOCOL *ParentBlockIo;
|
||||
EFI_BLOCK_IO2_PROTOCOL *ParentBlockIo2;
|
||||
UINT64 Start;
|
||||
UINT64 End;
|
||||
UINT32 BlockSize;
|
||||
BOOLEAN InStop;
|
||||
EFI_DISK_IO_PROTOCOL *DiskIo;
|
||||
EFI_DISK_IO2_PROTOCOL *DiskIo2;
|
||||
EFI_BLOCK_IO_PROTOCOL *ParentBlockIo;
|
||||
EFI_BLOCK_IO2_PROTOCOL *ParentBlockIo2;
|
||||
UINT64 Start;
|
||||
UINT64 End;
|
||||
UINT32 BlockSize;
|
||||
BOOLEAN InStop;
|
||||
|
||||
EFI_GUID *EspGuid;
|
||||
EFI_GUID *EspGuid;
|
||||
|
||||
} PARTITION_PRIVATE_DATA;
|
||||
|
||||
|
@ -321,10 +323,10 @@ PartitionComponentNameGetControllerName (
|
|||
@param[in] ParentBlockIo2 Parent BlockIo2 interface.
|
||||
@param[in] ParentDevicePath Parent Device Path.
|
||||
@param[in] DevicePathNode Child Device Path node.
|
||||
@param[in] PartitionInfo Child Partition Information interface.
|
||||
@param[in] Start Start Block.
|
||||
@param[in] End End Block.
|
||||
@param[in] BlockSize Child block size.
|
||||
@param[in] InstallEspGuid Flag to install EFI System Partition GUID on handle.
|
||||
|
||||
@retval EFI_SUCCESS A child handle was added.
|
||||
@retval other A child handle was not added.
|
||||
|
@ -340,10 +342,10 @@ PartitionInstallChildHandle (
|
|||
IN EFI_BLOCK_IO2_PROTOCOL *ParentBlockIo2,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *ParentDevicePath,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePathNode,
|
||||
IN EFI_PARTITION_INFO_PROTOCOL *PartitionInfo,
|
||||
IN EFI_LBA Start,
|
||||
IN EFI_LBA End,
|
||||
IN UINT32 BlockSize,
|
||||
IN BOOLEAN InstallEspGuid
|
||||
IN UINT32 BlockSize
|
||||
);
|
||||
|
||||
/**
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
# This external input must be validated carefully to avoid security issue like
|
||||
# buffer overflow, integer overflow.
|
||||
#
|
||||
# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions of the BSD License
|
||||
# which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -82,6 +82,7 @@
|
|||
## BY_START
|
||||
## TO_START
|
||||
gEfiDevicePathProtocolGuid
|
||||
gEfiPartitionInfoProtocolGuid ## BY_START
|
||||
gEfiDiskIoProtocolGuid ## TO_START
|
||||
gEfiDiskIo2ProtocolGuid ## TO_START
|
||||
|
||||
|
|
Loading…
Reference in New Issue