Add doxygen style comments for functions in DxeMain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5189 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
/**@file
|
||||
/** @file
|
||||
DXE Core library services.
|
||||
|
||||
Copyright (c) 2006 - 2007, Intel Corporation
|
||||
Copyright (c) 2006 - 2008, Intel Corporation
|
||||
All rights reserved. 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
|
||||
@@ -14,7 +14,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
#include <DxeMain.h>
|
||||
|
||||
UINTN mErrorLevel = EFI_D_ERROR | EFI_D_LOAD;
|
||||
UINTN mErrorLevel = DEBUG_ERROR | DEBUG_LOAD;
|
||||
|
||||
EFI_DXE_DEVICE_HANDLE_EXTENDED_DATA mStatusCodeData = {
|
||||
{
|
||||
@@ -25,30 +25,22 @@ EFI_DXE_DEVICE_HANDLE_EXTENDED_DATA mStatusCodeData = {
|
||||
NULL
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
Report status code of type EFI_PROGRESS_CODE by caller ID gEfiCallerIdGuid,
|
||||
with a handle as additional information.
|
||||
|
||||
@param Value Describes the class/subclass/operation of the
|
||||
hardware or software entity that the Status Code
|
||||
relates to.
|
||||
@param Handle Additional information.
|
||||
|
||||
**/
|
||||
VOID
|
||||
CoreReportProgressCodeSpecific (
|
||||
IN EFI_STATUS_CODE_VALUE Value,
|
||||
IN EFI_HANDLE Handle
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Report status code of type EFI_PROGRESS_CODE by caller ID gEfiCallerIdGuid,
|
||||
with a handle as additional information.
|
||||
|
||||
Arguments:
|
||||
|
||||
Value - Describes the class/subclass/operation of the hardware or software entity
|
||||
that the Status Code relates to.
|
||||
|
||||
Handle - Additional information.
|
||||
|
||||
Returns:
|
||||
|
||||
None
|
||||
|
||||
--*/
|
||||
{
|
||||
mStatusCodeData.DataHeader.Size = sizeof (EFI_DXE_DEVICE_HANDLE_EXTENDED_DATA) - sizeof (EFI_STATUS_CODE_DATA);
|
||||
mStatusCodeData.Handle = Handle;
|
||||
@@ -64,26 +56,19 @@ Returns:
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
Report status code of type EFI_PROGRESS_CODE by caller ID gEfiCallerIdGuid.
|
||||
|
||||
@param Value Describes the class/subclass/operation of the
|
||||
hardware or software entity that the Status Code
|
||||
relates to.
|
||||
|
||||
**/
|
||||
VOID
|
||||
CoreReportProgressCode (
|
||||
IN EFI_STATUS_CODE_VALUE Value
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Report status code of type EFI_PROGRESS_CODE by caller ID gEfiCallerIdGuid.
|
||||
|
||||
Arguments:
|
||||
|
||||
Value - Describes the class/subclass/operation of the hardware or software entity
|
||||
that the Status Code relates to.
|
||||
|
||||
Returns:
|
||||
|
||||
None
|
||||
|
||||
--*/
|
||||
{
|
||||
if ((gStatusCode != NULL) && (gStatusCode->ReportStatusCode != NULL) ) {
|
||||
gStatusCode->ReportStatusCode (
|
||||
@@ -97,25 +82,19 @@ Returns:
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Allocate pool of type EfiBootServicesData, the size is specified with AllocationSize.
|
||||
|
||||
@param AllocationSize Size to allocate.
|
||||
|
||||
@return Pointer of the allocated pool.
|
||||
|
||||
**/
|
||||
VOID *
|
||||
CoreAllocateBootServicesPool (
|
||||
IN UINTN AllocationSize
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Allocate pool of type EfiBootServicesData, the size is specified with AllocationSize.
|
||||
|
||||
Arguments:
|
||||
|
||||
AllocationSize - Size to allocate.
|
||||
|
||||
Returns:
|
||||
|
||||
Pointer of the allocated pool.
|
||||
|
||||
--*/
|
||||
{
|
||||
VOID *Memory;
|
||||
|
||||
@@ -124,25 +103,19 @@ Returns:
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Allocate pool of type EfiBootServicesData and zero it, the size is specified with AllocationSize.
|
||||
|
||||
@param AllocationSize Size to allocate.
|
||||
|
||||
@return Pointer of the allocated pool.
|
||||
|
||||
**/
|
||||
VOID *
|
||||
CoreAllocateZeroBootServicesPool (
|
||||
IN UINTN AllocationSize
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Allocate pool of type EfiBootServicesData and zero it, the size is specified with AllocationSize.
|
||||
|
||||
Arguments:
|
||||
|
||||
AllocationSize - Size to allocate.
|
||||
|
||||
Returns:
|
||||
|
||||
Pointer of the allocated pool.
|
||||
|
||||
--*/
|
||||
{
|
||||
VOID *Memory;
|
||||
|
||||
@@ -152,28 +125,22 @@ Returns:
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Allocate pool of specified size with EfiBootServicesData type, and copy specified buffer to this pool.
|
||||
|
||||
@param AllocationSize Size to allocate.
|
||||
@param Buffer Specified buffer that will be copy to the allocated
|
||||
pool
|
||||
|
||||
@return Pointer of the allocated pool.
|
||||
|
||||
**/
|
||||
VOID *
|
||||
CoreAllocateCopyPool (
|
||||
IN UINTN AllocationSize,
|
||||
IN VOID *Buffer
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Allocate pool of specified size with EfiBootServicesData type, and copy specified buffer to this pool.
|
||||
|
||||
Arguments:
|
||||
|
||||
AllocationSize - Size to allocate.
|
||||
|
||||
Buffer - Specified buffer that will be copy to the allocated pool
|
||||
|
||||
Returns:
|
||||
|
||||
Pointer of the allocated pool.
|
||||
|
||||
--*/
|
||||
{
|
||||
VOID *Memory;
|
||||
|
||||
@@ -185,25 +152,19 @@ Returns:
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Allocate pool of type EfiRuntimeServicesData, the size is specified with AllocationSize.
|
||||
|
||||
@param AllocationSize Size to allocate.
|
||||
|
||||
@return Pointer of the allocated pool.
|
||||
|
||||
**/
|
||||
VOID *
|
||||
CoreAllocateRuntimePool (
|
||||
IN UINTN AllocationSize
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Allocate pool of type EfiRuntimeServicesData, the size is specified with AllocationSize.
|
||||
|
||||
Arguments:
|
||||
|
||||
AllocationSize - Size to allocate.
|
||||
|
||||
Returns:
|
||||
|
||||
Pointer of the allocated pool.
|
||||
|
||||
--*/
|
||||
{
|
||||
VOID *Memory;
|
||||
|
||||
@@ -211,29 +172,22 @@ Returns:
|
||||
return Memory;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
Allocate pool of specified size with EfiRuntimeServicesData type, and copy specified buffer to this pool.
|
||||
|
||||
@param AllocationSize Size to allocate.
|
||||
@param Buffer Specified buffer that will be copy to the allocated
|
||||
pool
|
||||
|
||||
@return Pointer of the allocated pool.
|
||||
|
||||
**/
|
||||
VOID *
|
||||
CoreAllocateRuntimeCopyPool (
|
||||
IN UINTN AllocationSize,
|
||||
IN VOID *Buffer
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Allocate pool of specified size with EfiRuntimeServicesData type, and copy specified buffer to this pool.
|
||||
|
||||
Arguments:
|
||||
|
||||
AllocationSize - Size to allocate.
|
||||
|
||||
Buffer - Specified buffer that will be copy to the allocated pool
|
||||
|
||||
Returns:
|
||||
|
||||
Pointer of the allocated pool.
|
||||
|
||||
--*/
|
||||
|
||||
{
|
||||
VOID *Memory;
|
||||
|
||||
@@ -250,31 +204,23 @@ Returns:
|
||||
//
|
||||
|
||||
|
||||
|
||||
EFI_STATUS
|
||||
CoreAcquireLockOrFail (
|
||||
IN EFI_LOCK *Lock
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
/**
|
||||
Initialize a basic mutual exclusion lock. Each lock
|
||||
provides mutual exclusion access at it's task priority
|
||||
level. Since there is no-premption (at any TPL) or
|
||||
multiprocessor support, acquiring the lock only consists
|
||||
of raising to the locks TPL.
|
||||
|
||||
Arguments:
|
||||
@param Lock The EFI_LOCK structure to initialize
|
||||
|
||||
Lock - The EFI_LOCK structure to initialize
|
||||
@retval EFI_SUCCESS Lock Owned.
|
||||
@retval EFI_ACCESS_DENIED Reentrant Lock Acquisition, Lock not Owned.
|
||||
|
||||
Returns:
|
||||
|
||||
EFI_SUCCESS - Lock Owned.
|
||||
EFI_ACCESS_DENIED - Reentrant Lock Acquisition, Lock not Owned.
|
||||
|
||||
--*/
|
||||
**/
|
||||
EFI_STATUS
|
||||
CoreAcquireLockOrFail (
|
||||
IN EFI_LOCK *Lock
|
||||
)
|
||||
{
|
||||
ASSERT (Lock != NULL);
|
||||
ASSERT (Lock->Lock != EfiLockUninitialized);
|
||||
@@ -293,26 +239,20 @@ Returns:
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Raising to the task priority level of the mutual exclusion
|
||||
lock, and then acquires ownership of the lock.
|
||||
|
||||
@param Lock The lock to acquire
|
||||
|
||||
@return Lock owned
|
||||
|
||||
**/
|
||||
VOID
|
||||
CoreAcquireLock (
|
||||
IN EFI_LOCK *Lock
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Raising to the task priority level of the mutual exclusion
|
||||
lock, and then acquires ownership of the lock.
|
||||
|
||||
Arguments:
|
||||
|
||||
Lock - The lock to acquire
|
||||
|
||||
Returns:
|
||||
|
||||
Lock owned
|
||||
|
||||
--*/
|
||||
{
|
||||
ASSERT (Lock != NULL);
|
||||
ASSERT (Lock->Lock == EfiLockReleased);
|
||||
@@ -322,26 +262,20 @@ Returns:
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Releases ownership of the mutual exclusion lock, and
|
||||
restores the previous task priority level.
|
||||
|
||||
@param Lock The lock to release
|
||||
|
||||
@return Lock unowned
|
||||
|
||||
**/
|
||||
VOID
|
||||
CoreReleaseLock (
|
||||
IN EFI_LOCK *Lock
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Releases ownership of the mutual exclusion lock, and
|
||||
restores the previous task priority level.
|
||||
|
||||
Arguments:
|
||||
|
||||
Lock - The lock to release
|
||||
|
||||
Returns:
|
||||
|
||||
Lock unowned
|
||||
|
||||
--*/
|
||||
{
|
||||
EFI_TPL Tpl;
|
||||
|
||||
@@ -356,25 +290,19 @@ Returns:
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Calculate the size of a whole device path.
|
||||
|
||||
@param DevicePath The pointer to the device path data.
|
||||
|
||||
@return Size of device path data structure..
|
||||
|
||||
**/
|
||||
UINTN
|
||||
CoreDevicePathSize (
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Calculate the size of a whole device path.
|
||||
|
||||
Arguments:
|
||||
|
||||
DevicePath - The pointer to the device path data.
|
||||
|
||||
Returns:
|
||||
|
||||
Size of device path data structure..
|
||||
|
||||
--*/
|
||||
{
|
||||
EFI_DEVICE_PATH_PROTOCOL *Start;
|
||||
|
||||
@@ -397,24 +325,20 @@ Returns:
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Return TRUE is this is a multi instance device path.
|
||||
|
||||
@param DevicePath A pointer to a device path data structure.
|
||||
|
||||
@retval TRUE If DevicePath is multi instance. FALSE - If
|
||||
DevicePath is not multi instance.
|
||||
|
||||
**/
|
||||
BOOLEAN
|
||||
CoreIsDevicePathMultiInstance (
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
Return TRUE is this is a multi instance device path.
|
||||
|
||||
Arguments:
|
||||
DevicePath - A pointer to a device path data structure.
|
||||
|
||||
|
||||
Returns:
|
||||
TRUE - If DevicePath is multi instance. FALSE - If DevicePath is not multi
|
||||
instance.
|
||||
|
||||
--*/
|
||||
{
|
||||
EFI_DEVICE_PATH_PROTOCOL *Node;
|
||||
|
||||
@@ -434,23 +358,20 @@ Returns:
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Duplicate a new device path data structure from the old one.
|
||||
|
||||
@param DevicePath A pointer to a device path data structure.
|
||||
|
||||
@return A pointer to the new allocated device path data.
|
||||
@return Caller must free the memory used by DevicePath if it is no longer needed.
|
||||
|
||||
**/
|
||||
EFI_DEVICE_PATH_PROTOCOL *
|
||||
CoreDuplicateDevicePath (
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *DevicePath
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
Duplicate a new device path data structure from the old one.
|
||||
|
||||
Arguments:
|
||||
DevicePath - A pointer to a device path data structure.
|
||||
|
||||
Returns:
|
||||
A pointer to the new allocated device path data.
|
||||
Caller must free the memory used by DevicePath if it is no longer needed.
|
||||
|
||||
--*/
|
||||
{
|
||||
EFI_DEVICE_PATH_PROTOCOL *NewDevicePath;
|
||||
UINTN Size;
|
||||
@@ -474,28 +395,23 @@ Returns:
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Function is used to append a Src1 and Src2 together.
|
||||
|
||||
@param Src1 A pointer to a device path data structure.
|
||||
@param Src2 A pointer to a device path data structure.
|
||||
|
||||
@return A pointer to the new device path is returned.
|
||||
@return NULL is returned if space for the new device path could not be allocated from pool.
|
||||
@return It is up to the caller to free the memory used by Src1 and Src2 if they are no longer needed.
|
||||
|
||||
**/
|
||||
EFI_DEVICE_PATH_PROTOCOL *
|
||||
CoreAppendDevicePath (
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *Src1,
|
||||
IN EFI_DEVICE_PATH_PROTOCOL *Src2
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
Function is used to append a Src1 and Src2 together.
|
||||
|
||||
Arguments:
|
||||
Src1 - A pointer to a device path data structure.
|
||||
|
||||
Src2 - A pointer to a device path data structure.
|
||||
|
||||
Returns:
|
||||
|
||||
A pointer to the new device path is returned.
|
||||
NULL is returned if space for the new device path could not be allocated from pool.
|
||||
It is up to the caller to free the memory used by Src1 and Src2 if they are no longer needed.
|
||||
|
||||
--*/
|
||||
{
|
||||
UINTN Size;
|
||||
UINTN Size1;
|
||||
@@ -530,6 +446,23 @@ Returns:
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Create a protocol notification event and return it.
|
||||
|
||||
@param ProtocolGuid Protocol to register notification event on.
|
||||
@param NotifyTpl Maximum TPL to signal the NotifyFunction.
|
||||
@param NotifyFunction EFI notification routine.
|
||||
@param NotifyContext Context passed into Event when it is created.
|
||||
@param Registration Registration key returned from
|
||||
RegisterProtocolNotify().
|
||||
@param SignalFlag Boolean value to decide whether kick the event after
|
||||
register or not.
|
||||
|
||||
@return The EFI_EVENT that has been registered to be signaled when a ProtocolGuid
|
||||
is added to the system.
|
||||
|
||||
**/
|
||||
EFI_EVENT
|
||||
CoreCreateProtocolNotifyEvent (
|
||||
IN EFI_GUID *ProtocolGuid,
|
||||
@@ -539,32 +472,6 @@ CoreCreateProtocolNotifyEvent (
|
||||
OUT VOID **Registration,
|
||||
IN BOOLEAN SignalFlag
|
||||
)
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
|
||||
Create a protocol notification event and return it.
|
||||
|
||||
Arguments:
|
||||
|
||||
ProtocolGuid - Protocol to register notification event on.
|
||||
|
||||
NotifyTpl - Maximum TPL to signal the NotifyFunction.
|
||||
|
||||
NotifyFuncition - EFI notification routine.
|
||||
|
||||
NotifyContext - Context passed into Event when it is created.
|
||||
|
||||
Registration - Registration key returned from RegisterProtocolNotify().
|
||||
|
||||
SignalFlag - Boolean value to decide whether kick the event after register or not.
|
||||
|
||||
Returns:
|
||||
|
||||
The EFI_EVENT that has been registered to be signaled when a ProtocolGuid
|
||||
is added to the system.
|
||||
|
||||
--*/
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
EFI_EVENT Event;
|
||||
@@ -604,3 +511,4 @@ Returns:
|
||||
return Event;
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user