MdeModulePkg: Clean up source files

1. Do not use tab characters
2. No trailing white space in one line
3. All files must end with CRLF

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
This commit is contained in:
Liming Gao
2018-06-27 21:08:52 +08:00
parent ca79bab7af
commit d1102dba72
1010 changed files with 13588 additions and 13588 deletions

View File

@@ -5,7 +5,7 @@
if a driver can be scheduled for execution. The criteria for
schedulability is that the dependency expression is satisfied.
Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -409,7 +409,7 @@ CoreIsSchedulable (
case EFI_DEP_REPLACE_TRUE:
CopyMem (&DriverGuid, Iterator + 1, sizeof (EFI_GUID));
DEBUG ((DEBUG_DISPATCH, " PUSH GUID(%g) = TRUE\n", &DriverGuid));
Status = PushBool (TRUE);
if (EFI_ERROR (Status)) {
DEBUG ((DEBUG_DISPATCH, " RESULT = FALSE (Unexpected error)\n"));

View File

@@ -26,7 +26,7 @@
Depex - Dependency Expresion.
SOR - Schedule On Request - Don't schedule if this bit is set.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -335,13 +335,13 @@ CoreSchedule (
CoreReleaseDispatcherLock ();
DEBUG ((DEBUG_DISPATCH, "Schedule FFS(%g) - EFI_SUCCESS\n", DriverName));
return EFI_SUCCESS;
}
}
DEBUG ((DEBUG_DISPATCH, "Schedule FFS(%g) - EFI_NOT_FOUND\n", DriverName));
return EFI_NOT_FOUND;
}
@@ -418,7 +418,7 @@ CoreDispatcher (
EFI_CORE_DRIVER_ENTRY *DriverEntry;
BOOLEAN ReadyToRun;
EFI_EVENT DxeDispatchEvent;
PERF_FUNCTION_BEGIN ();
if (gDispatcherRunning) {
@@ -512,10 +512,10 @@ CoreDispatcher (
CoreReleaseDispatcherLock ();
if (DriverEntry->IsFvImage) {
//
// Produce a firmware volume block protocol for FvImage so it gets dispatched from.
// Produce a firmware volume block protocol for FvImage so it gets dispatched from.
//
Status = CoreProcessFvImageFile (DriverEntry->Fv, DriverEntry->FvHandle, &DriverEntry->FileName);
} else {
@@ -526,9 +526,9 @@ CoreDispatcher (
sizeof (DriverEntry->ImageHandle)
);
ASSERT (DriverEntry->ImageHandle != NULL);
Status = CoreStartImage (DriverEntry->ImageHandle, NULL, NULL);
REPORT_STATUS_CODE_WITH_EXTENDED_DATA (
EFI_PROGRESS_CODE,
(EFI_SOFTWARE_DXE_CORE | EFI_SW_PC_INIT_END),
@@ -692,17 +692,17 @@ FvHasBeenProcessed (
/**
Remember that Fv protocol on FvHandle has had it's drivers placed on the
mDiscoveredList. This fucntion adds entries on the mFvHandleList if new
mDiscoveredList. This fucntion adds entries on the mFvHandleList if new
entry is different from one in mFvHandleList by checking FvImage Guid.
Items are never removed/freed from the mFvHandleList.
@param FvHandle The handle of a FV that has been processed
@return A point to new added FvHandle entry. If FvHandle with the same FvImage guid
has been added, NULL will return.
has been added, NULL will return.
**/
KNOWN_HANDLE *
KNOWN_HANDLE *
FvIsBeingProcesssed (
IN EFI_HANDLE FvHandle
)
@@ -1247,7 +1247,7 @@ CoreFwVolEventProtocolNotify (
KnownHandle = FvIsBeingProcesssed (FvHandle);
if (KnownHandle == NULL) {
//
// The FV with the same FV name guid has already been processed.
// The FV with the same FV name guid has already been processed.
// So lets skip it!
//
continue;
@@ -1337,7 +1337,7 @@ CoreFwVolEventProtocolNotify (
if (!EFI_ERROR (Status)) {
//
// If SMM depex section is found, this FV image is invalid to be supported.
// ASSERT FALSE to report this FV image.
// ASSERT FALSE to report this FV image.
//
FreePool (DepexBuffer);
ASSERT (FALSE);
@@ -1359,7 +1359,7 @@ CoreFwVolEventProtocolNotify (
);
if (EFI_ERROR (Status)) {
//
// If no depex section, produce a firmware volume block protocol for it so it gets dispatched from.
// If no depex section, produce a firmware volume block protocol for it so it gets dispatched from.
//
CoreProcessFvImageFile (Fv, FvHandle, &NameGuid);
} else {

View File

@@ -3,13 +3,13 @@
//
// It provides an implementation of DXE Core that is compliant with DXE CIS.
//
// Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
// Copyright (c) 2006 - 2018, 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
// http://opensource.org/licenses/bsd-license.php
//
//
// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
//

View File

@@ -1,7 +1,7 @@
// /** @file
// DxeCore Localized Strings and Content
//
// Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>
// Copyright (c) 2013 - 2018, 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
@@ -13,8 +13,8 @@
//
// **/
#string STR_PROPERTIES_MODULE_NAME
#language en-US
#string STR_PROPERTIES_MODULE_NAME
#language en-US
"Core DXE Services Driver"

View File

@@ -2,7 +2,7 @@
The internal header file includes the common header files, defines
internal structure and functions used by DxeCore module.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -198,43 +198,43 @@ typedef struct {
typedef struct {
UINTN Signature;
/// Image handle
EFI_HANDLE Handle;
EFI_HANDLE Handle;
/// Image type
UINTN Type;
UINTN Type;
/// If entrypoint has been called
BOOLEAN Started;
BOOLEAN Started;
/// The image's entry point
EFI_IMAGE_ENTRY_POINT EntryPoint;
EFI_IMAGE_ENTRY_POINT EntryPoint;
/// loaded image protocol
EFI_LOADED_IMAGE_PROTOCOL Info;
EFI_LOADED_IMAGE_PROTOCOL Info;
/// Location in memory
EFI_PHYSICAL_ADDRESS ImageBasePage;
EFI_PHYSICAL_ADDRESS ImageBasePage;
/// Number of pages
UINTN NumberOfPages;
UINTN NumberOfPages;
/// Original fixup data
CHAR8 *FixupData;
CHAR8 *FixupData;
/// Tpl of started image
EFI_TPL Tpl;
EFI_TPL Tpl;
/// Status returned by started image
EFI_STATUS Status;
EFI_STATUS Status;
/// Size of ExitData from started image
UINTN ExitDataSize;
UINTN ExitDataSize;
/// Pointer to exit data from started image
VOID *ExitData;
VOID *ExitData;
/// Pointer to pool allocation for context save/restore
VOID *JumpBuffer;
VOID *JumpBuffer;
/// Pointer to buffer for context save/restore
BASE_LIBRARY_JUMP_BUFFER *JumpContext;
BASE_LIBRARY_JUMP_BUFFER *JumpContext;
/// Machine type from PE image
UINT16 Machine;
UINT16 Machine;
/// EBC Protocol pointer
EFI_EBC_PROTOCOL *Ebc;
EFI_EBC_PROTOCOL *Ebc;
/// Runtime image list
EFI_RUNTIME_IMAGE_ENTRY *RuntimeData;
EFI_RUNTIME_IMAGE_ENTRY *RuntimeData;
/// Pointer to Loaded Image Device Path Protocol
EFI_DEVICE_PATH_PROTOCOL *LoadedImageDevicePath;
EFI_DEVICE_PATH_PROTOCOL *LoadedImageDevicePath;
/// PeCoffLoader ImageContext
PE_COFF_LOADER_IMAGE_CONTEXT ImageContext;
PE_COFF_LOADER_IMAGE_CONTEXT ImageContext;
/// Status returned by LoadImage() service.
EFI_STATUS LoadImageStatus;
} LOADED_IMAGE_PRIVATE_DATA;
@@ -1180,8 +1180,8 @@ CoreConnectHandlesByKey (
@retval EFI_NOT_FOUND 1) There are no EFI_DRIVER_BINDING_PROTOCOL instances
present in the system.
2) No drivers were connected to ControllerHandle.
@retval EFI_SECURITY_VIOLATION
The user has no permission to start UEFI device drivers on the device path
@retval EFI_SECURITY_VIOLATION
The user has no permission to start UEFI device drivers on the device path
associated with the ControllerHandle or specified by the RemainingDevicePath.
**/
@@ -1426,10 +1426,10 @@ CoreInternalFreePool (
@retval EFI_LOAD_ERROR Image was not loaded because the image format was corrupt or not
understood.
@retval EFI_DEVICE_ERROR Image was not loaded because the device returned a read error.
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
image from being loaded. NULL is returned in *ImageHandle.
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
platform policy specifies that the image should not be started.
**/
@@ -1836,7 +1836,7 @@ CoreGetMemorySpaceDescriptor (
@param Attributes Specified attributes
@retval EFI_SUCCESS The attributes were set for the memory region.
@retval EFI_INVALID_PARAMETER Length is zero.
@retval EFI_INVALID_PARAMETER Length is zero.
@retval EFI_UNSUPPORTED The processor does not support one or more bytes of the memory
resource range specified by BaseAddress and Length.
@retval EFI_UNSUPPORTED The bit mask of attributes is not support for the memory resource
@@ -2671,7 +2671,7 @@ CoreReleaseLock (
);
/**
Read data from Firmware Block by FVB protocol Read.
Read data from Firmware Block by FVB protocol Read.
The data may cross the multi block ranges.
@param Fvb The FW_VOL_BLOCK_PROTOCOL instance from which to read data.

View File

@@ -2,16 +2,16 @@
# This is core module in DXE phase.
#
# It provides an implementation of DXE Core that is compliant with DXE CIS.
#
#
# Copyright (c) 2006 - 2018, 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
# http://opensource.org/licenses/bsd-license.php
#
#
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
#
##
[Defines]
@@ -182,7 +182,7 @@
gEfiWatchdogTimerArchProtocolGuid ## CONSUMES
[FeaturePcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport ## CONSUMES
gEfiMdeModulePkgTokenSpaceGuid.PcdFrameworkCompatibilitySupport ## CONSUMES
[Pcd]
gEfiMdeModulePkgTokenSpaceGuid.PcdLoadFixAddressBootTimeCodePageNumber ## SOMETIMES_CONSUMES

View File

@@ -260,7 +260,7 @@ DxeMain (
}
Status = InitializeCpuExceptionHandlersEx (VectorInfoList, NULL);
ASSERT_EFI_ERROR (Status);
//
// Initialize Debug Agent to support source level debug in DXE phase
//
@@ -532,7 +532,7 @@ DxeMain (
REPORT_STATUS_CODE (
EFI_ERROR_CODE | EFI_ERROR_MAJOR,
(EFI_SOFTWARE_DXE_CORE | EFI_SW_DXE_CORE_EC_NO_ARCH)
);
);
}
ASSERT_EFI_ERROR (Status);
@@ -780,7 +780,7 @@ CoreExitBootServices (
Status = CoreTerminateMemoryMap (MapKey);
if (EFI_ERROR (Status)) {
//
// Notify other drivers that ExitBootServices fail
// Notify other drivers that ExitBootServices fail
//
CoreNotifySignalList (&gEventExitBootServicesFailedGuid);
return Status;

View File

@@ -3,7 +3,7 @@
the Dxe Core. The mArchProtocols[] array represents a list of
events that represent the Architectural Protocols.
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -206,7 +206,7 @@ GenericProtocolNotify (
}
/**
Creates an event for each entry in a table that is fired everytime a Protocol
Creates an event for each entry in a table that is fired everytime a Protocol
of a specific type is installed.
@param Entry Pointer to EFI_CORE_PROTOCOL_NOTIFY_ENTRY.
@@ -245,7 +245,7 @@ CoreNotifyOnProtocolEntryTable (
}
/**
Creates an events for the Architectural Protocols and the optional protocols
Creates an events for the Architectural Protocols and the optional protocols
that are fired everytime a Protocol of a specific type is installed.
**/

View File

@@ -1,7 +1,7 @@
/** @file
Task priority (TPL) functions.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -28,7 +28,7 @@ CoreSetInterruptState (
{
EFI_STATUS Status;
BOOLEAN InSmm;
if (gCpu == NULL) {
return;
}

View File

@@ -3,7 +3,7 @@
Layers on top of Firmware Block protocol to produce a file abstraction
of FV based files.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -34,8 +34,8 @@ FV_DEVICE mFvDevice = {
FvReadFile,
FvReadFileSection,
FvWriteFile,
FvGetNextFile,
sizeof (UINTN),
FvGetNextFile,
sizeof (UINTN),
NULL,
FvGetVolumeInfo,
FvSetVolumeInfo
@@ -56,7 +56,7 @@ FV_DEVICE mFvDevice = {
// FFS helper functions
//
/**
Read data from Firmware Block by FVB protocol Read.
Read data from Firmware Block by FVB protocol Read.
The data may cross the multi block ranges.
@param Fvb The FW_VOL_BLOCK_PROTOCOL instance from which to read data.
@@ -86,7 +86,7 @@ ReadFvbData (
UINTN BlockIndex;
UINTN ReadDataSize;
EFI_STATUS Status;
//
// Try read data in current block
//
@@ -102,7 +102,7 @@ ReadFvbData (
//
return Status;
}
//
// Data crosses the blocks, read data from next block
//
@@ -118,7 +118,7 @@ ReadFvbData (
//
// Read data from the crossing blocks
//
BlockIndex = 0;
BlockIndex = 0;
while (BlockIndex < NumberOfBlocks && DataSize >= BlockSize) {
Status = Fvb->Read (Fvb, *StartLba + BlockIndex, 0, &BlockSize, Data);
if (EFI_ERROR (Status)) {
@@ -128,20 +128,20 @@ ReadFvbData (
DataSize -= BlockSize;
BlockIndex ++;
}
//
// Data doesn't exceed the current block range.
//
if (DataSize < BlockSize) {
break;
}
//
// Data must be got from the next block range.
//
*StartLba += NumberOfBlocks;
}
//
// read the remaining data
//
@@ -151,7 +151,7 @@ ReadFvbData (
return Status;
}
}
//
// Update Lba and Offset used by the following read.
//
@@ -189,7 +189,7 @@ GetFwVolHeader (
EFI_LBA StartLba;
UINTN Offset;
UINT8 *Buffer;
//
// Read the standard FV header
//
@@ -418,9 +418,9 @@ FvCheck (
HeaderSize = 0;
}
}
//
// read the FV data
// read the FV data
//
for (; Index < BlockMap->NumBlocks; Index ++) {
Status = Fvb->Read (Fvb,
@@ -715,7 +715,7 @@ NotifyFwVolBlock (
// Inherit the authentication status from FVB.
//
FvDevice->AuthenticationStatus = GetFvbAuthenticationStatus (Fvb);
if (!EFI_ERROR (FvCheck (FvDevice))) {
//
// Install an New FV protocol on the existing handle

View File

@@ -4,7 +4,7 @@
It consumes FV HOBs and creates read-only Firmare Volume Block protocol
instances for each of them.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -542,7 +542,7 @@ ProduceFVBProtocolOnBuffer (
CoreFreePool (FvbDev);
return EFI_OUT_OF_RESOURCES;
}
//
// Last, fill in the cache with the linear address of the blocks
//
@@ -582,11 +582,11 @@ ProduceFVBProtocolOnBuffer (
return EFI_OUT_OF_RESOURCES;
}
CopyGuid (
&((FV_PIWG_DEVICE_PATH *)FvbDev->DevicePath)->FvDevPath.FvName,
&((FV_PIWG_DEVICE_PATH *)FvbDev->DevicePath)->FvDevPath.FvName,
(GUID *)(UINTN)(BaseAddress + FwVolHeader->ExtHeaderOffset)
);
}
//
//
// Attach FvVolBlock Protocol to new handle

View File

@@ -126,7 +126,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED CONST CHAR8 *mGcdIoTypeNames[] = {
"NonExist", // EfiGcdIoTypeNonExistent
"Reserved", // EfiGcdIoTypeReserved
"I/O ", // EfiGcdIoTypeIo
"Unknown " // EfiGcdIoTypeMaximum
"Unknown " // EfiGcdIoTypeMaximum
};
///
@@ -146,7 +146,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED CONST CHAR8 *mGcdAllocationTypeNames[] = {
PcdDebugPrintErrorLevel has the DEBUG_GCD bit set.
@param InitialMap TRUE if the initial GCD Memory Map is being dumped. Otherwise, FALSE.
**/
VOID
EFIAPI
@@ -159,7 +159,7 @@ CoreDumpGcdMemorySpaceMap (
UINTN NumberOfDescriptors;
EFI_GCD_MEMORY_SPACE_DESCRIPTOR *MemorySpaceMap;
UINTN Index;
Status = CoreGetMemorySpaceMap (&NumberOfDescriptors, &MemorySpaceMap);
ASSERT (Status == EFI_SUCCESS && MemorySpaceMap != NULL);
@@ -169,11 +169,11 @@ CoreDumpGcdMemorySpaceMap (
DEBUG ((DEBUG_GCD, "GCDMemType Range Capabilities Attributes \n"));
DEBUG ((DEBUG_GCD, "========== ================================= ================ ================\n"));
for (Index = 0; Index < NumberOfDescriptors; Index++) {
DEBUG ((DEBUG_GCD, "%a %016lx-%016lx %016lx %016lx%c\n",
DEBUG ((DEBUG_GCD, "%a %016lx-%016lx %016lx %016lx%c\n",
mGcdMemoryTypeNames[MIN (MemorySpaceMap[Index].GcdMemoryType, EfiGcdMemoryTypeMaximum)],
MemorySpaceMap[Index].BaseAddress,
MemorySpaceMap[Index].BaseAddress,
MemorySpaceMap[Index].BaseAddress + MemorySpaceMap[Index].Length - 1,
MemorySpaceMap[Index].Capabilities,
MemorySpaceMap[Index].Capabilities,
MemorySpaceMap[Index].Attributes,
MemorySpaceMap[Index].ImageHandle == NULL ? ' ' : '*'
));
@@ -184,11 +184,11 @@ CoreDumpGcdMemorySpaceMap (
}
/**
Dump the entire contents if the GCD I/O Space Map using DEBUG() macros when
Dump the entire contents if the GCD I/O Space Map using DEBUG() macros when
PcdDebugPrintErrorLevel has the DEBUG_GCD bit set.
@param InitialMap TRUE if the initial GCD I/O Map is being dumped. Otherwise, FALSE.
**/
VOID
EFIAPI
@@ -201,20 +201,20 @@ CoreDumpGcdIoSpaceMap (
UINTN NumberOfDescriptors;
EFI_GCD_IO_SPACE_DESCRIPTOR *IoSpaceMap;
UINTN Index;
Status = CoreGetIoSpaceMap (&NumberOfDescriptors, &IoSpaceMap);
ASSERT (Status == EFI_SUCCESS && IoSpaceMap != NULL);
if (InitialMap) {
DEBUG ((DEBUG_GCD, "GCD:Initial GCD I/O Space Map\n"));
}
}
DEBUG ((DEBUG_GCD, "GCDIoType Range \n"));
DEBUG ((DEBUG_GCD, "========== =================================\n"));
for (Index = 0; Index < NumberOfDescriptors; Index++) {
DEBUG ((DEBUG_GCD, "%a %016lx-%016lx%c\n",
DEBUG ((DEBUG_GCD, "%a %016lx-%016lx%c\n",
mGcdIoTypeNames[MIN (IoSpaceMap[Index].GcdIoType, EfiGcdIoTypeMaximum)],
IoSpaceMap[Index].BaseAddress,
IoSpaceMap[Index].BaseAddress,
IoSpaceMap[Index].BaseAddress + IoSpaceMap[Index].Length - 1,
IoSpaceMap[Index].ImageHandle == NULL ? ' ' : '*'
));
@@ -223,11 +223,11 @@ CoreDumpGcdIoSpaceMap (
FreePool (IoSpaceMap);
);
}
/**
Validate resource descriptor HOB's attributes.
If Attributes includes some memory resource's settings, it should include
If Attributes includes some memory resource's settings, it should include
the corresponding capabilites also.
@param Attributes Resource descriptor HOB attributes.
@@ -876,13 +876,13 @@ CoreConvertSpace (
//
CpuArchAttributes = ConverToCpuArchAttributes (Attributes);
//
// CPU arch attributes include page attributes and cache attributes.
// CPU arch attributes include page attributes and cache attributes.
// Only page attributes supports to be cleared, but not cache attributes.
// Caller is expected to use GetMemorySpaceDescriptor() to get the current
// attributes, AND/OR attributes, and then calls SetMemorySpaceAttributes()
// to set the new attributes.
// So 0 CPU arch attributes should not happen as memory should always have
// a cache attribute (no matter UC or WB, etc).
// a cache attribute (no matter UC or WB, etc).
//
// Here, 0 CPU arch attributes will be filtered to be compatible with the
// case that caller just calls SetMemorySpaceAttributes() with none CPU
@@ -1293,7 +1293,7 @@ Done:
DEBUG ((DEBUG_GCD, " (BaseAddress = %016lx)", *BaseAddress));
}
DEBUG ((DEBUG_GCD, "\n"));
if ((Operation & GCD_MEMORY_SPACE_OPERATION) != 0) {
CoreReleaseGcdMemoryLock ();
CoreDumpGcdMemorySpaceMap (FALSE);
@@ -1384,7 +1384,7 @@ CoreAllocateMemorySpace (
DEBUG ((DEBUG_GCD, " Alignment = %016lx\n", LShiftU64 (1, Alignment)));
DEBUG ((DEBUG_GCD, " ImageHandle = %p\n", ImageHandle));
DEBUG ((DEBUG_GCD, " DeviceHandle = %p\n", DeviceHandle));
return CoreAllocateSpace (
GCD_ALLOCATE_MEMORY_OPERATION,
GcdAllocateType,
@@ -1516,7 +1516,7 @@ CoreRemoveMemorySpace (
)
{
DEBUG ((DEBUG_GCD, "GCD:RemoveMemorySpace(Base=%016lx,Length=%016lx)\n", BaseAddress, Length));
return CoreConvertSpace (GCD_REMOVE_MEMORY_OPERATION, (EFI_GCD_MEMORY_TYPE) 0, (EFI_GCD_IO_TYPE) 0, BaseAddress, Length, 0, 0);
}
@@ -1605,7 +1605,7 @@ CoreGetMemorySpaceDescriptor (
@param Attributes Specified attributes
@retval EFI_SUCCESS The attributes were set for the memory region.
@retval EFI_INVALID_PARAMETER Length is zero.
@retval EFI_INVALID_PARAMETER Length is zero.
@retval EFI_UNSUPPORTED The processor does not support one or more bytes of the memory
resource range specified by BaseAddress and Length.
@retval EFI_UNSUPPORTED The bit mask of attributes is not support for the memory resource
@@ -1762,7 +1762,7 @@ CoreAddIoSpace (
{
DEBUG ((DEBUG_GCD, "GCD:AddIoSpace(Base=%016lx,Length=%016lx)\n", BaseAddress, Length));
DEBUG ((DEBUG_GCD, " GcdIoType = %a\n", mGcdIoTypeNames[MIN (GcdIoType, EfiGcdIoTypeMaximum)]));
//
// Make sure parameters are valid
//
@@ -1812,7 +1812,7 @@ CoreAllocateIoSpace (
DEBUG ((DEBUG_GCD, " Alignment = %016lx\n", LShiftU64 (1, Alignment)));
DEBUG ((DEBUG_GCD, " ImageHandle = %p\n", ImageHandle));
DEBUG ((DEBUG_GCD, " DeviceHandle = %p\n", DeviceHandle));
return CoreAllocateSpace (
GCD_ALLOCATE_IO_OPERATION,
GcdAllocateType,
@@ -1868,7 +1868,7 @@ CoreRemoveIoSpace (
)
{
DEBUG ((DEBUG_GCD, "GCD:RemoveIoSpace(Base=%016lx,Length=%016lx)\n", BaseAddress, Length));
return CoreConvertSpace (GCD_REMOVE_IO_OPERATION, (EFI_GCD_MEMORY_TYPE) 0, (EFI_GCD_IO_TYPE) 0, BaseAddress, Length, 0, 0);
}
@@ -2138,15 +2138,15 @@ CoreInitializeMemoryServices (
// Cache the PHIT HOB for later use
//
PhitHob = Hob.HandoffInformationTable;
if (PcdGet64(PcdLoadModuleAtFixAddressEnable) != 0) {
ReservedCodePageNumber = PcdGet32(PcdLoadFixAddressRuntimeCodePageNumber);
ReservedCodePageNumber += PcdGet32(PcdLoadFixAddressBootTimeCodePageNumber);
//
// cache the Top address for loading modules at Fixed Address
//
gLoadModuleAtFixAddressConfigurationTable.DxeCodeTopAddress = PhitHob->EfiMemoryTop
ReservedCodePageNumber = PcdGet32(PcdLoadFixAddressRuntimeCodePageNumber);
ReservedCodePageNumber += PcdGet32(PcdLoadFixAddressBootTimeCodePageNumber);
//
// cache the Top address for loading modules at Fixed Address
//
gLoadModuleAtFixAddressConfigurationTable.DxeCodeTopAddress = PhitHob->EfiMemoryTop
+ EFI_PAGES_TO_SIZE(ReservedCodePageNumber);
}
//
@@ -2213,14 +2213,14 @@ CoreInitializeMemoryServices (
Length = PageAlignLength (ResourceHob->PhysicalStart + ResourceHob->ResourceLength - BaseAddress);
if (Length < MinimalMemorySizeNeeded) {
//
// If that range is not large enough to intialize the DXE Core, then
// If that range is not large enough to intialize the DXE Core, then
// Compute range between PHIT EfiFreeMemoryBottom and PHIT EfiFreeMemoryTop
//
BaseAddress = PageAlignAddress (PhitHob->EfiFreeMemoryBottom);
Length = PageAlignLength (PhitHob->EfiFreeMemoryTop - BaseAddress);
if (Length < MinimalMemorySizeNeeded) {
//
// If that range is not large enough to intialize the DXE Core, then
// If that range is not large enough to intialize the DXE Core, then
// Compute range between the start of the Resource Descriptor HOB and the start of the HOB List
//
BaseAddress = PageAlignAddress (ResourceHob->PhysicalStart);
@@ -2297,7 +2297,7 @@ CoreInitializeMemoryServices (
//
BaseAddress = TestedMemoryBaseAddress;
Length = TestedMemoryLength;
Attributes = ResourceHob->ResourceAttribute;
Attributes = ResourceHob->ResourceAttribute;
HighAddress = ResourceHob->PhysicalStart;
}
}
@@ -2403,7 +2403,7 @@ CoreInitializeGcdServices (
InsertHeadList (&mGcdMemorySpaceMap, &Entry->Link);
CoreDumpGcdMemorySpaceMap (TRUE);
//
// Initialize the GCD I/O Space Map
//
@@ -2415,7 +2415,7 @@ CoreInitializeGcdServices (
InsertHeadList (&mGcdIoSpaceMap, &Entry->Link);
CoreDumpGcdIoSpaceMap (TRUE);
//
// Walk the HOB list and add all resource descriptors to the GCD
//

View File

@@ -1,7 +1,7 @@
/** @file
Support functions to connect/disconnect UEFI Driver model Protocol
Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -40,8 +40,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@retval EFI_NOT_FOUND 1) There are no EFI_DRIVER_BINDING_PROTOCOL instances
present in the system.
2) No drivers were connected to ControllerHandle.
@retval EFI_SECURITY_VIOLATION
The user has no permission to start UEFI device drivers on the device path
@retval EFI_SECURITY_VIOLATION
The user has no permission to start UEFI device drivers on the device path
associated with the ControllerHandle or specified by the RemainingDevicePath.
**/
@@ -112,7 +112,7 @@ CoreConnectController (
}
}
}
Handle = ControllerHandle;
//

View File

@@ -1,7 +1,7 @@
/** @file
UEFI handle & protocol handling.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -604,7 +604,7 @@ CoreInstallMultipleProtocolInterfaces (
CoreUninstallProtocolInterface (*Handle, Protocol, Interface);
}
VA_END (Args);
*Handle = OldHandle;
}
@@ -1314,7 +1314,7 @@ Done:
form of EFI_OPEN_PROTOCOL_INFORMATION_ENTRY structures.
@param EntryCount Number of EntryBuffer entries
@retval EFI_SUCCESS The open protocol information was returned in EntryBuffer,
@retval EFI_SUCCESS The open protocol information was returned in EntryBuffer,
and the number of entries was returned EntryCount.
@retval EFI_NOT_FOUND Handle does not support the protocol specified by Protocol.
@retval EFI_OUT_OF_RESOURCES There are not enough resources available to allocate EntryBuffer.

View File

@@ -1,7 +1,7 @@
/** @file
Support functions for managing protocol.
Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -26,7 +26,7 @@ typedef struct {
/// All handles list of IHANDLE
LIST_ENTRY AllHandles;
/// List of PROTOCOL_INTERFACE's for this handle
LIST_ENTRY Protocols;
LIST_ENTRY Protocols;
UINTN LocateRequest;
/// The Handle Database Key value when this handle was last created or modified
UINT64 Key;
@@ -44,13 +44,13 @@ typedef struct {
typedef struct {
UINTN Signature;
/// Link Entry inserted to mProtocolDatabase
LIST_ENTRY AllEntries;
LIST_ENTRY AllEntries;
/// ID of the protocol
EFI_GUID ProtocolID;
EFI_GUID ProtocolID;
/// All protocol interfaces
LIST_ENTRY Protocols;
LIST_ENTRY Protocols;
/// Registerd notification handlers
LIST_ENTRY Notify;
LIST_ENTRY Notify;
} PROTOCOL_ENTRY;
@@ -63,17 +63,17 @@ typedef struct {
typedef struct {
UINTN Signature;
/// Link on IHANDLE.Protocols
LIST_ENTRY Link;
LIST_ENTRY Link;
/// Back pointer
IHANDLE *Handle;
IHANDLE *Handle;
/// Link on PROTOCOL_ENTRY.Protocols
LIST_ENTRY ByProtocol;
LIST_ENTRY ByProtocol;
/// The protocol ID
PROTOCOL_ENTRY *Protocol;
PROTOCOL_ENTRY *Protocol;
/// The interface value
VOID *Interface;
VOID *Interface;
/// OPEN_PROTOCOL_DATA list
LIST_ENTRY OpenList;
LIST_ENTRY OpenList;
UINTN OpenListCount;
} PROTOCOL_INTERFACE;
@@ -83,7 +83,7 @@ typedef struct {
typedef struct {
UINTN Signature;
///Link on PROTOCOL_INTERFACE.OpenList
LIST_ENTRY Link;
LIST_ENTRY Link;
EFI_HANDLE AgentHandle;
EFI_HANDLE ControllerHandle;
@@ -101,11 +101,11 @@ typedef struct {
UINTN Signature;
PROTOCOL_ENTRY *Protocol;
/// All notifications for this protocol
LIST_ENTRY Link;
LIST_ENTRY Link;
/// Event to notify
EFI_EVENT Event;
EFI_EVENT Event;
/// Last position notified
LIST_ENTRY *Position;
LIST_ENTRY *Position;
} PROTOCOL_NOTIFY;

View File

@@ -1,7 +1,7 @@
/** @file
Locate handle functions
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -457,7 +457,7 @@ CoreLocateDevicePath (
if (IsDevicePathEndInstance (TmpDevicePath)) {
//
// If DevicePath is a multi-instance device path,
// the function will operate on the first instance
// the function will operate on the first instance
//
break;
}
@@ -522,7 +522,7 @@ CoreLocateDevicePath (
return EFI_INVALID_PARAMETER;
}
*Device = BestDevice;
//
// Return the remaining part of the device path
//

View File

@@ -1,7 +1,7 @@
/** @file
Core image handling services to load and unload PeImage.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -73,7 +73,7 @@ LOADED_IMAGE_PRIVATE_DATA mCorePrivateImage = {
//
// The field is define for Loading modules at fixed address feature to tracker the PEI code
// memory range usage. It is a bit mapped array in which every bit indicates the correspoding memory page
// available or not.
// available or not.
//
GLOBAL_REMOVE_IF_UNREFERENCED UINT64 *mDxeCodeMemoryRangeUsageBitMap=NULL;
@@ -108,7 +108,7 @@ GetMachineTypeName (
)
{
UINTN Index;
for (Index = 0; Index < sizeof(mMachineTypeInfo)/sizeof(mMachineTypeInfo[0]); Index++) {
if (mMachineTypeInfo[Index].MachineType == MachineType) {
return mMachineTypeInfo[Index].MachineTypeName;
@@ -138,7 +138,7 @@ CoreInitializeImageServices (
UINT64 DxeCoreImageLength;
VOID *DxeCoreEntryPoint;
EFI_PEI_HOB_POINTERS DxeCoreHob;
//
// Searching for image hob
//
@@ -158,7 +158,7 @@ CoreInitializeImageServices (
DxeCoreImageLength = DxeCoreHob.MemoryAllocationModule->MemoryAllocationHeader.MemoryLength;
DxeCoreEntryPoint = (VOID *) (UINTN) DxeCoreHob.MemoryAllocationModule->EntryPoint;
gDxeCoreFileName = &DxeCoreHob.MemoryAllocationModule->ModuleName;
//
// Initialize the fields for an internal driver
//
@@ -263,11 +263,11 @@ CoreReadImageFile (
/**
To check memory usage bit map array to figure out if the memory range the image will be loaded in is available or not. If
memory range is available, the function will mark the corresponding bits to 1 which indicates the memory range is used.
The function is only invoked when load modules at fixed address feature is enabled.
The function is only invoked when load modules at fixed address feature is enabled.
@param ImageBase The base address the image will be loaded at.
@param ImageSize The size of the image
@retval EFI_SUCCESS The memory range the image will be loaded in is available
@retval EFI_NOT_FOUND The memory range the image will be loaded in is not available
**/
@@ -278,23 +278,23 @@ CheckAndMarkFixLoadingMemoryUsageBitMap (
)
{
UINT32 DxeCodePageNumber;
UINT64 DxeCodeSize;
UINT64 DxeCodeSize;
EFI_PHYSICAL_ADDRESS DxeCodeBase;
UINTN BaseOffsetPageNumber;
UINTN TopOffsetPageNumber;
UINTN Index;
//
// The DXE code range includes RuntimeCodePage range and Boot time code range.
//
//
DxeCodePageNumber = PcdGet32(PcdLoadFixAddressRuntimeCodePageNumber);
DxeCodePageNumber += PcdGet32(PcdLoadFixAddressBootTimeCodePageNumber);
DxeCodeSize = EFI_PAGES_TO_SIZE(DxeCodePageNumber);
DxeCodeBase = gLoadModuleAtFixAddressConfigurationTable.DxeCodeTopAddress - DxeCodeSize;
//
// If the memory usage bit map is not initialized, do it. Every bit in the array
// If the memory usage bit map is not initialized, do it. Every bit in the array
// indicate the status of the corresponding memory page, available or not
//
//
if (mDxeCodeMemoryRangeUsageBitMap == NULL) {
mDxeCodeMemoryRangeUsageBitMap = AllocateZeroPool(((DxeCodePageNumber/64) + 1)*sizeof(UINT64));
}
@@ -309,11 +309,11 @@ CheckAndMarkFixLoadingMemoryUsageBitMap (
//
if (gLoadModuleAtFixAddressConfigurationTable.DxeCodeTopAddress < ImageBase + ImageSize ||
DxeCodeBase > ImageBase) {
return EFI_NOT_FOUND;
}
return EFI_NOT_FOUND;
}
//
// Test if the memory is avalaible or not.
//
//
BaseOffsetPageNumber = EFI_SIZE_TO_PAGES((UINT32)(ImageBase - DxeCodeBase));
TopOffsetPageNumber = EFI_SIZE_TO_PAGES((UINT32)(ImageBase + ImageSize - DxeCodeBase));
for (Index = BaseOffsetPageNumber; Index < TopOffsetPageNumber; Index ++) {
@@ -321,17 +321,17 @@ CheckAndMarkFixLoadingMemoryUsageBitMap (
//
// This page is already used.
//
return EFI_NOT_FOUND;
return EFI_NOT_FOUND;
}
}
//
// Being here means the memory range is available. So mark the bits for the memory range
//
//
for (Index = BaseOffsetPageNumber; Index < TopOffsetPageNumber; Index ++) {
mDxeCodeMemoryRangeUsageBitMap[Index / 64] |= LShiftU64(1, (Index % 64));
}
return EFI_SUCCESS;
return EFI_SUCCESS;
}
/**
@@ -358,10 +358,10 @@ GetPeCoffImageFixLoadingAssignedAddress(
UINT16 NumberOfSections;
IMAGE_FILE_HANDLE *Handle;
UINT64 ValueInSectionHeader;
Status = EFI_NOT_FOUND;
//
// Get PeHeader pointer
//
@@ -395,30 +395,30 @@ GetPeCoffImageFixLoadingAssignedAddress(
}
Status = EFI_NOT_FOUND;
if ((SectionHeader.Characteristics & EFI_IMAGE_SCN_CNT_CODE) == 0) {
//
// Build tool will save the address in PointerToRelocations & PointerToLineNumbers fields in the first section header
// that doesn't point to code section in image header, as well as ImageBase field of image header. And there is an
// assumption that when the feature is enabled, if a module is assigned a loading address by tools, PointerToRelocations
// that doesn't point to code section in image header, as well as ImageBase field of image header. And there is an
// assumption that when the feature is enabled, if a module is assigned a loading address by tools, PointerToRelocations
// & PointerToLineNumbers fields should NOT be Zero, or else, these 2 fields should be set to Zero
//
ValueInSectionHeader = ReadUnaligned64((UINT64*)&SectionHeader.PointerToRelocations);
if (ValueInSectionHeader != 0) {
//
// When the feature is configured as load module at fixed absolute address, the ImageAddress field of ImageContext
// When the feature is configured as load module at fixed absolute address, the ImageAddress field of ImageContext
// hold the spcified address. If the feature is configured as load module at fixed offset, ImageAddress hold an offset
// relative to top address
//
if ((INT64)PcdGet64(PcdLoadModuleAtFixAddressEnable) < 0) {
ImageContext->ImageAddress = gLoadModuleAtFixAddressConfigurationTable.DxeCodeTopAddress + (INT64)(INTN)ImageContext->ImageAddress;
ImageContext->ImageAddress = gLoadModuleAtFixAddressConfigurationTable.DxeCodeTopAddress + (INT64)(INTN)ImageContext->ImageAddress;
}
//
// Check if the memory range is available.
//
Status = CheckAndMarkFixLoadingMemoryUsageBitMap (ImageContext->ImageAddress, (UINTN)(ImageContext->ImageSize + ImageContext->SectionAlignment));
}
break;
break;
}
SectionHeaderOffset += sizeof (EFI_IMAGE_SECTION_HEADER);
}
@@ -541,17 +541,17 @@ CoreLoadPeImage (
if (EFI_ERROR (Status)) {
//
// If the code memory is not ready, invoke CoreAllocatePage with AllocateAnyPages to load the driver.
//
// If the code memory is not ready, invoke CoreAllocatePage with AllocateAnyPages to load the driver.
//
DEBUG ((EFI_D_INFO|EFI_D_LOAD, "LOADING MODULE FIXED ERROR: Loading module at fixed address failed since specified memory is not available.\n"));
Status = CoreAllocatePages (
AllocateAnyPages,
(EFI_MEMORY_TYPE) (Image->ImageContext.ImageCodeMemoryType),
Image->NumberOfPages,
&Image->ImageContext.ImageAddress
);
}
);
}
} else {
if (Image->ImageContext.ImageAddress >= 0x100000 || Image->ImageContext.RelocationsStripped) {
Status = CoreAllocatePages (
@@ -1030,10 +1030,10 @@ CoreUnloadAndCloseImage (
@retval EFI_LOAD_ERROR Image was not loaded because the image format was corrupt or not
understood.
@retval EFI_DEVICE_ERROR Image was not loaded because the device returned a read error.
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
image from being loaded. NULL is returned in *ImageHandle.
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
platform policy specifies that the image should not be started.
**/
@@ -1145,7 +1145,7 @@ CoreLoadImageCommon (
// Get the source file buffer by its device path.
//
FHand.Source = GetFileBufferByFilePath (
BootPolicy,
BootPolicy,
FilePath,
&FHand.SourceSize,
&AuthenticationStatus
@@ -1417,10 +1417,10 @@ Done:
@retval EFI_LOAD_ERROR Image was not loaded because the image format was corrupt or not
understood.
@retval EFI_DEVICE_ERROR Image was not loaded because the device returned a read error.
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
image from being loaded. NULL is returned in *ImageHandle.
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
platform policy specifies that the image should not be started.
**/
@@ -1453,10 +1453,10 @@ CoreLoadImage (
EFI_LOAD_PE_IMAGE_ATTRIBUTE_RUNTIME_REGISTRATION | EFI_LOAD_PE_IMAGE_ATTRIBUTE_DEBUG_IMAGE_INFO_TABLE_REGISTRATION
);
Handle = NULL;
Handle = NULL;
if (!EFI_ERROR (Status)) {
//
// ImageHandle will be valid only Status is success.
// ImageHandle will be valid only Status is success.
//
Handle = *ImageHandle;
}
@@ -1498,10 +1498,10 @@ CoreLoadImage (
@retval EFI_LOAD_ERROR Image was not loaded because the image format was corrupt or not
understood.
@retval EFI_DEVICE_ERROR Image was not loaded because the device returned a read error.
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
image from being loaded. NULL is returned in *ImageHandle.
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
platform policy specifies that the image should not be started.
**/
@@ -1538,10 +1538,10 @@ CoreLoadImageEx (
Attribute
);
Handle = NULL;
Handle = NULL;
if (!EFI_ERROR (Status)) {
//
// ImageHandle will be valid only Status is success.
// ImageHandle will be valid only Status is success.
//
Handle = *ImageHandle;
}

View File

@@ -1,7 +1,7 @@
/** @file
Data structure and functions to load and unload PeImage.
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -21,7 +21,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
typedef struct {
UINTN Signature;
/// Image handle
EFI_HANDLE Handle;
EFI_HANDLE Handle;
EFI_PE32_IMAGE_PROTOCOL Pe32Image;
} LOAD_PE32_IMAGE_PRIVATE_DATA;
@@ -70,10 +70,10 @@ typedef struct {
@retval EFI_LOAD_ERROR Image was not loaded because the image format was corrupt or not
understood.
@retval EFI_DEVICE_ERROR Image was not loaded because the device returned a read error.
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
@retval EFI_ACCESS_DENIED Image was not loaded because the platform policy prohibits the
image from being loaded. NULL is returned in *ImageHandle.
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
@retval EFI_SECURITY_VIOLATION Image was loaded and an ImageHandle was created with a
valid EFI_LOADED_IMAGE_PROTOCOL. However, the current
platform policy specifies that the image should not be started.
**/

View File

@@ -1,7 +1,7 @@
/** @file
Support routines for UEFI memory profile.
Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2014 - 2018, 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
@@ -76,10 +76,10 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINTN mMemoryProfileDriverPathS
@param[in, out] ProfileSize On entry, points to the size in bytes of the ProfileBuffer.
On return, points to the size of the data returned in ProfileBuffer.
@param[out] ProfileBuffer Profile buffer.
@return EFI_SUCCESS Get the memory profile data successfully.
@return EFI_UNSUPPORTED Memory profile is unsupported.
@return EFI_BUFFER_TO_SMALL The ProfileSize is too small for the resulting data.
@return EFI_BUFFER_TO_SMALL The ProfileSize is too small for the resulting data.
ProfileSize is updated with the size required.
**/
@@ -514,7 +514,7 @@ NeedRecordThisDriver (
//
return TRUE;
}
//
// Record FilePath without END node.
//
@@ -1572,10 +1572,10 @@ MemoryProfileCopyData (
@param[in, out] ProfileSize On entry, points to the size in bytes of the ProfileBuffer.
On return, points to the size of the data returned in ProfileBuffer.
@param[out] ProfileBuffer Profile buffer.
@return EFI_SUCCESS Get the memory profile data successfully.
@return EFI_UNSUPPORTED Memory profile is unsupported.
@return EFI_BUFFER_TO_SMALL The ProfileSize is too small for the resulting data.
@return EFI_BUFFER_TO_SMALL The ProfileSize is too small for the resulting data.
ProfileSize is updated with the size required.
**/

View File

@@ -1,7 +1,7 @@
/** @file
UEFI Memory page management functions.
Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2007 - 2018, 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
@@ -93,7 +93,7 @@ EFI_MEMORY_TYPE_INFORMATION gMemoryTypeInformation[EfiMaxMemoryType + 1] = {
};
//
// Only used when load module at fixed address feature is enabled. True means the memory is alreay successfully allocated
// and ready to load the module in to specified address.or else, the memory is not ready and module will be loaded at a
// and ready to load the module in to specified address.or else, the memory is not ready and module will be loaded at a
// address assigned by DXE core.
//
GLOBAL_REMOVE_IF_UNREFERENCED BOOLEAN gLoadFixedAddressCodeMemoryReady = FALSE;
@@ -178,22 +178,22 @@ CoreAddRange (
ASSERT_LOCKED (&gMemoryLock);
DEBUG ((DEBUG_PAGE, "AddRange: %lx-%lx to %d\n", Start, End, Type));
//
// If memory of type EfiConventionalMemory is being added that includes the page
// starting at address 0, then zero the page starting at address 0. This has
// two benifits. It helps find NULL pointer bugs and it also maximizes
// compatibility with operating systems that may evaluate memory in this page
// for legacy data structures. If memory of any other type is added starting
// at address 0, then do not zero the page at address 0 because the page is being
// If memory of type EfiConventionalMemory is being added that includes the page
// starting at address 0, then zero the page starting at address 0. This has
// two benifits. It helps find NULL pointer bugs and it also maximizes
// compatibility with operating systems that may evaluate memory in this page
// for legacy data structures. If memory of any other type is added starting
// at address 0, then do not zero the page at address 0 because the page is being
// used for other purposes.
//
//
if (Type == EfiConventionalMemory && Start == 0 && (End >= EFI_PAGE_SIZE - 1)) {
if ((PcdGet8 (PcdNullPointerDetectionPropertyMask) & BIT0) == 0) {
SetMem ((VOID *)(UINTN)Start, EFI_PAGE_SIZE, 0);
}
}
//
// Memory map being altered so updated key
//
@@ -454,8 +454,8 @@ PromoteMemoryResource (
return Promoted;
}
/**
This function try to allocate Runtime code & Boot time code memory range. If LMFA enabled, 2 patchable PCD
PcdLoadFixAddressRuntimeCodePageNumber & PcdLoadFixAddressBootTimeCodePageNumber which are set by tools will record the
This function try to allocate Runtime code & Boot time code memory range. If LMFA enabled, 2 patchable PCD
PcdLoadFixAddressRuntimeCodePageNumber & PcdLoadFixAddressBootTimeCodePageNumber which are set by tools will record the
size of boot time and runtime code.
**/
@@ -473,7 +473,7 @@ CoreLoadingFixedAddressHook (
//
// Make sure these 2 areas are not initialzied.
//
if (!gLoadFixedAddressCodeMemoryReady) {
if (!gLoadFixedAddressCodeMemoryReady) {
RuntimeCodePageNumber = PcdGet32(PcdLoadFixAddressRuntimeCodePageNumber);
BootTimeCodePageNumber= PcdGet32(PcdLoadFixAddressBootTimeCodePageNumber);
RuntimeCodeBase = (EFI_PHYSICAL_ADDRESS)(gLoadModuleAtFixAddressConfigurationTable.DxeCodeTopAddress - EFI_PAGES_TO_SIZE (RuntimeCodePageNumber));
@@ -489,7 +489,7 @@ CoreLoadingFixedAddressHook (
);
if (EFI_ERROR(Status)) {
//
// Runtime memory allocation failed
// Runtime memory allocation failed
//
return;
}
@@ -504,19 +504,19 @@ CoreLoadingFixedAddressHook (
);
if (EFI_ERROR(Status)) {
//
// boot memory allocation failed. Free Runtime code range and will try the allocation again when
// new memory range is installed.
//
CoreFreePages (
// boot memory allocation failed. Free Runtime code range and will try the allocation again when
// new memory range is installed.
//
CoreFreePages (
RuntimeCodeBase,
RuntimeCodePageNumber
);
return;
}
gLoadFixedAddressCodeMemoryReady = TRUE;
}
}
return;
}
}
/**
Called to initialize the memory map and add descriptors to
@@ -545,7 +545,7 @@ CoreAddMemoryDescriptor (
EFI_STATUS Status;
UINTN Index;
UINTN FreeIndex;
if ((Start & EFI_PAGE_MASK) != 0) {
return;
}
@@ -568,7 +568,7 @@ CoreAddMemoryDescriptor (
if (PcdGet64(PcdLoadModuleAtFixAddressEnable) != 0) {
CoreLoadingFixedAddressHook();
}
//
// Check to see if the statistics for the different memory types have already been established
//
@@ -576,7 +576,7 @@ CoreAddMemoryDescriptor (
return;
}
//
// Loop through each memory type in the order specified by the gMemoryTypeInformation[] array
//
@@ -1163,10 +1163,10 @@ FindFreePages (
//
if ((UINT32)NewType < EfiMaxMemoryType && MaxAddress >= mMemoryTypeStatistics[NewType].MaximumAddress) {
Start = CoreFindFreePagesI (
mMemoryTypeStatistics[NewType].MaximumAddress,
mMemoryTypeStatistics[NewType].BaseAddress,
NoPages,
NewType,
mMemoryTypeStatistics[NewType].MaximumAddress,
mMemoryTypeStatistics[NewType].BaseAddress,
NoPages,
NewType,
Alignment,
NeedGuard
);
@@ -1190,9 +1190,9 @@ FindFreePages (
}
//
// The allocation did not succeed in any of the prefered bins even after
// promoting resources. Attempt to find free pages anywhere is the requested
// address range. If this allocation fails, then there are not enough
// The allocation did not succeed in any of the prefered bins even after
// promoting resources. Attempt to find free pages anywhere is the requested
// address range. If this allocation fails, then there are not enough
// resources anywhere to satisfy the request.
//
Start = CoreFindFreePagesI (MaxAddress, 0, NoPages, NewType, Alignment,
@@ -1311,7 +1311,7 @@ CoreInternalAllocatePages (
End = Start + NumberOfBytes - 1;
if ((Start >= End) ||
(Start > MaxAddress) ||
(Start > MaxAddress) ||
(End > MaxAddress)) {
return EFI_NOT_FOUND;
}
@@ -1571,7 +1571,7 @@ MergeMemoryMapDescriptor (
//
// Check to see if MemoryMapDescriptor is immediately above MemoryMap
//
if (MemoryMap->PhysicalStart + EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages) == MemoryMapDescriptor->PhysicalStart) {
if (MemoryMap->PhysicalStart + EFI_PAGES_TO_SIZE ((UINTN)MemoryMap->NumberOfPages) == MemoryMapDescriptor->PhysicalStart) {
//
// Merge MemoryMapDescriptor into MemoryMap
//
@@ -1604,7 +1604,7 @@ MergeMemoryMapDescriptor (
//
// MemoryMapDescrtiptor could not be merged with any descriptors in MemoryMap.
//
// Return the slot immediately after MemoryMapDescriptor as the next available
// Return the slot immediately after MemoryMapDescriptor as the next available
// slot in the MemoryMap array
//
return NEXT_MEMORY_DESCRIPTOR (MemoryMapDescriptor, DescriptorSize);
@@ -1678,7 +1678,7 @@ CoreGetMemoryMap (
NumberOfEntries = 0;
for (Link = mGcdMemorySpaceMap.ForwardLink; Link != &mGcdMemorySpaceMap; Link = Link->ForwardLink) {
GcdMapEntry = CR (Link, EFI_GCD_MAP_ENTRY, Link, EFI_GCD_MAP_SIGNATURE);
if ((GcdMapEntry->GcdMemoryType == EfiGcdMemoryTypePersistent) ||
if ((GcdMapEntry->GcdMemoryType == EfiGcdMemoryTypePersistent) ||
(GcdMapEntry->GcdMemoryType == EfiGcdMemoryTypeReserved) ||
((GcdMapEntry->GcdMemoryType == EfiGcdMemoryTypeMemoryMappedIo) &&
((GcdMapEntry->Attributes & EFI_MEMORY_RUNTIME) == EFI_MEMORY_RUNTIME))) {
@@ -1764,13 +1764,13 @@ CoreGetMemoryMap (
}
//
// Check to see if the new Memory Map Descriptor can be merged with an
// Check to see if the new Memory Map Descriptor can be merged with an
// existing descriptor if they are adjacent and have the same attributes
//
MemoryMap = MergeMemoryMapDescriptor (MemoryMapStart, MemoryMap, Size);
}
ZeroMem (&MergeGcdMapEntry, sizeof (MergeGcdMapEntry));
GcdMapEntry = NULL;
for (Link = mGcdMemorySpaceMap.ForwardLink; ; Link = Link->ForwardLink) {
@@ -1779,8 +1779,8 @@ CoreGetMemoryMap (
// Merge adjacent same type and attribute GCD memory range
//
GcdMapEntry = CR (Link, EFI_GCD_MAP_ENTRY, Link, EFI_GCD_MAP_SIGNATURE);
if ((MergeGcdMapEntry.Capabilities == GcdMapEntry->Capabilities) &&
if ((MergeGcdMapEntry.Capabilities == GcdMapEntry->Capabilities) &&
(MergeGcdMapEntry.Attributes == GcdMapEntry->Attributes) &&
(MergeGcdMapEntry.GcdMemoryType == GcdMapEntry->GcdMemoryType) &&
(MergeGcdMapEntry.GcdIoType == GcdMapEntry->GcdIoType)) {
@@ -1793,19 +1793,19 @@ CoreGetMemoryMap (
((MergeGcdMapEntry.GcdMemoryType == EfiGcdMemoryTypeMemoryMappedIo) &&
((MergeGcdMapEntry.Attributes & EFI_MEMORY_RUNTIME) == EFI_MEMORY_RUNTIME))) {
//
// Page Align GCD range is required. When it is converted to EFI_MEMORY_DESCRIPTOR,
// it will be recorded as page PhysicalStart and NumberOfPages.
// Page Align GCD range is required. When it is converted to EFI_MEMORY_DESCRIPTOR,
// it will be recorded as page PhysicalStart and NumberOfPages.
//
ASSERT ((MergeGcdMapEntry.BaseAddress & EFI_PAGE_MASK) == 0);
ASSERT (((MergeGcdMapEntry.EndAddress - MergeGcdMapEntry.BaseAddress + 1) & EFI_PAGE_MASK) == 0);
//
//
// Create EFI_MEMORY_DESCRIPTOR for every Reserved and runtime MMIO GCD entries
//
MemoryMap->PhysicalStart = MergeGcdMapEntry.BaseAddress;
MemoryMap->VirtualStart = 0;
MemoryMap->NumberOfPages = RShiftU64 ((MergeGcdMapEntry.EndAddress - MergeGcdMapEntry.BaseAddress + 1), EFI_PAGE_SHIFT);
MemoryMap->Attribute = (MergeGcdMapEntry.Attributes & ~EFI_MEMORY_PORT_IO) |
MemoryMap->Attribute = (MergeGcdMapEntry.Attributes & ~EFI_MEMORY_PORT_IO) |
(MergeGcdMapEntry.Capabilities & (EFI_MEMORY_RP | EFI_MEMORY_WP | EFI_MEMORY_XP | EFI_MEMORY_RO |
EFI_MEMORY_UC | EFI_MEMORY_UCE | EFI_MEMORY_WC | EFI_MEMORY_WT | EFI_MEMORY_WB));
@@ -1820,33 +1820,33 @@ CoreGetMemoryMap (
}
//
// Check to see if the new Memory Map Descriptor can be merged with an
// Check to see if the new Memory Map Descriptor can be merged with an
// existing descriptor if they are adjacent and have the same attributes
//
MemoryMap = MergeMemoryMapDescriptor (MemoryMapStart, MemoryMap, Size);
}
if (MergeGcdMapEntry.GcdMemoryType == EfiGcdMemoryTypePersistent) {
//
// Page Align GCD range is required. When it is converted to EFI_MEMORY_DESCRIPTOR,
// it will be recorded as page PhysicalStart and NumberOfPages.
// Page Align GCD range is required. When it is converted to EFI_MEMORY_DESCRIPTOR,
// it will be recorded as page PhysicalStart and NumberOfPages.
//
ASSERT ((MergeGcdMapEntry.BaseAddress & EFI_PAGE_MASK) == 0);
ASSERT (((MergeGcdMapEntry.EndAddress - MergeGcdMapEntry.BaseAddress + 1) & EFI_PAGE_MASK) == 0);
//
//
// Create EFI_MEMORY_DESCRIPTOR for every Persistent GCD entries
//
MemoryMap->PhysicalStart = MergeGcdMapEntry.BaseAddress;
MemoryMap->VirtualStart = 0;
MemoryMap->NumberOfPages = RShiftU64 ((MergeGcdMapEntry.EndAddress - MergeGcdMapEntry.BaseAddress + 1), EFI_PAGE_SHIFT);
MemoryMap->Attribute = MergeGcdMapEntry.Attributes | EFI_MEMORY_NV |
MemoryMap->Attribute = MergeGcdMapEntry.Attributes | EFI_MEMORY_NV |
(MergeGcdMapEntry.Capabilities & (EFI_MEMORY_RP | EFI_MEMORY_WP | EFI_MEMORY_XP | EFI_MEMORY_RO |
EFI_MEMORY_UC | EFI_MEMORY_UCE | EFI_MEMORY_WC | EFI_MEMORY_WT | EFI_MEMORY_WB));
MemoryMap->Type = EfiPersistentMemory;
//
// Check to see if the new Memory Map Descriptor can be merged with an
// Check to see if the new Memory Map Descriptor can be merged with an
// existing descriptor if they are adjacent and have the same attributes
//
MemoryMap = MergeMemoryMapDescriptor (MemoryMapStart, MemoryMap, Size);

View File

@@ -2,7 +2,7 @@
Support functions for managing debug image info table when loading and unloading
images.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -65,9 +65,9 @@ CoreInitializeDebugImageInfoTable (
Memory = MAX_ADDRESS;
}
Status = CoreAllocatePages (
AllocateMaxAddress,
AllocateMaxAddress,
EfiBootServicesData,
RealPages,
RealPages,
&Memory
);
if (EFI_ERROR (Status)) {
@@ -80,16 +80,16 @@ CoreInitializeDebugImageInfoTable (
// as close to the top of memory as feasible.
//
Status = CoreAllocatePages (
AllocateAnyPages,
AllocateAnyPages,
EfiBootServicesData,
RealPages,
RealPages,
&Memory
);
ASSERT_EFI_ERROR (Status);
if (EFI_ERROR (Status)) {
return;
}
}
}
//
// Free overallocated pages
@@ -121,13 +121,13 @@ CoreInitializeDebugImageInfoTable (
//
// Initialize EFI_SYSTEM_TABLE_POINTER structure
//
//
mDebugTable->Signature = EFI_SYSTEM_TABLE_SIGNATURE;
mDebugTable->EfiSystemTableBase = (EFI_PHYSICAL_ADDRESS) (UINTN) gDxeCoreST;
mDebugTable->Crc32 = 0;
//
// Install the EFI_SYSTEM_TABLE_POINTER structure in the EFI System
// Install the EFI_SYSTEM_TABLE_POINTER structure in the EFI System
// Configuration Table
//
Status = CoreInstallConfigurationTable (&gEfiDebugImageInfoTableGuid, &mDebugInfoTableHeader);
@@ -182,7 +182,7 @@ CoreNewDebugImageInfoEntry (
mDebugInfoTableHeader.UpdateStatus |= EFI_DEBUG_IMAGE_INFO_UPDATE_IN_PROGRESS;
Table = mDebugInfoTableHeader.EfiDebugImageInfoTable;
if (mDebugInfoTableHeader.TableSize < mMaxTableEntries) {
//
// We still have empty entires in the Table, find the first empty entry.

View File

@@ -1,7 +1,7 @@
/** @file
UEFI MemoryAttributesTable support
Copyright (c) 2016, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2016 - 2018, 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
@@ -201,7 +201,7 @@ InstallMemoryAttributesTable (
if (mMemoryAttributesTable != NULL) {
FreePool (mMemoryAttributesTable);
}
mMemoryAttributesTable = MemoryAttributesTable;
mMemoryAttributesTable = MemoryAttributesTable;
}
/**
@@ -237,7 +237,7 @@ InstallMemoryAttributesTableOnReadyToBoot (
)
{
InstallMemoryAttributesTable ();
mMemoryAttributesTableReadyToBoot = TRUE;
mMemoryAttributesTableReadyToBoot = TRUE;
}
/**

View File

@@ -1,7 +1,7 @@
/** @file
UEFI Miscellaneous boot Services Stall service implementation
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -19,8 +19,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include "DxeMain.h"
/**
Internal worker function to call the Metronome Architectural Protocol for
the number of ticks specified by the UINT64 Counter value. WaitForTick()
Internal worker function to call the Metronome Architectural Protocol for
the number of ticks specified by the UINT64 Counter value. WaitForTick()
service of the Metronome Architectural Protocol uses a UINT32 for the number
of ticks to wait, so this function loops when Counter is larger than 0xffffffff.
@@ -69,7 +69,7 @@ CoreStall (
//
if ((UINT64) Microseconds > 0x1999999999999999ULL) {
//
// Microseconds is too large to multiple by 10 first. Perform the divide
// Microseconds is too large to multiple by 10 first. Perform the divide
// operation first and loop 10 times to avoid 64-bit math overflow.
//
Counter = DivU64x32Remainder (
@@ -79,11 +79,11 @@ CoreStall (
);
for (Index = 0; Index < 10; Index++) {
CoreInternalWaitForTick (Counter);
}
}
if (Remainder != 0) {
//
// If Remainder was not zero, then normally, Counter would be rounded
// If Remainder was not zero, then normally, Counter would be rounded
// up by 1 tick. In this case, since a loop for 10 counts was used
// to emulate the multiply by 10 operation, Counter needs to be rounded
// up by 10 counts.

View File

@@ -27,7 +27,7 @@
3) A support protocol is not found, and the data is not available to be read
without it. This results in EFI_PROTOCOL_ERROR.
Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2018, 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
@@ -67,7 +67,7 @@ typedef struct {
UINTN EncapsulatedStreamHandle;
EFI_GUID *EncapsulationGuid;
//
// If the section REQUIRES an extraction protocol, register for RPN
// If the section REQUIRES an extraction protocol, register for RPN
// when the required GUIDed extraction protocol becomes available.
//
EFI_EVENT Event;
@@ -499,7 +499,7 @@ ChildIsType (
@return TRUE The GuidedSectionGuid could be identified, and the pointer to
the Guided Section Extraction Protocol will be returned to *GuidedSectionExtraction.
@return FALSE The GuidedSectionGuid could not be identified, or
@return FALSE The GuidedSectionGuid could not be identified, or
the Guided Section Extraction Protocol has not been installed yet.
**/
@@ -561,9 +561,9 @@ NotifyGuidedExtraction (
UINTN NewStreamBufferSize;
UINT32 AuthenticationStatus;
RPN_EVENT_CONTEXT *Context;
Context = RpnContext;
GuidedHeader = (EFI_GUID_DEFINED_SECTION *) (Context->ParentStream->StreamBuffer + Context->ChildNode->OffsetInStream);
ASSERT (GuidedHeader->CommonHeader.Type == EFI_SECTION_GUID_DEFINED);
@@ -612,7 +612,7 @@ NotifyGuidedExtraction (
gBS->CloseEvent (Event);
Context->ChildNode->Event = NULL;
FreePool (Context);
}
}
/**
Constructor for RPN event when a missing GUIDED_SECTION_EXTRACTION_PROTOCOL appears...
@@ -628,16 +628,16 @@ CreateGuidedExtractionRpnEvent (
)
{
RPN_EVENT_CONTEXT *Context;
//
// Allocate new event structure and context
//
Context = AllocatePool (sizeof (RPN_EVENT_CONTEXT));
ASSERT (Context != NULL);
Context->ChildNode = ChildNode;
Context->ParentStream = ParentStream;
Context->ChildNode->Event = EfiCreateProtocolNotifyEvent (
Context->ChildNode->EncapsulationGuid,
TPL_NOTIFY,
@@ -893,8 +893,8 @@ CreateChildNode (
//
if ((GuidedSectionAttributes & EFI_GUIDED_SECTION_PROCESSING_REQUIRED) != 0) {
//
// If the section REQUIRES an extraction protocol, register for RPN
// when the required GUIDed extraction protocol becomes available.
// If the section REQUIRES an extraction protocol, register for RPN
// when the required GUIDed extraction protocol becomes available.
//
CreateGuidedExtractionRpnEvent (Stream, Node);
} else {