\r
#include "PrmInfo.h"\r
\r
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID mStringPrmInfoHelpTokenId = STRING_TOKEN (STR_PRMINFO_HELP);\r
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID mStringPrmInfoHelpTokenId = STRING_TOKEN (STR_PRMINFO_HELP);\r
//\r
// This is the generated String package data for all .UNI files.\r
// This data array is ready to be used as input of HiiAddPackages() to\r
// create a packagelist (which contains Form packages, String packages, etc).\r
//\r
-extern UINT8 PrmInfoStrings[];\r
+extern UINT8 PrmInfoStrings[];\r
\r
-STATIC UINTN mPrmHandlerCount;\r
-STATIC UINTN mPrmModuleCount;\r
+STATIC UINTN mPrmHandlerCount;\r
+STATIC UINTN mPrmModuleCount;\r
\r
-STATIC EFI_HII_HANDLE mPrmInfoHiiHandle;\r
-STATIC LIST_ENTRY mPrmHandlerList;\r
+STATIC EFI_HII_HANDLE mPrmInfoHiiHandle;\r
+STATIC LIST_ENTRY mPrmHandlerList;\r
\r
-STATIC CONST SHELL_PARAM_ITEM mParamList[] = {\r
- {L"-l", TypeFlag},\r
- {L"-t", TypeValue},\r
- {NULL, TypeMax}\r
- };\r
+STATIC CONST SHELL_PARAM_ITEM mParamList[] = {\r
+ { L"-l", TypeFlag },\r
+ { L"-t", TypeValue },\r
+ { NULL, TypeMax }\r
+};\r
\r
/**\r
Frees all of the nodes in a linked list.\r
VOID\r
EFIAPI\r
FreeList (\r
- IN LIST_ENTRY *ListHead\r
+ IN LIST_ENTRY *ListHead\r
)\r
{\r
- LIST_ENTRY *Link;\r
- LIST_ENTRY *NextLink;\r
- PRM_HANDLER_CONTEXT_LIST_ENTRY *ListEntry;\r
+ LIST_ENTRY *Link;\r
+ LIST_ENTRY *NextLink;\r
+ PRM_HANDLER_CONTEXT_LIST_ENTRY *ListEntry;\r
\r
if (ListHead == NULL) {\r
return;\r
Link = GetFirstNode (&mPrmHandlerList);\r
while (!IsNull (&mPrmHandlerList, Link)) {\r
ListEntry = CR (Link, PRM_HANDLER_CONTEXT_LIST_ENTRY, Link, PRM_HANDLER_CONTEXT_LIST_ENTRY_SIGNATURE);\r
- NextLink = GetNextNode (&mPrmHandlerList, Link);\r
+ NextLink = GetNextNode (&mPrmHandlerList, Link);\r
\r
RemoveEntryList (Link);\r
FreePool (ListEntry);\r
VOID\r
)\r
{\r
- PRM_HANDLER_CONTEXT_LIST_ENTRY *PrmHandlerContextListEntry;\r
+ PRM_HANDLER_CONTEXT_LIST_ENTRY *PrmHandlerContextListEntry;\r
\r
PrmHandlerContextListEntry = AllocateZeroPool (sizeof (*PrmHandlerContextListEntry));\r
if (PrmHandlerContextListEntry == NULL) {\r
return NULL;\r
}\r
+\r
PrmHandlerContextListEntry->Signature = PRM_HANDLER_CONTEXT_LIST_ENTRY_SIGNATURE;\r
\r
return PrmHandlerContextListEntry;\r
IN PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges\r
)\r
{\r
- UINTN RuntimeMmioRangeCount;\r
- UINTN RuntimeMmioRangeIndex;\r
+ UINTN RuntimeMmioRangeCount;\r
+ UINTN RuntimeMmioRangeIndex;\r
\r
if (RuntimeMmioRanges == NULL) {\r
return;\r
}\r
\r
- RuntimeMmioRangeCount = (UINTN) RuntimeMmioRanges->Count;\r
+ RuntimeMmioRangeCount = (UINTN)RuntimeMmioRanges->Count;\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_RUNTIME_MMIO_COUNT), mPrmInfoHiiHandle, RuntimeMmioRangeCount);\r
\r
for (RuntimeMmioRangeIndex = 0; RuntimeMmioRangeIndex < RuntimeMmioRangeCount; RuntimeMmioRangeIndex++) {\r
**/\r
VOID\r
GatherPrmHandlerInfo (\r
- IN BOOLEAN PrintInformation\r
+ IN BOOLEAN PrintInformation\r
)\r
{\r
- EFI_STATUS Status;\r
- UINT16 MajorVersion;\r
- UINT16 MinorVersion;\r
- UINT16 HandlerCount;\r
- UINTN HandlerIndex;\r
- EFI_PHYSICAL_ADDRESS CurrentHandlerPhysicalAddress;\r
- EFI_PHYSICAL_ADDRESS CurrentImageAddress;\r
- PRM_HANDLER_CONTEXT CurrentHandlerContext;\r
- EFI_GUID *CurrentModuleGuid;\r
- EFI_IMAGE_EXPORT_DIRECTORY *CurrentImageExportDirectory;\r
- PRM_CONTEXT_BUFFER *CurrentContextBuffer;\r
- PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *CurrentExportDescriptorStruct;\r
- PRM_MODULE_CONTEXT_BUFFERS *CurrentModuleContextBuffers;\r
- PRM_HANDLER_CONTEXT_LIST_ENTRY *CurrentHandlerContextListEntry;\r
- PRM_MODULE_IMAGE_CONTEXT *CurrentPrmModuleImageContext;\r
- PRM_RUNTIME_MMIO_RANGES *CurrentPrmModuleRuntimeMmioRanges;\r
+ EFI_STATUS Status;\r
+ UINT16 MajorVersion;\r
+ UINT16 MinorVersion;\r
+ UINT16 HandlerCount;\r
+ UINTN HandlerIndex;\r
+ EFI_PHYSICAL_ADDRESS CurrentHandlerPhysicalAddress;\r
+ EFI_PHYSICAL_ADDRESS CurrentImageAddress;\r
+ PRM_HANDLER_CONTEXT CurrentHandlerContext;\r
+ EFI_GUID *CurrentModuleGuid;\r
+ EFI_IMAGE_EXPORT_DIRECTORY *CurrentImageExportDirectory;\r
+ PRM_CONTEXT_BUFFER *CurrentContextBuffer;\r
+ PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *CurrentExportDescriptorStruct;\r
+ PRM_MODULE_CONTEXT_BUFFERS *CurrentModuleContextBuffers;\r
+ PRM_HANDLER_CONTEXT_LIST_ENTRY *CurrentHandlerContextListEntry;\r
+ PRM_MODULE_IMAGE_CONTEXT *CurrentPrmModuleImageContext;\r
+ PRM_RUNTIME_MMIO_RANGES *CurrentPrmModuleRuntimeMmioRanges;\r
\r
ASSERT (mPrmModuleCount <= mPrmHandlerCount);\r
\r
\r
// Iterate across all PRM modules discovered\r
for (\r
- CurrentPrmModuleImageContext = NULL, Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext);\r
- !EFI_ERROR (Status);\r
- Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext)) {\r
-\r
- CurrentImageAddress = CurrentPrmModuleImageContext->PeCoffImageContext.ImageAddress;\r
- CurrentImageExportDirectory = CurrentPrmModuleImageContext->ExportDirectory;\r
+ CurrentPrmModuleImageContext = NULL, Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext);\r
+ !EFI_ERROR (Status);\r
+ Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext))\r
+ {\r
+ CurrentImageAddress = CurrentPrmModuleImageContext->PeCoffImageContext.ImageAddress;\r
+ CurrentImageExportDirectory = CurrentPrmModuleImageContext->ExportDirectory;\r
CurrentExportDescriptorStruct = CurrentPrmModuleImageContext->ExportDescriptor;\r
\r
CurrentModuleGuid = &CurrentExportDescriptorStruct->Header.ModuleGuid;\r
- HandlerCount = CurrentExportDescriptorStruct->Header.NumberPrmHandlers;\r
+ HandlerCount = CurrentExportDescriptorStruct->Header.NumberPrmHandlers;\r
\r
MajorVersion = 0;\r
MinorVersion = 0;\r
- Status = GetImageVersionInPeCoffImage (\r
- (VOID *) (UINTN) CurrentImageAddress,\r
- &CurrentPrmModuleImageContext->PeCoffImageContext,\r
- &MajorVersion,\r
- &MinorVersion\r
- );\r
+ Status = GetImageVersionInPeCoffImage (\r
+ (VOID *)(UINTN)CurrentImageAddress,\r
+ &CurrentPrmModuleImageContext->PeCoffImageContext,\r
+ &MajorVersion,\r
+ &MinorVersion\r
+ );\r
ASSERT_EFI_ERROR (Status);\r
\r
if (PrintInformation) {\r
NULL,\r
STRING_TOKEN (STR_PRMINFO_MODULE_NAME),\r
mPrmInfoHiiHandle,\r
- (CHAR8 *) ((UINTN) CurrentImageAddress + CurrentImageExportDirectory->Name)\r
+ (CHAR8 *)((UINTN)CurrentImageAddress + CurrentImageExportDirectory->Name)\r
);\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_MODULE_GUID), mPrmInfoHiiHandle, CurrentModuleGuid);\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_MODULE_VERSION), mPrmInfoHiiHandle, MajorVersion, MinorVersion);\r
\r
// It is currently valid for a PRM module not to use a context buffer\r
CurrentPrmModuleRuntimeMmioRanges = NULL;\r
- Status = GetModuleContextBuffers (\r
- ByModuleGuid,\r
- CurrentModuleGuid,\r
- (CONST PRM_MODULE_CONTEXT_BUFFERS **) &CurrentModuleContextBuffers\r
- );\r
+ Status = GetModuleContextBuffers (\r
+ ByModuleGuid,\r
+ CurrentModuleGuid,\r
+ (CONST PRM_MODULE_CONTEXT_BUFFERS **)&CurrentModuleContextBuffers\r
+ );\r
ASSERT (!EFI_ERROR (Status) || Status == EFI_NOT_FOUND);\r
- if (!EFI_ERROR (Status) && CurrentModuleContextBuffers != NULL) {\r
+ if (!EFI_ERROR (Status) && (CurrentModuleContextBuffers != NULL)) {\r
CurrentPrmModuleRuntimeMmioRanges = CurrentModuleContextBuffers->RuntimeMmioRanges;\r
}\r
\r
} else {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_NO_MMIO_RANGES), mPrmInfoHiiHandle);\r
}\r
+\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_LINE_BREAK), mPrmInfoHiiHandle);\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLER_COUNT), mPrmInfoHiiHandle, HandlerCount);\r
}\r
for (HandlerIndex = 0; HandlerIndex < HandlerCount; HandlerIndex++) {\r
ZeroMem (&CurrentHandlerContext, sizeof (CurrentHandlerContext));\r
\r
- CurrentHandlerContext.ModuleName = (CHAR8 *) ((UINTN) CurrentImageAddress + CurrentImageExportDirectory->Name);\r
- CurrentHandlerContext.Guid = &CurrentExportDescriptorStruct->PrmHandlerExportDescriptors[HandlerIndex].PrmHandlerGuid;\r
- CurrentHandlerContext.Name = (CHAR8 *) CurrentExportDescriptorStruct->PrmHandlerExportDescriptors[HandlerIndex].PrmHandlerName;\r
+ CurrentHandlerContext.ModuleName = (CHAR8 *)((UINTN)CurrentImageAddress + CurrentImageExportDirectory->Name);\r
+ CurrentHandlerContext.Guid = &CurrentExportDescriptorStruct->PrmHandlerExportDescriptors[HandlerIndex].PrmHandlerGuid;\r
+ CurrentHandlerContext.Name = (CHAR8 *)CurrentExportDescriptorStruct->PrmHandlerExportDescriptors[HandlerIndex].PrmHandlerName;\r
\r
if (PrintInformation) {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLER_NAME), mPrmInfoHiiHandle, CurrentHandlerContext.Name);\r
);\r
ASSERT_EFI_ERROR (Status);\r
if (!EFI_ERROR (Status)) {\r
- CurrentHandlerContext.Handler = (PRM_HANDLER *) (UINTN) CurrentHandlerPhysicalAddress;\r
+ CurrentHandlerContext.Handler = (PRM_HANDLER *)(UINTN)CurrentHandlerPhysicalAddress;\r
\r
if (PrintInformation) {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLER_PA), mPrmInfoHiiHandle, CurrentHandlerPhysicalAddress);\r
Status = GetContextBuffer (\r
CurrentHandlerContext.Guid,\r
CurrentModuleContextBuffers,\r
- (CONST PRM_CONTEXT_BUFFER **) &CurrentContextBuffer\r
+ (CONST PRM_CONTEXT_BUFFER **)&CurrentContextBuffer\r
);\r
if (!EFI_ERROR (Status)) {\r
CurrentHandlerContext.StaticDataBuffer = CurrentContextBuffer->StaticDataBuffer;\r
NULL,\r
STRING_TOKEN (STR_PRMINFO_STATIC_DATA_BUFFER),\r
mPrmInfoHiiHandle,\r
- (UINTN) CurrentHandlerContext.StaticDataBuffer\r
+ (UINTN)CurrentHandlerContext.StaticDataBuffer\r
);\r
} else {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_LINE_BREAK), mPrmInfoHiiHandle);\r
**/\r
EFI_STATUS\r
PopulateContextBuffer (\r
- IN PRM_DATA_BUFFER *StaticDataBuffer OPTIONAL,\r
- IN EFI_GUID *HandlerGuid,\r
- IN PRM_CONTEXT_BUFFER *ContextBuffer\r
+ IN PRM_DATA_BUFFER *StaticDataBuffer OPTIONAL,\r
+ IN EFI_GUID *HandlerGuid,\r
+ IN PRM_CONTEXT_BUFFER *ContextBuffer\r
)\r
{\r
- if (HandlerGuid == NULL || ContextBuffer == NULL) {\r
+ if ((HandlerGuid == NULL) || (ContextBuffer == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
ZeroMem (ContextBuffer, sizeof (*ContextBuffer));\r
\r
ContextBuffer->Signature = PRM_CONTEXT_BUFFER_SIGNATURE;\r
- ContextBuffer->Version = PRM_CONTEXT_BUFFER_INTERFACE_VERSION;\r
+ ContextBuffer->Version = PRM_CONTEXT_BUFFER_INTERFACE_VERSION;\r
CopyGuid (&ContextBuffer->HandlerGuid, HandlerGuid);\r
\r
if (StaticDataBuffer != NULL) {\r
**/\r
VOID\r
PrintExecutionTime (\r
- IN UINT64 TimeInNanoSec\r
+ IN UINT64 TimeInNanoSec\r
)\r
{\r
UINT64 Sec;\r
UINT64 NanoSec;\r
UINT64 RemainingTime;\r
\r
- Sec = 0;\r
- MilliSec = 0;\r
- MicroSec = 0;\r
- NanoSec = 0;\r
+ Sec = 0;\r
+ MilliSec = 0;\r
+ MicroSec = 0;\r
+ NanoSec = 0;\r
RemainingTime = TimeInNanoSec;\r
\r
- if (RemainingTime > ONE_SECOND) {\r
- Sec = DivU64x32 (RemainingTime, ONE_SECOND);\r
+ if (RemainingTime > ONE_SECOND) {\r
+ Sec = DivU64x32 (RemainingTime, ONE_SECOND);\r
RemainingTime -= MultU64x32 (Sec, ONE_SECOND);\r
}\r
\r
if (RemainingTime > ONE_MILLISECOND) {\r
- MilliSec = DivU64x32 (RemainingTime, ONE_MILLISECOND);\r
+ MilliSec = DivU64x32 (RemainingTime, ONE_MILLISECOND);\r
RemainingTime -= MultU64x32 (MilliSec, ONE_MILLISECOND);\r
}\r
\r
if (RemainingTime > ONE_MICROSECOND) {\r
- MicroSec = DivU64x32 (RemainingTime, ONE_MICROSECOND);\r
+ MicroSec = DivU64x32 (RemainingTime, ONE_MICROSECOND);\r
RemainingTime -= MultU64x32 (MicroSec, ONE_MICROSECOND);\r
}\r
\r
**/\r
EFI_STATUS\r
ExecutePrmHandlerByGuid (\r
- IN EFI_GUID *HandlerGuid\r
+ IN EFI_GUID *HandlerGuid\r
)\r
{\r
- EFI_STATUS Status;\r
- BOOLEAN ExecuteAllHandlers;\r
- BOOLEAN HandlerFound;\r
- UINT64 StartTime;\r
- UINT64 EndTime;\r
- PRM_CONTEXT_BUFFER CurrentContextBuffer;\r
- PRM_HANDLER_CONTEXT *HandlerContext;\r
- PRM_HANDLER_CONTEXT_LIST_ENTRY *HandlerContextListEntry;\r
- LIST_ENTRY *Link;\r
-\r
- Link = NULL;\r
+ EFI_STATUS Status;\r
+ BOOLEAN ExecuteAllHandlers;\r
+ BOOLEAN HandlerFound;\r
+ UINT64 StartTime;\r
+ UINT64 EndTime;\r
+ PRM_CONTEXT_BUFFER CurrentContextBuffer;\r
+ PRM_HANDLER_CONTEXT *HandlerContext;\r
+ PRM_HANDLER_CONTEXT_LIST_ENTRY *HandlerContextListEntry;\r
+ LIST_ENTRY *Link;\r
+\r
+ Link = NULL;\r
HandlerFound = FALSE;\r
\r
if (HandlerGuid == NULL) {\r
\r
EFI_LIST_FOR_EACH (Link, &mPrmHandlerList) {\r
HandlerContextListEntry = CR (Link, PRM_HANDLER_CONTEXT_LIST_ENTRY, Link, PRM_HANDLER_CONTEXT_LIST_ENTRY_SIGNATURE);\r
- HandlerContext = &HandlerContextListEntry->Context;\r
+ HandlerContext = &HandlerContextListEntry->Context;\r
\r
if (!ExecuteAllHandlers && !CompareGuid (HandlerGuid, HandlerContext->Guid)) {\r
continue;\r
}\r
\r
HandlerFound = TRUE;\r
- Status = PopulateContextBuffer (HandlerContext->StaticDataBuffer, HandlerContext->Guid, &CurrentContextBuffer);\r
+ Status = PopulateContextBuffer (HandlerContext->StaticDataBuffer, HandlerContext->Guid, &CurrentContextBuffer);\r
if (!EFI_ERROR (Status)) {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_LINE_BREAK), mPrmInfoHiiHandle);\r
ShellPrintHiiEx (\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLER_GUID), mPrmInfoHiiHandle, HandlerContext->Guid);\r
\r
StartTime = 0;\r
- EndTime = 0;\r
+ EndTime = 0;\r
if (PcdGetBool (PcdPrmInfoPrintHandlerExecutionTime)) {\r
StartTime = GetPerformanceCounter ();\r
}\r
+\r
Status = HandlerContext->Handler (NULL, &CurrentContextBuffer);\r
if (PcdGetBool (PcdPrmInfoPrintHandlerExecutionTime)) {\r
EndTime = GetPerformanceCounter ();\r
}\r
\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLER_EXEC_TIME), mPrmInfoHiiHandle);\r
- if (StartTime == 0 && EndTime == 0) {\r
+ if ((StartTime == 0) && (EndTime == 0)) {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_UNKNOWN), mPrmInfoHiiHandle);\r
} else {\r
PrintExecutionTime (GetTimeInNanoSecond (EndTime - StartTime));\r
}\r
+\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_LINE_BREAK), mPrmInfoHiiHandle);\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_LINE_BREAK), mPrmInfoHiiHandle);\r
} else {\r
VOID\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_STATUS ReturnStatus;\r
- UINTN ArgumentCount;\r
- EFI_GUID HandlerGuid;\r
- BOOLEAN PrintHandlerInfo;\r
- LIST_ENTRY *Package;\r
- LIST_ENTRY *TempNode;\r
- CHAR16 *ProblemParam;\r
- CONST CHAR16 *HandlerGuidStr;\r
-\r
- HandlerGuidStr = NULL;\r
- Package = NULL;\r
+ EFI_STATUS Status;\r
+ EFI_STATUS ReturnStatus;\r
+ UINTN ArgumentCount;\r
+ EFI_GUID HandlerGuid;\r
+ BOOLEAN PrintHandlerInfo;\r
+ LIST_ENTRY *Package;\r
+ LIST_ENTRY *TempNode;\r
+ CHAR16 *ProblemParam;\r
+ CONST CHAR16 *HandlerGuidStr;\r
+\r
+ HandlerGuidStr = NULL;\r
+ Package = NULL;\r
PrintHandlerInfo = FALSE;\r
- ReturnStatus = EFI_SUCCESS;\r
+ ReturnStatus = EFI_SUCCESS;\r
\r
InitializeListHead (&mPrmHandlerList);\r
\r
//\r
Status = ShellCommandLineParseEx (mParamList, &Package, &ProblemParam, FALSE, FALSE);\r
if (EFI_ERROR (Status)) {\r
- if (Status == EFI_VOLUME_CORRUPTED && ProblemParam != NULL) {\r
+ if ((Status == EFI_VOLUME_CORRUPTED) && (ProblemParam != NULL)) {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_GEN_PROBLEM), mPrmInfoHiiHandle, APPLICATION_NAME, ProblemParam);\r
ReturnStatus = EFI_INVALID_PARAMETER;\r
FreePool (ProblemParam);\r
// Get argument count including flags\r
//\r
for (\r
- ArgumentCount = 0, TempNode = Package;\r
- GetNextNode (Package, TempNode) != Package;\r
- ArgumentCount++, TempNode = GetNextNode (Package, TempNode)\r
- );\r
+ ArgumentCount = 0, TempNode = Package;\r
+ GetNextNode (Package, TempNode) != Package;\r
+ ArgumentCount++, TempNode = GetNextNode (Package, TempNode)\r
+ )\r
+ {\r
+ }\r
\r
if (ArgumentCount == 1) {\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_NO_ARG), mPrmInfoHiiHandle, APPLICATION_NAME);\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLERS_FOUND), mPrmInfoHiiHandle, mPrmHandlerCount);\r
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_LINE_BREAK), mPrmInfoHiiHandle);\r
}\r
+\r
GatherPrmHandlerInfo (PrintHandlerInfo);\r
\r
if (HandlerGuidStr != NULL) {\r
- Status = ExecutePrmHandlerByGuid (&HandlerGuid);\r
- if (Status == EFI_NOT_FOUND) {\r
- ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLER_NOT_FOUND), mPrmInfoHiiHandle, APPLICATION_NAME, HandlerGuid);\r
- }\r
+ Status = ExecutePrmHandlerByGuid (&HandlerGuid);\r
+ if (Status == EFI_NOT_FOUND) {\r
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_PRMINFO_HANDLER_NOT_FOUND), mPrmInfoHiiHandle, APPLICATION_NAME, HandlerGuid);\r
+ }\r
}\r
\r
Done:\r
EFI_STATUS\r
EFIAPI\r
UefiMain (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_HII_PACKAGE_LIST_HEADER *PackageList;\r
+ EFI_STATUS Status;\r
+ EFI_HII_PACKAGE_LIST_HEADER *PackageList;\r
\r
//\r
// Retrieve the HII package list from ImageHandle\r
Status = gBS->OpenProtocol (\r
ImageHandle,\r
&gEfiHiiPackageListProtocolGuid,\r
- (VOID **) &PackageList,\r
+ (VOID **)&PackageList,\r
ImageHandle,\r
NULL,\r
EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
#include <PrmDataBuffer.h>\r
#include <Uefi.h>\r
\r
-#define APPLICATION_NAME L"PrmInfo"\r
+#define APPLICATION_NAME L"PrmInfo"\r
\r
-#define PRM_HANDLER_CONTEXT_LIST_ENTRY_SIGNATURE SIGNATURE_32('P','R','H','E')\r
+#define PRM_HANDLER_CONTEXT_LIST_ENTRY_SIGNATURE SIGNATURE_32('P','R','H','E')\r
\r
#pragma pack(push, 1)\r
\r
typedef struct {\r
- CHAR8 *Name;\r
- EFI_GUID *Guid;\r
- PRM_DATA_BUFFER *StaticDataBuffer;\r
- CHAR8 *ModuleName;\r
- PRM_HANDLER *Handler;\r
+ CHAR8 *Name;\r
+ EFI_GUID *Guid;\r
+ PRM_DATA_BUFFER *StaticDataBuffer;\r
+ CHAR8 *ModuleName;\r
+ PRM_HANDLER *Handler;\r
} PRM_HANDLER_CONTEXT;\r
\r
typedef struct {\r
- UINTN Signature;\r
- LIST_ENTRY Link;\r
- PRM_HANDLER_CONTEXT Context;\r
+ UINTN Signature;\r
+ LIST_ENTRY Link;\r
+ PRM_HANDLER_CONTEXT Context;\r
} PRM_HANDLER_CONTEXT_LIST_ENTRY;\r
\r
#pragma pack(pop)\r
#define EFI_LIST_FOR_EACH(Entry, ListHead) \\r
for(Entry = (ListHead)->ForwardLink; Entry != (ListHead); Entry = Entry->ForwardLink)\r
\r
-#define ONE_MICROSECOND (1000)\r
-#define ONE_MILLISECOND (1000 * ONE_MICROSECOND)\r
-#define ONE_SECOND (1000 * ONE_MILLISECOND)\r
+#define ONE_MICROSECOND (1000)\r
+#define ONE_MILLISECOND (1000 * ONE_MICROSECOND)\r
+#define ONE_SECOND (1000 * ONE_MILLISECOND)\r
\r
#endif\r
**/\r
EFI_STATUS\r
FindContextBufferInModuleBuffers (\r
- IN CONST EFI_GUID *HandlerGuid,\r
- IN CONST PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffers,\r
- OUT CONST PRM_CONTEXT_BUFFER **ContextBuffer\r
+ IN CONST EFI_GUID *HandlerGuid,\r
+ IN CONST PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffers,\r
+ OUT CONST PRM_CONTEXT_BUFFER **ContextBuffer\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
GetModuleContextBuffers (\r
- IN PRM_GUID_SEARCH_TYPE GuidSearchType,\r
- IN CONST EFI_GUID *Guid,\r
- OUT CONST PRM_MODULE_CONTEXT_BUFFERS **PrmModuleContextBuffers\r
+ IN PRM_GUID_SEARCH_TYPE GuidSearchType,\r
+ IN CONST EFI_GUID *Guid,\r
+ OUT CONST PRM_MODULE_CONTEXT_BUFFERS **PrmModuleContextBuffers\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
GetContextBuffer (\r
- IN CONST EFI_GUID *PrmHandlerGuid,\r
- IN CONST PRM_MODULE_CONTEXT_BUFFERS *PrmModuleContextBuffers OPTIONAL,\r
- OUT CONST PRM_CONTEXT_BUFFER **PrmContextBuffer\r
+ IN CONST EFI_GUID *PrmHandlerGuid,\r
+ IN CONST PRM_MODULE_CONTEXT_BUFFERS *PrmModuleContextBuffers OPTIONAL,\r
+ OUT CONST PRM_CONTEXT_BUFFER **PrmContextBuffer\r
);\r
\r
#endif\r
EFI_STATUS\r
EFIAPI\r
GetNextPrmModuleEntry (\r
- IN OUT PRM_MODULE_IMAGE_CONTEXT **ModuleImageContext\r
+ IN OUT PRM_MODULE_IMAGE_CONTEXT **ModuleImageContext\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
DiscoverPrmModules (\r
- OUT UINTN *ModuleCount OPTIONAL,\r
- OUT UINTN *HandlerCount OPTIONAL\r
+ OUT UINTN *ModuleCount OPTIONAL,\r
+ OUT UINTN *HandlerCount OPTIONAL\r
);\r
\r
#endif\r
**/\r
EFI_STATUS\r
GetPrmModuleExportDescriptorTable (\r
- IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
- IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
- OUT PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT **ExportDescriptor\r
+ IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
+ IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
+ OUT PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT **ExportDescriptor\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
GetExportDirectoryInPeCoffImage (\r
- IN VOID *Image,\r
- IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
- OUT EFI_IMAGE_EXPORT_DIRECTORY **ImageExportDirectory\r
+ IN VOID *Image,\r
+ IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
+ OUT EFI_IMAGE_EXPORT_DIRECTORY **ImageExportDirectory\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
GetImageVersionInPeCoffImage (\r
- IN VOID *Image,\r
- IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
- OUT UINT16 *ImageMajorVersion,\r
- OUT UINT16 *ImageMinorVersion\r
+ IN VOID *Image,\r
+ IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
+ OUT UINT16 *ImageMajorVersion,\r
+ OUT UINT16 *ImageMinorVersion\r
);\r
\r
/**\r
**/\r
EFI_STATUS\r
GetExportEntryAddress (\r
- IN CONST CHAR8 *ExportName,\r
- IN EFI_PHYSICAL_ADDRESS ImageBaseAddress,\r
- IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
- OUT EFI_PHYSICAL_ADDRESS *ExportPhysicalAddress\r
+ IN CONST CHAR8 *ExportName,\r
+ IN EFI_PHYSICAL_ADDRESS ImageBaseAddress,\r
+ IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
+ OUT EFI_PHYSICAL_ADDRESS *ExportPhysicalAddress\r
);\r
\r
#endif\r
#include <Uefi.h>\r
#include <PrmContextBuffer.h>\r
\r
-#if defined(_MSC_VER)\r
- #define PRM_EXPORT_API __declspec(dllexport)\r
+#if defined (_MSC_VER)\r
+#define PRM_EXPORT_API __declspec(dllexport)\r
#else\r
- #define PRM_EXPORT_API\r
+#define PRM_EXPORT_API\r
#endif\r
\r
-#define PRM_HANDLER_NAME_MAXIMUM_LENGTH 128\r
+#define PRM_HANDLER_NAME_MAXIMUM_LENGTH 128\r
\r
-#define PRM_STRING_(x) #x\r
-#define PRM_STRING(x) PRM_STRING_(x)\r
+#define PRM_STRING_(x) #x\r
+#define PRM_STRING(x) PRM_STRING_(x)\r
\r
/**\r
A Platform Runtime Mechanism (PRM) handler function.\r
**/\r
typedef\r
EFI_STATUS\r
-(EFIAPI PRM_HANDLER) (\r
+(EFIAPI PRM_HANDLER)(\r
IN VOID *ParameterBuffer OPTIONAL,\r
IN PRM_CONTEXT_BUFFER *ContextBuffer OPTIONAL\r
);\r
// copy the ACPI parameter buffer address to the PRMT ACPI table.\r
//\r
typedef struct {\r
- EFI_GUID HandlerGuid;\r
- UINT64 AcpiParameterBufferAddress;\r
+ EFI_GUID HandlerGuid;\r
+ UINT64 AcpiParameterBufferAddress;\r
} ACPI_PARAMETER_BUFFER_DESCRIPTOR;\r
\r
//\r
///\r
/// Signature of this interface.\r
///\r
- UINT32 Signature;\r
+ UINT32 Signature;\r
\r
///\r
/// Version of this interface.\r
///\r
- UINT16 Version;\r
+ UINT16 Version;\r
\r
///\r
/// Reserved field.\r
///\r
- UINT16 Reserved;\r
+ UINT16 Reserved;\r
\r
///\r
/// The GUID of the PRM handler represented by this context instance.\r
///\r
- EFI_GUID HandlerGuid;\r
+ EFI_GUID HandlerGuid;\r
\r
///\r
/// A virtual address pointer to the static data buffer allocated for\r
///\r
/// This pointer may be NULL if a static data buffer is not needed.\r
///\r
- PRM_DATA_BUFFER *StaticDataBuffer;\r
+ PRM_DATA_BUFFER *StaticDataBuffer;\r
\r
///\r
/// A virtual address pointer to an array of PRM_RUNTIME_MMIO_RANGE\r
///\r
/// This pointer may be NULL if runtime memory ranges are not needed.\r
///\r
- PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges;\r
+ PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges;\r
} PRM_CONTEXT_BUFFER;\r
\r
//\r
// A firmware internal data structure used to track context buffer and\r
// runtime MMIO range usage across a PRM module.\r
//\r
-typedef struct\r
-{\r
+typedef struct {\r
///\r
/// The GUID of the PRM module.\r
///\r
- EFI_GUID ModuleGuid;\r
+ EFI_GUID ModuleGuid;\r
\r
///\r
/// The number of PRM context buffers in ContextBuffers[].\r
/// This count should equal the number of PRM handlers in the module being configured.\r
///\r
- UINTN BufferCount;\r
+ UINTN BufferCount;\r
\r
///\r
/// A pointer to an array of PRM context buffers\r
///\r
- PRM_CONTEXT_BUFFER *Buffer;\r
+ PRM_CONTEXT_BUFFER *Buffer;\r
\r
/// The MMIO ranges are defined in the firmware boot environment.\r
/// The addresses within the PRM_RUNTIME_MMIO_RANGES structure will\r
///\r
/// This pointer may be NULL if runtime memory ranges are not needed.\r
///\r
- PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges;\r
+ PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges;\r
\r
///\r
/// The number of ACPI parameter buffer descriptors in the array\r
/// AcpiParameterBufferDescriptors\r
///\r
- UINTN AcpiParameterBufferDescriptorCount;\r
+ UINTN AcpiParameterBufferDescriptorCount;\r
\r
///\r
/// A pointer to an array of ACPI parameter buffer descriptors. PRM module\r
/// for each PRM handler that actually uses an ACPI parameter buffer. If\r
/// no handlers use an ACPI parameter buffer this pointer should be NULL.\r
///\r
- ACPI_PARAMETER_BUFFER_DESCRIPTOR *AcpiParameterBufferDescriptors;\r
+ ACPI_PARAMETER_BUFFER_DESCRIPTOR *AcpiParameterBufferDescriptors;\r
} PRM_MODULE_CONTEXT_BUFFERS;\r
\r
#pragma pack(pop)\r
\r
#include <Uefi.h>\r
\r
-#define PRM_DATA_BUFFER_HEADER_SIGNATURE SIGNATURE_32('P','R','M','D')\r
+#define PRM_DATA_BUFFER_HEADER_SIGNATURE SIGNATURE_32('P','R','M','D')\r
\r
#pragma pack(push, 1)\r
\r
///\r
/// PRM Data Buffer signature.\r
///\r
- UINT32 Signature;\r
+ UINT32 Signature;\r
///\r
/// Length of the entire data buffer, including the size of the header.\r
///\r
- UINT32 Length;\r
+ UINT32 Length;\r
} PRM_DATA_BUFFER_HEADER;\r
\r
///\r
///\r
/// The header is required at the beginning of every PRM data buffer.\r
///\r
- PRM_DATA_BUFFER_HEADER Header;\r
+ PRM_DATA_BUFFER_HEADER Header;\r
\r
///\r
/// The beginning of data immediately follows the header.\r
///\r
- UINT8 Data[1];\r
+ UINT8 Data[1];\r
} PRM_DATA_BUFFER;\r
\r
#pragma pack(pop)\r
\r
#include <Prm.h>\r
\r
-#define PRM_MODULE_EXPORT_DESCRIPTOR_NAME PrmModuleExportDescriptor\r
-#define PRM_MODULE_EXPORT_DESCRIPTOR_SIGNATURE SIGNATURE_64 ('P', 'R', 'M', '_', 'M', 'E', 'D', 'T')\r
-#define PRM_MODULE_EXPORT_REVISION 0x0\r
+#define PRM_MODULE_EXPORT_DESCRIPTOR_NAME PrmModuleExportDescriptor\r
+#define PRM_MODULE_EXPORT_DESCRIPTOR_SIGNATURE SIGNATURE_64 ('P', 'R', 'M', '_', 'M', 'E', 'D', 'T')\r
+#define PRM_MODULE_EXPORT_REVISION 0x0\r
\r
//\r
// Platform Runtime Mechanism (PRM) Export Descriptor Structures\r
#pragma pack(push, 1)\r
\r
typedef struct {\r
- GUID PrmHandlerGuid;\r
- CHAR8 PrmHandlerName[PRM_HANDLER_NAME_MAXIMUM_LENGTH];\r
+ GUID PrmHandlerGuid;\r
+ CHAR8 PrmHandlerName[PRM_HANDLER_NAME_MAXIMUM_LENGTH];\r
} PRM_HANDLER_EXPORT_DESCRIPTOR_STRUCT;\r
\r
typedef struct {\r
- UINT64 Signature;\r
- UINT16 Revision;\r
- UINT16 NumberPrmHandlers;\r
- GUID PlatformGuid;\r
- GUID ModuleGuid;\r
+ UINT64 Signature;\r
+ UINT16 Revision;\r
+ UINT16 NumberPrmHandlers;\r
+ GUID PlatformGuid;\r
+ GUID ModuleGuid;\r
} PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT_HEADER;\r
\r
typedef struct {\r
- PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT_HEADER Header;\r
- PRM_HANDLER_EXPORT_DESCRIPTOR_STRUCT PrmHandlerExportDescriptors[1];\r
+ PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT_HEADER Header;\r
+ PRM_HANDLER_EXPORT_DESCRIPTOR_STRUCT PrmHandlerExportDescriptors[1];\r
} PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT;\r
\r
#pragma pack(pop)\r
\r
-#if defined(_MSC_VER)\r
- #define PRM_PACKED_STRUCT(definition) \\r
+#if defined (_MSC_VER)\r
+#define PRM_PACKED_STRUCT(definition) \\r
__pragma(pack(push, 1)) typedef struct definition __pragma(pack(pop))\r
#elif defined (__GNUC__) || defined (__clang__)\r
- #define PRM_PACKED_STRUCT(definition) \\r
+#define PRM_PACKED_STRUCT(definition) \\r
typedef struct __attribute__((packed)) definition\r
#endif\r
\r
PRM_STRING_(Name) \\r
} \\r
\r
+\r
/**\r
A macro that returns the count of the number of variable-length arguments given.\r
\r
/// The memory range with the given base address and length will be marked as EFI_MEMORY_RUNTIME.\r
///\r
typedef struct {\r
- EFI_PHYSICAL_ADDRESS PhysicalBaseAddress;\r
- EFI_PHYSICAL_ADDRESS VirtualBaseAddress;\r
- UINT32 Length;\r
+ EFI_PHYSICAL_ADDRESS PhysicalBaseAddress;\r
+ EFI_PHYSICAL_ADDRESS VirtualBaseAddress;\r
+ UINT32 Length;\r
} PRM_RUNTIME_MMIO_RANGE;\r
\r
///\r
///\r
/// The number of runtime memory range elements in this buffer.\r
///\r
- UINT64 Count;\r
+ UINT64 Count;\r
///\r
/// The beginning of the runtime memory range data.\r
///\r
- PRM_RUNTIME_MMIO_RANGE Range[1];\r
+ PRM_RUNTIME_MMIO_RANGE Range[1];\r
} PRM_RUNTIME_MMIO_RANGES;\r
\r
#pragma pack(pop)\r
#define PRM_HANDLER_EXPORT(Name) \\r
STATIC_ASSERT (sizeof (PRM_STRING_(Name)) <= PRM_HANDLER_NAME_MAXIMUM_LENGTH, "The PRM handler exceeds the maximum allowed size of 128."); \\r
\\r
-/** \\r
- A Platform Runtime Mechanism (PRM) handler. \\r
- \\r
- @param[in] ParameterBuffer A pointer to the PRM handler parameter buffer \\r
- @param[in] ContextBUffer A pointer to the PRM handler context buffer \\r
- \\r
- @retval EFI_STATUS The PRM handler executed successfully. \\r
- @retval Others An error occurred in the PRM handler. \\r
- \\r
-**/ \\r
+ /** \\r
+ A Platform Runtime Mechanism (PRM) handler. \\r
+ \\r
+ @param[in] ParameterBuffer A pointer to the PRM handler parameter buffer \\r
+ @param[in] ContextBUffer A pointer to the PRM handler context buffer \\r
+ \\r
+ @retval EFI_STATUS The PRM handler executed successfully. \\r
+ @retval Others An error occurred in the PRM handler. \\r
+ \\r
+ **/ \\r
EFI_STATUS \\r
PRM_EXPORT_API \\r
EFIAPI \\r
#pragma pack(push, 1)\r
\r
typedef struct {\r
- PE_COFF_LOADER_IMAGE_CONTEXT PeCoffImageContext;\r
- EFI_IMAGE_EXPORT_DIRECTORY *ExportDirectory;\r
- PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *ExportDescriptor;\r
+ PE_COFF_LOADER_IMAGE_CONTEXT PeCoffImageContext;\r
+ EFI_IMAGE_EXPORT_DIRECTORY *ExportDirectory;\r
+ PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *ExportDescriptor;\r
} PRM_MODULE_IMAGE_CONTEXT;\r
\r
#pragma pack(pop)\r
\r
typedef struct _PRM_CONFIG_PROTOCOL PRM_CONFIG_PROTOCOL;\r
\r
-#define PRM_CONFIG_PROTOCOL_SIGNATURE SIGNATURE_32('P','M','C','P')\r
-#define PRM_CONFIG_PROTOCOL_VERSION 1\r
+#define PRM_CONFIG_PROTOCOL_SIGNATURE SIGNATURE_32('P','M','C','P')\r
+#define PRM_CONFIG_PROTOCOL_VERSION 1\r
\r
-struct _PRM_CONFIG_PROTOCOL\r
-{\r
- PRM_MODULE_CONTEXT_BUFFERS ModuleContextBuffers;\r
+struct _PRM_CONFIG_PROTOCOL {\r
+ PRM_MODULE_CONTEXT_BUFFERS ModuleContextBuffers;\r
};\r
\r
-extern EFI_GUID gPrmConfigProtocolGuid;\r
+extern EFI_GUID gPrmConfigProtocolGuid;\r
\r
#endif\r
#include <Library/UefiBootServicesTableLib.h>\r
#include <Protocol/PrmConfig.h>\r
\r
-#define _DBGMSGID_ "[PRMCONTEXTBUFFERLIB]"\r
+#define _DBGMSGID_ "[PRMCONTEXTBUFFERLIB]"\r
\r
/**\r
Finds a PRM context buffer for the given PRM handler GUID.\r
**/\r
EFI_STATUS\r
FindContextBufferInModuleBuffers (\r
- IN CONST EFI_GUID *HandlerGuid,\r
- IN CONST PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffers,\r
- OUT CONST PRM_CONTEXT_BUFFER **ContextBuffer\r
+ IN CONST EFI_GUID *HandlerGuid,\r
+ IN CONST PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffers,\r
+ OUT CONST PRM_CONTEXT_BUFFER **ContextBuffer\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
DEBUG ((DEBUG_INFO, " %a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
- if (HandlerGuid == NULL || ModuleContextBuffers == NULL || ContextBuffer == NULL) {\r
+ if ((HandlerGuid == NULL) || (ModuleContextBuffers == NULL) || (ContextBuffer == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
**/\r
EFI_STATUS\r
GetModuleContextBuffers (\r
- IN PRM_GUID_SEARCH_TYPE GuidSearchType,\r
- IN CONST EFI_GUID *Guid,\r
- OUT CONST PRM_MODULE_CONTEXT_BUFFERS **PrmModuleContextBuffers\r
+ IN PRM_GUID_SEARCH_TYPE GuidSearchType,\r
+ IN CONST EFI_GUID *Guid,\r
+ OUT CONST PRM_MODULE_CONTEXT_BUFFERS **PrmModuleContextBuffers\r
)\r
{\r
- EFI_STATUS Status;\r
- UINTN HandleCount;\r
- UINTN Index;\r
- EFI_HANDLE *HandleBuffer;\r
- PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
- CONST PRM_CONTEXT_BUFFER *PrmContextBuffer;\r
+ EFI_STATUS Status;\r
+ UINTN HandleCount;\r
+ UINTN Index;\r
+ EFI_HANDLE *HandleBuffer;\r
+ PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
+ CONST PRM_CONTEXT_BUFFER *PrmContextBuffer;\r
\r
DEBUG ((DEBUG_INFO, " %a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
- if (Guid == NULL || PrmModuleContextBuffers == NULL) {\r
+ if ((Guid == NULL) || (PrmModuleContextBuffers == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
*PrmModuleContextBuffers = NULL;\r
\r
Status = gBS->LocateHandleBuffer (\r
Status = gBS->HandleProtocol (\r
HandleBuffer[Index],\r
&gPrmConfigProtocolGuid,\r
- (VOID **) &PrmConfigProtocol\r
+ (VOID **)&PrmConfigProtocol\r
);\r
ASSERT_EFI_ERROR (Status);\r
- if (EFI_ERROR (Status) || PrmConfigProtocol == NULL) {\r
+ if (EFI_ERROR (Status) || (PrmConfigProtocol == NULL)) {\r
continue;\r
}\r
\r
**/\r
EFI_STATUS\r
GetContextBuffer (\r
- IN CONST EFI_GUID *PrmHandlerGuid,\r
- IN CONST PRM_MODULE_CONTEXT_BUFFERS *PrmModuleContextBuffers OPTIONAL,\r
- OUT CONST PRM_CONTEXT_BUFFER **PrmContextBuffer\r
+ IN CONST EFI_GUID *PrmHandlerGuid,\r
+ IN CONST PRM_MODULE_CONTEXT_BUFFERS *PrmModuleContextBuffers OPTIONAL,\r
+ OUT CONST PRM_CONTEXT_BUFFER **PrmContextBuffer\r
)\r
{\r
- EFI_STATUS Status;\r
- CONST PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
+ EFI_STATUS Status;\r
+ CONST PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
\r
DEBUG ((DEBUG_INFO, " %a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
- if (PrmHandlerGuid == NULL || PrmContextBuffer == NULL) {\r
+ if ((PrmHandlerGuid == NULL) || (PrmContextBuffer == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
*PrmContextBuffer = NULL;\r
\r
if (PrmModuleContextBuffers == NULL) {\r
} else {\r
ContextBuffers = PrmModuleContextBuffers;\r
}\r
+\r
Status = FindContextBufferInModuleBuffers (PrmHandlerGuid, ContextBuffers, PrmContextBuffer);\r
\r
return Status;\r
#include <Library/UnitTestLib.h>\r
#include <Protocol/PrmConfig.h>\r
\r
-#define UNIT_TEST_NAME "PRM Context Buffer Library Unit Test"\r
-#define UNIT_TEST_VERSION "0.1"\r
+#define UNIT_TEST_NAME "PRM Context Buffer Library Unit Test"\r
+#define UNIT_TEST_VERSION "0.1"\r
\r
-///=== TEST DATA ==================================================================================\r
+/// === TEST DATA ==================================================================================\r
\r
EFI_HANDLE mTestProtocolHandle;\r
\r
-//*----------------------------------------------------------------------------------*\r
-//* Context Structures *\r
-//*----------------------------------------------------------------------------------*\r
+// *----------------------------------------------------------------------------------*\r
+// * Context Structures *\r
+// *----------------------------------------------------------------------------------*\r
typedef struct {\r
- PRM_MODULE_CONTEXT_BUFFERS *InstallationStructure;\r
- EFI_HANDLE Handle;\r
- PRM_GUID_SEARCH_TYPE GuidSearchType;\r
- EFI_GUID *Guid;\r
- EFI_GUID *ExpectedModuleGuid;\r
- EFI_STATUS ExpectedStatus;\r
+ PRM_MODULE_CONTEXT_BUFFERS *InstallationStructure;\r
+ EFI_HANDLE Handle;\r
+ PRM_GUID_SEARCH_TYPE GuidSearchType;\r
+ EFI_GUID *Guid;\r
+ EFI_GUID *ExpectedModuleGuid;\r
+ EFI_STATUS ExpectedStatus;\r
} PRM_CONTEXT_BUFFERS_TEST_CONTEXT;\r
\r
typedef struct {\r
- EFI_GUID *HandlerGuid;\r
- PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
- PRM_CONTEXT_BUFFER *ExpectedContextBuffer;\r
- EFI_STATUS ExpectedStatus;\r
+ EFI_GUID *HandlerGuid;\r
+ PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
+ PRM_CONTEXT_BUFFER *ExpectedContextBuffer;\r
+ EFI_STATUS ExpectedStatus;\r
} PRM_CONTEXT_BUFFER_TEST_CONTEXT;\r
\r
-//*----------------------------------------------------------------------------------*\r
-//* Test GUIDs *\r
-//*----------------------------------------------------------------------------------*\r
+// *----------------------------------------------------------------------------------*\r
+// * Test GUIDs *\r
+// *----------------------------------------------------------------------------------*\r
\r
// {52960b90-2f3a-4917-b91a-ed5f599a8809}\r
-#define HANDLER_TEST_GUID_1 {0x52960b90, 0x2f3a, 0x4917, { 0xb9, 0x1a, 0xed, 0x5f, 0x59, 0x9a, 0x88, 0x09 }}\r
-EFI_GUID mHandlerTestGuid1 = HANDLER_TEST_GUID_1;\r
+#define HANDLER_TEST_GUID_1 {0x52960b90, 0x2f3a, 0x4917, { 0xb9, 0x1a, 0xed, 0x5f, 0x59, 0x9a, 0x88, 0x09 }}\r
+EFI_GUID mHandlerTestGuid1 = HANDLER_TEST_GUID_1;\r
\r
// {9316a80d-06dc-417b-b21d-6b3c2ae4ed6f}\r
-#define HANDLER_TEST_GUID_2 {0x9316a80d, 0x06dc, 0x417b, { 0xb2, 0x1d, 0x6b, 0x3c, 0x2a, 0xe4, 0xed, 0x6f }}\r
-EFI_GUID mHandlerTestGuid2 = HANDLER_TEST_GUID_2;\r
+#define HANDLER_TEST_GUID_2 {0x9316a80d, 0x06dc, 0x417b, { 0xb2, 0x1d, 0x6b, 0x3c, 0x2a, 0xe4, 0xed, 0x6f }}\r
+EFI_GUID mHandlerTestGuid2 = HANDLER_TEST_GUID_2;\r
\r
// {d32ac8ba-6cc6-456f-9ed9-9233fa310434}\r
-#define HANDLER_TEST_GUID_3 {0xd32ac8ba, 0x6cc6, 0x456f, { 0x9e, 0xd9, 0x92, 0x33, 0xfa, 0x31, 0x04, 0x34 }}\r
-EFI_GUID mHandlerTestGuid3 = HANDLER_TEST_GUID_3;\r
+#define HANDLER_TEST_GUID_3 {0xd32ac8ba, 0x6cc6, 0x456f, { 0x9e, 0xd9, 0x92, 0x33, 0xfa, 0x31, 0x04, 0x34 }}\r
+EFI_GUID mHandlerTestGuid3 = HANDLER_TEST_GUID_3;\r
\r
// {faadaa95-070b-4a34-a919-18305dc07370}\r
-#define MODULE_TEST_GUID_1 {0xfaadaa95, 0x070b, 0x4a34, { 0xa9, 0x19, 0x18, 0x30, 0x5d, 0xc0, 0x73, 0x70 }}\r
-EFI_GUID mModuleTestGuid1 = MODULE_TEST_GUID_1;\r
+#define MODULE_TEST_GUID_1 {0xfaadaa95, 0x070b, 0x4a34, { 0xa9, 0x19, 0x18, 0x30, 0x5d, 0xc0, 0x73, 0x70 }}\r
+EFI_GUID mModuleTestGuid1 = MODULE_TEST_GUID_1;\r
\r
// {0ea24584-731c-4863-9100-75780af509a7}\r
-#define MODULE_TEST_GUID_2 {0x0ea24584, 0x731c, 0x4863, { 0x91, 0x00, 0x75, 0x78, 0x0a, 0xf5, 0x09, 0xa7 }}\r
-EFI_GUID mModuleTestGuid2 = MODULE_TEST_GUID_2;\r
+#define MODULE_TEST_GUID_2 {0x0ea24584, 0x731c, 0x4863, { 0x91, 0x00, 0x75, 0x78, 0x0a, 0xf5, 0x09, 0xa7 }}\r
+EFI_GUID mModuleTestGuid2 = MODULE_TEST_GUID_2;\r
\r
// {f456b7a1-82a6-4427-8486-87e3a602df43}\r
-#define MODULE_TEST_GUID_3 {0xf456b7a1, 0x82a6, 0x4427, { 0x84, 0x86, 0x87, 0xe3, 0xa6, 0x02, 0xdf, 0x43 }}\r
-EFI_GUID mModuleTestGuid3 = MODULE_TEST_GUID_3;\r
+#define MODULE_TEST_GUID_3 {0xf456b7a1, 0x82a6, 0x4427, { 0x84, 0x86, 0x87, 0xe3, 0xa6, 0x02, 0xdf, 0x43 }}\r
+EFI_GUID mModuleTestGuid3 = MODULE_TEST_GUID_3;\r
\r
// {4a941a9c-9dcf-471b-94b5-d9e2d8c64a1b}\r
-#define NEGATIVE_TEST_GUID {0x4a941a9c, 0x9dcf, 0x471b, {0x94, 0xb5, 0xd9, 0xe2, 0xd8, 0xc6, 0x4a, 0x1b }}\r
-EFI_GUID mNegativeTestGuid = NEGATIVE_TEST_GUID;\r
+#define NEGATIVE_TEST_GUID {0x4a941a9c, 0x9dcf, 0x471b, {0x94, 0xb5, 0xd9, 0xe2, 0xd8, 0xc6, 0x4a, 0x1b }}\r
+EFI_GUID mNegativeTestGuid = NEGATIVE_TEST_GUID;\r
\r
-//*----------------------------------------------------------------------------------*\r
-//* PRM Static Test Structures *\r
-//*----------------------------------------------------------------------------------*\r
+// *----------------------------------------------------------------------------------*\r
+// * PRM Static Test Structures *\r
+// *----------------------------------------------------------------------------------*\r
\r
-PRM_DATA_BUFFER mTestStaticDataBuffer1 = {\r
+PRM_DATA_BUFFER mTestStaticDataBuffer1 = {\r
{\r
PRM_DATA_BUFFER_HEADER_SIGNATURE,\r
sizeof (PRM_DATA_BUFFER)\r
// No data in the buffer (only a header)\r
};\r
\r
-PRM_CONTEXT_BUFFER mTestPrmContextBuffer1 = {\r
+PRM_CONTEXT_BUFFER mTestPrmContextBuffer1 = {\r
PRM_CONTEXT_BUFFER_SIGNATURE, // Signature\r
PRM_CONTEXT_BUFFER_INTERFACE_VERSION, // Version\r
0, // Reserved\r
&mTestStaticDataBuffer1 // StaticDataBuffer\r
};\r
\r
-PRM_CONTEXT_BUFFER mTestPrmContextBuffer2[2] = {\r
+PRM_CONTEXT_BUFFER mTestPrmContextBuffer2[2] = {\r
// Context buffer #1\r
{\r
PRM_CONTEXT_BUFFER_SIGNATURE, // Signature\r
}\r
};\r
\r
-PRM_MODULE_CONTEXT_BUFFERS mTestPrmModuleContextBuffers1 = {\r
+PRM_MODULE_CONTEXT_BUFFERS mTestPrmModuleContextBuffers1 = {\r
MODULE_TEST_GUID_1,\r
1,\r
&mTestPrmContextBuffer1,\r
NULL\r
};\r
\r
-PRM_MODULE_CONTEXT_BUFFERS mTestPrmModuleContextBuffers2 = {\r
+PRM_MODULE_CONTEXT_BUFFERS mTestPrmModuleContextBuffers2 = {\r
MODULE_TEST_GUID_2,\r
1,\r
&mTestPrmContextBuffer1,\r
NULL\r
};\r
\r
-PRM_MODULE_CONTEXT_BUFFERS mTestPrmModuleContextBuffers3 = {\r
+PRM_MODULE_CONTEXT_BUFFERS mTestPrmModuleContextBuffers3 = {\r
MODULE_TEST_GUID_3,\r
2,\r
&mTestPrmContextBuffer2[0],\r
NULL\r
};\r
\r
+// *----------------------------------------------------------------------------------*\r
+// * Test Contexts *\r
+// *----------------------------------------------------------------------------------*\r
\r
-//*----------------------------------------------------------------------------------*\r
-//* Test Contexts *\r
-//*----------------------------------------------------------------------------------*\r
-\r
-//* Searches by module GUID *\r
+// * Searches by module GUID *\r
// +--------------------------------+--------+----------------+--------------------+--------------------+--------------------+\r
// + InstallationStructure | Handle | GuidSearchType | Guid | ExpectedModuleGuid | ExpectedStatus |\r
// +--------------------------------+--------+----------------+--------------------+--------------------+--------------------+\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers00 = { &mTestPrmModuleContextBuffers1, NULL, ByModuleGuid, &mModuleTestGuid1, &mModuleTestGuid1, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers01 = { &mTestPrmModuleContextBuffers2, NULL, ByModuleGuid, &mModuleTestGuid2, &mModuleTestGuid2, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers02 = { &mTestPrmModuleContextBuffers3, NULL, ByModuleGuid, &mModuleTestGuid3, &mModuleTestGuid3, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers03 = { &mTestPrmModuleContextBuffers3, NULL, ByModuleGuid, &mNegativeTestGuid, &gZeroGuid, EFI_NOT_FOUND };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers04 = { &mTestPrmModuleContextBuffers1, NULL, ByModuleGuid, &gZeroGuid, &gZeroGuid, EFI_NOT_FOUND };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers00 = { &mTestPrmModuleContextBuffers1, NULL, ByModuleGuid, &mModuleTestGuid1, &mModuleTestGuid1, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers01 = { &mTestPrmModuleContextBuffers2, NULL, ByModuleGuid, &mModuleTestGuid2, &mModuleTestGuid2, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers02 = { &mTestPrmModuleContextBuffers3, NULL, ByModuleGuid, &mModuleTestGuid3, &mModuleTestGuid3, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers03 = { &mTestPrmModuleContextBuffers3, NULL, ByModuleGuid, &mNegativeTestGuid, &gZeroGuid, EFI_NOT_FOUND };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers04 = { &mTestPrmModuleContextBuffers1, NULL, ByModuleGuid, &gZeroGuid, &gZeroGuid, EFI_NOT_FOUND };\r
\r
-//* Searches by handler GUID *\r
+// * Searches by handler GUID *\r
// +--------------------------------+--------+----------------+--------------------+--------------------+--------------------+\r
// + InstallationStructure | Handle | GuidSearchType | Guid | ExpectedModuleGuid | ExpectedStatus |\r
// +--------------------------------+--------+----------------+--------------------+--------------------+--------------------+\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers05 = { &mTestPrmModuleContextBuffers1, NULL, ByHandlerGuid, &mHandlerTestGuid1, &mModuleTestGuid1, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers06 = { &mTestPrmModuleContextBuffers1, NULL, ByHandlerGuid, &gZeroGuid, &gZeroGuid, EFI_NOT_FOUND };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers07 = { &mTestPrmModuleContextBuffers2, NULL, ByHandlerGuid, &mHandlerTestGuid1, &mModuleTestGuid2, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers08 = { &mTestPrmModuleContextBuffers2, NULL, ByHandlerGuid, &mNegativeTestGuid, &gZeroGuid, EFI_NOT_FOUND };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers09 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &mHandlerTestGuid1, &gZeroGuid, EFI_NOT_FOUND };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers10 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &mHandlerTestGuid2, &mModuleTestGuid3, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers11 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &mHandlerTestGuid3, &mModuleTestGuid3, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers12 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &gZeroGuid, &gZeroGuid, EFI_NOT_FOUND };\r
-\r
-PRM_CONTEXT_BUFFERS_TEST_CONTEXT *mContextBuffersArray[] = {\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers05 = { &mTestPrmModuleContextBuffers1, NULL, ByHandlerGuid, &mHandlerTestGuid1, &mModuleTestGuid1, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers06 = { &mTestPrmModuleContextBuffers1, NULL, ByHandlerGuid, &gZeroGuid, &gZeroGuid, EFI_NOT_FOUND };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers07 = { &mTestPrmModuleContextBuffers2, NULL, ByHandlerGuid, &mHandlerTestGuid1, &mModuleTestGuid2, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers08 = { &mTestPrmModuleContextBuffers2, NULL, ByHandlerGuid, &mNegativeTestGuid, &gZeroGuid, EFI_NOT_FOUND };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers09 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &mHandlerTestGuid1, &gZeroGuid, EFI_NOT_FOUND };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers10 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &mHandlerTestGuid2, &mModuleTestGuid3, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers11 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &mHandlerTestGuid3, &mModuleTestGuid3, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT mContextBuffers12 = { &mTestPrmModuleContextBuffers3, NULL, ByHandlerGuid, &gZeroGuid, &gZeroGuid, EFI_NOT_FOUND };\r
+\r
+PRM_CONTEXT_BUFFERS_TEST_CONTEXT *mContextBuffersArray[] = {\r
&mContextBuffers00,\r
&mContextBuffers01,\r
&mContextBuffers02,\r
// +----------------------+----------------------------------+------------------------------------------+--------------------+\r
// + HandlerGuid | ContextBuffers | ExpectedContextBuffer | ExpectedStatus |\r
// +----------------------+----------------------------------+------------------------------------------+--------------------+\r
-PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer00 = { &mHandlerTestGuid1, &mTestPrmModuleContextBuffers1, &mTestPrmContextBuffer1, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer01 = { &mHandlerTestGuid1, &mTestPrmModuleContextBuffers2, &mTestPrmContextBuffer1, EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer02 = { &mHandlerTestGuid2, &mTestPrmModuleContextBuffers3, &mTestPrmContextBuffer2[0], EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer03 = { &mHandlerTestGuid3, &mTestPrmModuleContextBuffers3, &mTestPrmContextBuffer2[1], EFI_SUCCESS };\r
-PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer04 = { &mNegativeTestGuid, &mTestPrmModuleContextBuffers1, NULL, EFI_NOT_FOUND };\r
-PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer05 = { &gZeroGuid, &mTestPrmModuleContextBuffers3, NULL, EFI_NOT_FOUND };\r
-\r
-PRM_CONTEXT_BUFFER_TEST_CONTEXT *mContextBufferArray[] = {\r
+PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer00 = { &mHandlerTestGuid1, &mTestPrmModuleContextBuffers1, &mTestPrmContextBuffer1, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer01 = { &mHandlerTestGuid1, &mTestPrmModuleContextBuffers2, &mTestPrmContextBuffer1, EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer02 = { &mHandlerTestGuid2, &mTestPrmModuleContextBuffers3, &mTestPrmContextBuffer2[0], EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer03 = { &mHandlerTestGuid3, &mTestPrmModuleContextBuffers3, &mTestPrmContextBuffer2[1], EFI_SUCCESS };\r
+PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer04 = { &mNegativeTestGuid, &mTestPrmModuleContextBuffers1, NULL, EFI_NOT_FOUND };\r
+PRM_CONTEXT_BUFFER_TEST_CONTEXT mContextBuffer05 = { &gZeroGuid, &mTestPrmModuleContextBuffers3, NULL, EFI_NOT_FOUND };\r
+\r
+PRM_CONTEXT_BUFFER_TEST_CONTEXT *mContextBufferArray[] = {\r
&mContextBuffer00,\r
&mContextBuffer01,\r
&mContextBuffer02,\r
&mContextBuffer05\r
};\r
\r
-///=== HELPER FUNCTIONS ===========================================================================\r
+/// === HELPER FUNCTIONS ===========================================================================\r
\r
// None\r
\r
-///=== TEST CASES =================================================================================\r
+/// === TEST CASES =================================================================================\r
\r
-///===== BASIC SUITE ==================================================\r
+/// ===== BASIC SUITE ==================================================\r
\r
/**\r
Verifies that passing NULL arguments to all library functions fails with EFI_INVALID_PARAMETER.\r
UNIT_TEST_STATUS\r
EFIAPI\r
NullPointerArgumentsShouldFailGracefully (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- EFI_GUID Guid;\r
- PRM_CONTEXT_BUFFER *ContextBufferPtr;\r
- PRM_MODULE_CONTEXT_BUFFERS ModuleContextBuffers;\r
- PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffersPtr;\r
+ EFI_GUID Guid;\r
+ PRM_CONTEXT_BUFFER *ContextBufferPtr;\r
+ PRM_MODULE_CONTEXT_BUFFERS ModuleContextBuffers;\r
+ PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffersPtr;\r
\r
UT_ASSERT_EQUAL (FindContextBufferInModuleBuffers (NULL, NULL, NULL), EFI_INVALID_PARAMETER);\r
UT_ASSERT_EQUAL (FindContextBufferInModuleBuffers (NULL, &ModuleContextBuffers, &ContextBufferPtr), EFI_INVALID_PARAMETER);\r
return UNIT_TEST_PASSED;\r
}\r
\r
-///===== FUNCTIONAL CORRECTNESS SUITE ==================================================\r
+/// ===== FUNCTIONAL CORRECTNESS SUITE ==================================================\r
\r
/**\r
Functional Correctness pre-requisite function.\r
UNIT_TEST_STATUS\r
EFIAPI\r
InitializeFunctionalCorrectness (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
- PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffers;\r
- PRM_CONTEXT_BUFFERS_TEST_CONTEXT *TestContext;\r
+ EFI_STATUS Status;\r
+ PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
+ PRM_MODULE_CONTEXT_BUFFERS *ModuleContextBuffers;\r
+ PRM_CONTEXT_BUFFERS_TEST_CONTEXT *TestContext;\r
\r
UT_ASSERT_NOT_NULL (Context);\r
- TestContext = (PRM_CONTEXT_BUFFERS_TEST_CONTEXT *) Context;\r
+ TestContext = (PRM_CONTEXT_BUFFERS_TEST_CONTEXT *)Context;\r
ModuleContextBuffers = TestContext->InstallationStructure;\r
\r
PrmConfigProtocol = AllocateZeroPool (sizeof (*PrmConfigProtocol));\r
\r
CopyGuid (&PrmConfigProtocol->ModuleContextBuffers.ModuleGuid, &ModuleContextBuffers->ModuleGuid);\r
PrmConfigProtocol->ModuleContextBuffers.BufferCount = ModuleContextBuffers->BufferCount;\r
- PrmConfigProtocol->ModuleContextBuffers.Buffer = ModuleContextBuffers->Buffer;\r
+ PrmConfigProtocol->ModuleContextBuffers.Buffer = ModuleContextBuffers->Buffer;\r
\r
Status = gBS->InstallProtocolInterface (\r
- &TestContext->Handle,\r
- &gPrmConfigProtocolGuid,\r
- EFI_NATIVE_INTERFACE,\r
- (VOID *) PrmConfigProtocol\r
- );\r
+ &TestContext->Handle,\r
+ &gPrmConfigProtocolGuid,\r
+ EFI_NATIVE_INTERFACE,\r
+ (VOID *)PrmConfigProtocol\r
+ );\r
UT_ASSERT_NOT_EFI_ERROR (Status);\r
\r
return UNIT_TEST_PASSED;\r
UNIT_TEST_STATUS\r
EFIAPI\r
DeInitializeFunctionalCorrectness (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
- PRM_CONTEXT_BUFFERS_TEST_CONTEXT *TestContext;\r
+ EFI_STATUS Status;\r
+ PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
+ PRM_CONTEXT_BUFFERS_TEST_CONTEXT *TestContext;\r
\r
UT_ASSERT_NOT_NULL (Context);\r
- TestContext = (PRM_CONTEXT_BUFFERS_TEST_CONTEXT *) Context;\r
+ TestContext = (PRM_CONTEXT_BUFFERS_TEST_CONTEXT *)Context;\r
\r
Status = gBS->HandleProtocol (\r
TestContext->Handle,\r
&gPrmConfigProtocolGuid,\r
- (VOID **) &PrmConfigProtocol\r
+ (VOID **)&PrmConfigProtocol\r
);\r
UT_ASSERT_NOT_EFI_ERROR (Status);\r
\r
TestContext->Handle,\r
&gPrmConfigProtocolGuid,\r
PrmConfigProtocol\r
- );\r
+ );\r
UT_ASSERT_NOT_EFI_ERROR (Status);\r
if (!EFI_ERROR (Status)) {\r
FreePool (PrmConfigProtocol);\r
UNIT_TEST_STATUS\r
EFIAPI\r
VerifyGetModuleContextBuffers (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
- PRM_CONTEXT_BUFFERS_TEST_CONTEXT *TestContext;\r
+ EFI_STATUS Status;\r
+ PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
+ PRM_CONTEXT_BUFFERS_TEST_CONTEXT *TestContext;\r
\r
ContextBuffers = NULL;\r
- TestContext = (PRM_CONTEXT_BUFFERS_TEST_CONTEXT *) Context;\r
+ TestContext = (PRM_CONTEXT_BUFFERS_TEST_CONTEXT *)Context;\r
\r
Status = GetModuleContextBuffers (TestContext->GuidSearchType, TestContext->Guid, &ContextBuffers);\r
UT_ASSERT_STATUS_EQUAL (Status, TestContext->ExpectedStatus);\r
__FUNCTION__,\r
((TestContext->GuidSearchType == ByModuleGuid) ? "module" : "handler"),\r
TestContext->Guid,\r
- (UINTN) ContextBuffers\r
+ (UINTN)ContextBuffers\r
);\r
}\r
\r
UNIT_TEST_STATUS\r
EFIAPI\r
VerifyFindContextBufferInModuleBuffers (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_CONTEXT_BUFFER *FoundContextBuffer;\r
- PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
- PRM_CONTEXT_BUFFER_TEST_CONTEXT *TestContext;\r
+ EFI_STATUS Status;\r
+ PRM_CONTEXT_BUFFER *FoundContextBuffer;\r
+ PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
+ PRM_CONTEXT_BUFFER_TEST_CONTEXT *TestContext;\r
\r
- ContextBuffers = NULL;\r
+ ContextBuffers = NULL;\r
FoundContextBuffer = NULL;\r
- TestContext = (PRM_CONTEXT_BUFFER_TEST_CONTEXT *) Context;\r
+ TestContext = (PRM_CONTEXT_BUFFER_TEST_CONTEXT *)Context;\r
\r
Status = FindContextBufferInModuleBuffers (TestContext->HandlerGuid, TestContext->ContextBuffers, &FoundContextBuffer);\r
UT_ASSERT_STATUS_EQUAL (Status, TestContext->ExpectedStatus);\r
UNIT_TEST_STATUS\r
EFIAPI\r
VerifyGetContextBuffer (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_CONTEXT_BUFFER *FoundContextBuffer;\r
- PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
- PRM_CONTEXT_BUFFER_TEST_CONTEXT *TestContext;\r
+ EFI_STATUS Status;\r
+ PRM_CONTEXT_BUFFER *FoundContextBuffer;\r
+ PRM_MODULE_CONTEXT_BUFFERS *ContextBuffers;\r
+ PRM_CONTEXT_BUFFER_TEST_CONTEXT *TestContext;\r
\r
- ContextBuffers = NULL;\r
+ ContextBuffers = NULL;\r
FoundContextBuffer = NULL;\r
- TestContext = (PRM_CONTEXT_BUFFER_TEST_CONTEXT *) Context;\r
+ TestContext = (PRM_CONTEXT_BUFFER_TEST_CONTEXT *)Context;\r
\r
Status = GetContextBuffer (TestContext->HandlerGuid, TestContext->ContextBuffers, &FoundContextBuffer);\r
UT_ASSERT_STATUS_EQUAL (Status, TestContext->ExpectedStatus);\r
return UNIT_TEST_PASSED;\r
}\r
\r
-///=== TEST ENGINE ================================================================================\r
+/// === TEST ENGINE ================================================================================\r
\r
/**\r
Entry point for the PRM Context Buffer Library unit tests.\r
@retval other Some error occurred when executing this entry point.\r
\r
**/\r
-int main ()\r
+int\r
+main (\r
+ )\r
{\r
EFI_STATUS Status;\r
UINTN Index;\r
Status = RunAllTestSuites (Framework);\r
\r
EXIT:\r
- if (Framework)\r
- {\r
+ if (Framework) {\r
FreeUnitTestFramework (Framework);\r
}\r
\r
\r
#define _DBGMSGID_ "[PRMMODULEDISCOVERYLIB]"\r
\r
-LIST_ENTRY mPrmModuleList;\r
+LIST_ENTRY mPrmModuleList;\r
\r
/**\r
Gets the next PRM module discovered after the given PRM module.\r
EFI_STATUS\r
EFIAPI\r
GetNextPrmModuleEntry (\r
- IN OUT PRM_MODULE_IMAGE_CONTEXT **ModuleImageContext\r
+ IN OUT PRM_MODULE_IMAGE_CONTEXT **ModuleImageContext\r
)\r
{\r
- LIST_ENTRY *CurrentLink;\r
- LIST_ENTRY *ForwardLink;\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *CurrentListEntry;\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ForwardListEntry;\r
+ LIST_ENTRY *CurrentLink;\r
+ LIST_ENTRY *ForwardLink;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *CurrentListEntry;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ForwardListEntry;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
} else {\r
CurrentListEntry = NULL;\r
CurrentListEntry = CR (*ModuleImageContext, PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY, Context, PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY_SIGNATURE);\r
- if (CurrentListEntry == NULL || CurrentListEntry->Signature != PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY_SIGNATURE) {\r
+ if ((CurrentListEntry == NULL) || (CurrentListEntry->Signature != PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY_SIGNATURE)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
VOID\r
)\r
{\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *PrmModuleImageContextListEntry;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *PrmModuleImageContextListEntry;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
if (PrmModuleImageContextListEntry == NULL) {\r
return NULL;\r
}\r
+\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: Allocated PrmModuleImageContextListEntry at 0x%x of size 0x%x bytes.\n",\r
_DBGMSGID_,\r
__FUNCTION__,\r
- (UINTN) PrmModuleImageContextListEntry,\r
+ (UINTN)PrmModuleImageContextListEntry,\r
sizeof (*PrmModuleImageContextListEntry)\r
));\r
\r
BOOLEAN\r
EFIAPI\r
IsAddressInMmram (\r
- IN EFI_PHYSICAL_ADDRESS Address,\r
- IN EFI_MMRAM_DESCRIPTOR *MmramRanges,\r
- IN UINTN MmramRangeCount\r
+ IN EFI_PHYSICAL_ADDRESS Address,\r
+ IN EFI_MMRAM_DESCRIPTOR *MmramRanges,\r
+ IN UINTN MmramRangeCount\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
for (Index = 0; Index < MmramRangeCount; Index++) {\r
if ((Address >= MmramRanges[Index].CpuStart) &&\r
EFI_STATUS\r
EFIAPI\r
DiscoverPrmModules (\r
- OUT UINTN *ModuleCount OPTIONAL,\r
- OUT UINTN *HandlerCount OPTIONAL\r
+ OUT UINTN *ModuleCount OPTIONAL,\r
+ OUT UINTN *HandlerCount OPTIONAL\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_MODULE_IMAGE_CONTEXT TempPrmModuleImageContext;\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *PrmModuleImageContextListEntry;\r
- EFI_LOADED_IMAGE_PROTOCOL *LoadedImageProtocol;\r
- EFI_HANDLE *HandleBuffer;\r
- UINTN HandleCount;\r
- UINTN Index;\r
- UINTN PrmHandlerCount;\r
- UINTN PrmModuleCount;\r
- EFI_MM_ACCESS_PROTOCOL *MmAccess;\r
- UINTN Size;\r
- EFI_MMRAM_DESCRIPTOR *MmramRanges;\r
- UINTN MmramRangeCount;\r
+ EFI_STATUS Status;\r
+ PRM_MODULE_IMAGE_CONTEXT TempPrmModuleImageContext;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *PrmModuleImageContextListEntry;\r
+ EFI_LOADED_IMAGE_PROTOCOL *LoadedImageProtocol;\r
+ EFI_HANDLE *HandleBuffer;\r
+ UINTN HandleCount;\r
+ UINTN Index;\r
+ UINTN PrmHandlerCount;\r
+ UINTN PrmModuleCount;\r
+ EFI_MM_ACCESS_PROTOCOL *MmAccess;\r
+ UINTN Size;\r
+ EFI_MMRAM_DESCRIPTOR *MmramRanges;\r
+ UINTN MmramRangeCount;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
PrmHandlerCount = 0;\r
- PrmModuleCount = 0;\r
+ PrmModuleCount = 0;\r
\r
if (!IsListEmpty (&mPrmModuleList)) {\r
return EFI_ALREADY_STARTED;\r
return EFI_NOT_FOUND;\r
}\r
\r
- MmramRanges = NULL;\r
+ MmramRanges = NULL;\r
MmramRangeCount = 0;\r
- Status = gBS->LocateProtocol (\r
- &gEfiMmAccessProtocolGuid,\r
- NULL,\r
- (VOID **)&MmAccess\r
- );\r
+ Status = gBS->LocateProtocol (\r
+ &gEfiMmAccessProtocolGuid,\r
+ NULL,\r
+ (VOID **)&MmAccess\r
+ );\r
if (Status == EFI_SUCCESS) {\r
//\r
// Get MMRAM range information\r
//\r
- Size = 0;\r
+ Size = 0;\r
Status = MmAccess->GetCapabilities (MmAccess, &Size, NULL);\r
if ((Status == EFI_BUFFER_TOO_SMALL) && (Size != 0)) {\r
MmramRanges = (EFI_MMRAM_DESCRIPTOR *)AllocatePool (Size);\r
Status = gBS->HandleProtocol (\r
HandleBuffer[Index],\r
&gEfiLoadedImageProtocolGuid,\r
- (VOID **) &LoadedImageProtocol\r
+ (VOID **)&LoadedImageProtocol\r
);\r
if (EFI_ERROR (Status)) {\r
continue;\r
TempPrmModuleImageContext.PeCoffImageContext.ImageRead = PeCoffLoaderImageReadFromMemory;\r
\r
Status = PeCoffLoaderGetImageInfo (&TempPrmModuleImageContext.PeCoffImageContext);\r
- if (EFI_ERROR (Status) || TempPrmModuleImageContext.PeCoffImageContext.ImageError != IMAGE_ERROR_SUCCESS) {\r
+ if (EFI_ERROR (Status) || (TempPrmModuleImageContext.PeCoffImageContext.ImageError != IMAGE_ERROR_SUCCESS)) {\r
DEBUG ((\r
DEBUG_WARN,\r
"%a %a: ImageHandle 0x%016lx is not a valid PE/COFF image. It cannot be considered a PRM module.\n",\r
_DBGMSGID_,\r
__FUNCTION__,\r
- (EFI_PHYSICAL_ADDRESS) (UINTN) LoadedImageProtocol->ImageBase\r
+ (EFI_PHYSICAL_ADDRESS)(UINTN)LoadedImageProtocol->ImageBase\r
));\r
continue;\r
}\r
+\r
if (TempPrmModuleImageContext.PeCoffImageContext.IsTeImage) {\r
// A PRM Module is not allowed to be a TE image\r
continue;\r
\r
// Attempt to find the PRM Module Export Descriptor in the export table\r
Status = GetPrmModuleExportDescriptorTable (\r
- TempPrmModuleImageContext.ExportDirectory,\r
- &TempPrmModuleImageContext.PeCoffImageContext,\r
- &TempPrmModuleImageContext.ExportDescriptor\r
- );\r
- if (EFI_ERROR (Status) || TempPrmModuleImageContext.ExportDescriptor == NULL) {\r
+ TempPrmModuleImageContext.ExportDirectory,\r
+ &TempPrmModuleImageContext.PeCoffImageContext,\r
+ &TempPrmModuleImageContext.ExportDescriptor\r
+ );\r
+ if (EFI_ERROR (Status) || (TempPrmModuleImageContext.ExportDescriptor == NULL)) {\r
continue;\r
}\r
+\r
// A PRM Module Export Descriptor was successfully found, this is considered a PRM Module.\r
\r
//\r
if (PrmModuleImageContextListEntry == NULL) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
+\r
CopyMem (\r
&PrmModuleImageContextListEntry->Context,\r
&TempPrmModuleImageContext,\r
if (HandlerCount != NULL) {\r
*HandlerCount = PrmHandlerCount;\r
}\r
+\r
if (ModuleCount != NULL) {\r
*ModuleCount = PrmModuleCount;\r
}\r
EFI_STATUS\r
EFIAPI\r
PrmModuleDiscoveryLibDestructor (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- LIST_ENTRY *Link;\r
- LIST_ENTRY *NextLink;\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
+ LIST_ENTRY *Link;\r
+ LIST_ENTRY *NextLink;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
\r
if (IsListEmpty (&mPrmModuleList)) {\r
return EFI_SUCCESS;\r
Link = GetFirstNode (&mPrmModuleList);\r
while (!IsNull (&mPrmModuleList, Link)) {\r
ListEntry = CR (Link, PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY, Link, PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY_SIGNATURE);\r
- NextLink = GetNextNode (&mPrmModuleList, Link);\r
+ NextLink = GetNextNode (&mPrmModuleList, Link);\r
\r
RemoveEntryList (Link);\r
FreePool (ListEntry);\r
EFI_STATUS\r
EFIAPI\r
PrmModuleDiscoveryLibConstructor (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
InitializeListHead (&mPrmModuleList);\r
\r
#include <PrmModuleImageContext.h>\r
\r
-#define PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY_SIGNATURE SIGNATURE_32('P','R','M','E')\r
+#define PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY_SIGNATURE SIGNATURE_32('P','R','M','E')\r
\r
#pragma pack(push, 1)\r
\r
typedef struct {\r
- UINTN Signature;\r
- LIST_ENTRY Link;\r
- PRM_MODULE_IMAGE_CONTEXT Context;\r
+ UINTN Signature;\r
+ LIST_ENTRY Link;\r
+ PRM_MODULE_IMAGE_CONTEXT Context;\r
} PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY;\r
\r
#pragma pack(pop)\r
\r
#include "../PrmModuleDiscovery.h"\r
\r
-#define UNIT_TEST_NAME "PRM Module Discovery Library Unit Test"\r
-#define UNIT_TEST_VERSION "0.1"\r
+#define UNIT_TEST_NAME "PRM Module Discovery Library Unit Test"\r
+#define UNIT_TEST_VERSION "0.1"\r
\r
-///=== TEST CASES =================================================================================\r
+/// === TEST CASES =================================================================================\r
\r
-///===== CREATE NEW PRM MODULE IMAGE CONTEXT LIST ENTRY TESTS SUITE ==================================================\r
+/// ===== CREATE NEW PRM MODULE IMAGE CONTEXT LIST ENTRY TESTS SUITE ==================================================\r
\r
/**\r
Verifies that the buffer returned can be deallocated.\r
UNIT_TEST_STATUS\r
EFIAPI\r
PrmModuleImageContextListEntryShouldDeallocate (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
\r
ListEntry = CreateNewPrmModuleImageContextListEntry ();\r
\r
UNIT_TEST_STATUS\r
EFIAPI\r
PrmModuleImageContextListEntrySignatureShouldBeValid (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
\r
ListEntry = CreateNewPrmModuleImageContextListEntry ();\r
\r
UNIT_TEST_STATUS\r
EFIAPI\r
PrmModuleImageContextListEntryImageContextShouldBeZeroed (\r
- IN UNIT_TEST_CONTEXT Context\r
+ IN UNIT_TEST_CONTEXT Context\r
)\r
{\r
- PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
- PRM_MODULE_IMAGE_CONTEXT ImageContext;\r
+ PRM_MODULE_IMAGE_CONTEXT_LIST_ENTRY *ListEntry;\r
+ PRM_MODULE_IMAGE_CONTEXT ImageContext;\r
\r
ListEntry = CreateNewPrmModuleImageContextListEntry ();\r
\r
return UNIT_TEST_PASSED;\r
}\r
\r
-///=== TEST ENGINE ================================================================================\r
+/// === TEST ENGINE ================================================================================\r
\r
/**\r
Entry point for the PRM Context Buffer Library unit tests.\r
@retval other Some error occurred when executing this entry point.\r
\r
**/\r
-int main ()\r
+int\r
+main (\r
+ )\r
{\r
EFI_STATUS Status;\r
UNIT_TEST_FRAMEWORK_HANDLE Framework;\r
Status = RunAllTestSuites (Framework);\r
\r
EXIT:\r
- if (Framework)\r
- {\r
+ if (Framework) {\r
FreeUnitTestFramework (Framework);\r
}\r
\r
**/\r
EFI_STATUS\r
GetPrmModuleExportDescriptorTable (\r
- IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
- IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
- OUT PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT **ExportDescriptor\r
+ IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
+ IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
+ OUT PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT **ExportDescriptor\r
)\r
{\r
- UINTN Index;\r
- EFI_PHYSICAL_ADDRESS CurrentImageAddress;\r
- UINT16 PrmModuleExportDescriptorOrdinal;\r
- CONST CHAR8 *CurrentExportName;\r
- UINT16 *OrdinalTable;\r
- UINT32 *ExportNamePointerTable;\r
- UINT32 *ExportAddressTable;\r
- PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *TempExportDescriptor;\r
+ UINTN Index;\r
+ EFI_PHYSICAL_ADDRESS CurrentImageAddress;\r
+ UINT16 PrmModuleExportDescriptorOrdinal;\r
+ CONST CHAR8 *CurrentExportName;\r
+ UINT16 *OrdinalTable;\r
+ UINT32 *ExportNamePointerTable;\r
+ UINT32 *ExportAddressTable;\r
+ PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *TempExportDescriptor;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
- if (ImageExportDirectory == NULL ||\r
- PeCoffLoaderImageContext == NULL ||\r
- PeCoffLoaderImageContext->ImageAddress == 0 ||\r
- ExportDescriptor == NULL) {\r
+ if ((ImageExportDirectory == NULL) ||\r
+ (PeCoffLoaderImageContext == NULL) ||\r
+ (PeCoffLoaderImageContext->ImageAddress == 0) ||\r
+ (ExportDescriptor == NULL))\r
+ {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
//\r
// The export name pointer table and export ordinal table form two parallel arrays associated by index.\r
//\r
- CurrentImageAddress = PeCoffLoaderImageContext->ImageAddress;\r
- ExportAddressTable = (UINT32 *) ((UINTN) CurrentImageAddress + ImageExportDirectory->AddressOfFunctions);\r
- ExportNamePointerTable = (UINT32 *) ((UINTN) CurrentImageAddress + ImageExportDirectory->AddressOfNames);\r
- OrdinalTable = (UINT16 *) ((UINTN) CurrentImageAddress + ImageExportDirectory->AddressOfNameOrdinals);\r
+ CurrentImageAddress = PeCoffLoaderImageContext->ImageAddress;\r
+ ExportAddressTable = (UINT32 *)((UINTN)CurrentImageAddress + ImageExportDirectory->AddressOfFunctions);\r
+ ExportNamePointerTable = (UINT32 *)((UINTN)CurrentImageAddress + ImageExportDirectory->AddressOfNames);\r
+ OrdinalTable = (UINT16 *)((UINTN)CurrentImageAddress + ImageExportDirectory->AddressOfNameOrdinals);\r
\r
for (Index = 0; Index < ImageExportDirectory->NumberOfNames; Index++) {\r
- CurrentExportName = (CONST CHAR8 *) ((UINTN) CurrentImageAddress + ExportNamePointerTable[Index]);\r
+ CurrentExportName = (CONST CHAR8 *)((UINTN)CurrentImageAddress + ExportNamePointerTable[Index]);\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: Export Name[0x%x] - %a.\n",\r
CurrentExportName\r
));\r
if (\r
- AsciiStrnCmp (\r
- PRM_STRING(PRM_MODULE_EXPORT_DESCRIPTOR_NAME),\r
- CurrentExportName,\r
- AsciiStrLen (PRM_STRING(PRM_MODULE_EXPORT_DESCRIPTOR_NAME))\r
- ) == 0) {\r
+ AsciiStrnCmp (\r
+ PRM_STRING (PRM_MODULE_EXPORT_DESCRIPTOR_NAME),\r
+ CurrentExportName,\r
+ AsciiStrLen (PRM_STRING (PRM_MODULE_EXPORT_DESCRIPTOR_NAME))\r
+ ) == 0)\r
+ {\r
PrmModuleExportDescriptorOrdinal = OrdinalTable[Index];\r
DEBUG ((\r
DEBUG_INFO,\r
DEBUG ((DEBUG_ERROR, "%a %a: The PRM Module Export Descriptor ordinal value is invalid.\n", _DBGMSGID_, __FUNCTION__));\r
return EFI_NOT_FOUND;\r
}\r
- TempExportDescriptor = (PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *) ((UINTN) CurrentImageAddress + ExportAddressTable[PrmModuleExportDescriptorOrdinal]);\r
+\r
+ TempExportDescriptor = (PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *)((UINTN)CurrentImageAddress + ExportAddressTable[PrmModuleExportDescriptorOrdinal]);\r
if (TempExportDescriptor->Header.Signature == PRM_MODULE_EXPORT_DESCRIPTOR_SIGNATURE) {\r
*ExportDescriptor = TempExportDescriptor;\r
- DEBUG ((DEBUG_INFO, " %a %a: PRM Module Export Descriptor found at 0x%x.\n", _DBGMSGID_, __FUNCTION__, (UINTN) ExportDescriptor));\r
+ DEBUG ((DEBUG_INFO, " %a %a: PRM Module Export Descriptor found at 0x%x.\n", _DBGMSGID_, __FUNCTION__, (UINTN)ExportDescriptor));\r
} else {\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: PRM Module Export Descriptor found at 0x%x but signature check failed.\n",\r
_DBGMSGID_,\r
__FUNCTION__,\r
- (UINTN) TempExportDescriptor\r
+ (UINTN)TempExportDescriptor\r
));\r
}\r
+\r
DEBUG ((DEBUG_INFO, " %a %a: Exiting export iteration since export descriptor found.\n", _DBGMSGID_, __FUNCTION__));\r
return EFI_SUCCESS;\r
}\r
**/\r
EFI_STATUS\r
GetExportDirectoryInPeCoffImage (\r
- IN VOID *Image,\r
- IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
- OUT EFI_IMAGE_EXPORT_DIRECTORY **ImageExportDirectory\r
+ IN VOID *Image,\r
+ IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
+ OUT EFI_IMAGE_EXPORT_DIRECTORY **ImageExportDirectory\r
)\r
{\r
- UINT16 Magic;\r
- UINT32 NumberOfRvaAndSizes;\r
- EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION OptionalHeaderPtrUnion;\r
- EFI_IMAGE_DATA_DIRECTORY *DirectoryEntry;\r
- EFI_IMAGE_EXPORT_DIRECTORY *ExportDirectory;\r
+ UINT16 Magic;\r
+ UINT32 NumberOfRvaAndSizes;\r
+ EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION OptionalHeaderPtrUnion;\r
+ EFI_IMAGE_DATA_DIRECTORY *DirectoryEntry;\r
+ EFI_IMAGE_EXPORT_DIRECTORY *ExportDirectory;\r
\r
- if (Image == NULL || PeCoffLoaderImageContext == NULL || ImageExportDirectory == NULL) {\r
+ if ((Image == NULL) || (PeCoffLoaderImageContext == NULL) || (ImageExportDirectory == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
// image with PE32 magic.\r
//\r
switch (PeCoffLoaderImageContext->Machine) {\r
- case EFI_IMAGE_MACHINE_IA32:\r
- //\r
- // Assume PE32 image with IA32 Machine field.\r
- //\r
- Magic = EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC;\r
- break;\r
- case EFI_IMAGE_MACHINE_X64:\r
- case EFI_IMAGE_MACHINE_AARCH64:\r
- //\r
- // Assume PE32+ image with X64 Machine field\r
- //\r
- Magic = EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC;\r
- break;\r
- default:\r
- //\r
- // For unknown Machine field, use Magic in optional header\r
- //\r
- DEBUG ((\r
- DEBUG_WARN,\r
- "%a %a: The machine type for this image is not valid for a PRM module.\n",\r
- _DBGMSGID_,\r
- __FUNCTION__\r
- ));\r
- return EFI_UNSUPPORTED;\r
+ case EFI_IMAGE_MACHINE_IA32:\r
+ //\r
+ // Assume PE32 image with IA32 Machine field.\r
+ //\r
+ Magic = EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC;\r
+ break;\r
+ case EFI_IMAGE_MACHINE_X64:\r
+ case EFI_IMAGE_MACHINE_AARCH64:\r
+ //\r
+ // Assume PE32+ image with X64 Machine field\r
+ //\r
+ Magic = EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC;\r
+ break;\r
+ default:\r
+ //\r
+ // For unknown Machine field, use Magic in optional header\r
+ //\r
+ DEBUG ((\r
+ DEBUG_WARN,\r
+ "%a %a: The machine type for this image is not valid for a PRM module.\n",\r
+ _DBGMSGID_,\r
+ __FUNCTION__\r
+ ));\r
+ return EFI_UNSUPPORTED;\r
}\r
\r
- OptionalHeaderPtrUnion.Pe32 = (EFI_IMAGE_NT_HEADERS32 *) (\r
- (UINTN) Image +\r
- PeCoffLoaderImageContext->PeCoffHeaderOffset\r
- );\r
+ OptionalHeaderPtrUnion.Pe32 = (EFI_IMAGE_NT_HEADERS32 *)(\r
+ (UINTN)Image +\r
+ PeCoffLoaderImageContext->PeCoffHeaderOffset\r
+ );\r
\r
//\r
// Check the PE/COFF Header Signature. Determine if the image is valid and/or a TE image.\r
// Use the PE32 offset to get the Export Directory Entry\r
//\r
NumberOfRvaAndSizes = OptionalHeaderPtrUnion.Pe32->OptionalHeader.NumberOfRvaAndSizes;\r
- DirectoryEntry = (EFI_IMAGE_DATA_DIRECTORY *) &(OptionalHeaderPtrUnion.Pe32->OptionalHeader.DataDirectory[EFI_IMAGE_DIRECTORY_ENTRY_EXPORT]);\r
+ DirectoryEntry = (EFI_IMAGE_DATA_DIRECTORY *)&(OptionalHeaderPtrUnion.Pe32->OptionalHeader.DataDirectory[EFI_IMAGE_DIRECTORY_ENTRY_EXPORT]);\r
} else if (OptionalHeaderPtrUnion.Pe32->OptionalHeader.Magic == EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC) {\r
//\r
// Use the PE32+ offset get the Export Directory Entry\r
//\r
NumberOfRvaAndSizes = OptionalHeaderPtrUnion.Pe32Plus->OptionalHeader.NumberOfRvaAndSizes;\r
- DirectoryEntry = (EFI_IMAGE_DATA_DIRECTORY *) &(OptionalHeaderPtrUnion.Pe32Plus->OptionalHeader.DataDirectory[EFI_IMAGE_DIRECTORY_ENTRY_EXPORT]);\r
+ DirectoryEntry = (EFI_IMAGE_DATA_DIRECTORY *)&(OptionalHeaderPtrUnion.Pe32Plus->OptionalHeader.DataDirectory[EFI_IMAGE_DIRECTORY_ENTRY_EXPORT]);\r
} else {\r
return EFI_UNSUPPORTED;\r
}\r
\r
- if (NumberOfRvaAndSizes <= EFI_IMAGE_DIRECTORY_ENTRY_EXPORT || DirectoryEntry->VirtualAddress == 0) {\r
+ if ((NumberOfRvaAndSizes <= EFI_IMAGE_DIRECTORY_ENTRY_EXPORT) || (DirectoryEntry->VirtualAddress == 0)) {\r
//\r
// The export directory is not present\r
//\r
return EFI_NOT_FOUND;\r
- } else if (((UINT32) (~0) - DirectoryEntry->VirtualAddress) < DirectoryEntry->Size) {\r
+ } else if (((UINT32)(~0) - DirectoryEntry->VirtualAddress) < DirectoryEntry->Size) {\r
//\r
// The directory address overflows\r
//\r
DEBUG ((DEBUG_ERROR, "%a %a: The export directory entry in this image results in overflow.\n", _DBGMSGID_, __FUNCTION__));\r
return EFI_UNSUPPORTED;\r
} else {\r
- DEBUG ((DEBUG_INFO, "%a %a: Export Directory Entry found in the image at 0x%x.\n", _DBGMSGID_, __FUNCTION__, (UINTN) OptionalHeaderPtrUnion.Pe32));\r
+ DEBUG ((DEBUG_INFO, "%a %a: Export Directory Entry found in the image at 0x%x.\n", _DBGMSGID_, __FUNCTION__, (UINTN)OptionalHeaderPtrUnion.Pe32));\r
DEBUG ((DEBUG_INFO, " %a %a: Directory Entry Virtual Address = 0x%x.\n", _DBGMSGID_, __FUNCTION__, DirectoryEntry->VirtualAddress));\r
\r
- ExportDirectory = (EFI_IMAGE_EXPORT_DIRECTORY *) ((UINTN) Image + DirectoryEntry->VirtualAddress);\r
+ ExportDirectory = (EFI_IMAGE_EXPORT_DIRECTORY *)((UINTN)Image + DirectoryEntry->VirtualAddress);\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: Export Directory Table found successfully at 0x%x. Name address = 0x%x. Name = %a.\n",\r
_DBGMSGID_,\r
__FUNCTION__,\r
- (UINTN) ExportDirectory,\r
- ((UINTN) Image + ExportDirectory->Name),\r
- (CHAR8 *) ((UINTN) Image + ExportDirectory->Name)\r
+ (UINTN)ExportDirectory,\r
+ ((UINTN)Image + ExportDirectory->Name),\r
+ (CHAR8 *)((UINTN)Image + ExportDirectory->Name)\r
));\r
}\r
+\r
*ImageExportDirectory = ExportDirectory;\r
\r
return EFI_SUCCESS;\r
**/\r
EFI_STATUS\r
GetImageVersionInPeCoffImage (\r
- IN VOID *Image,\r
- IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
- OUT UINT16 *ImageMajorVersion,\r
- OUT UINT16 *ImageMinorVersion\r
+ IN VOID *Image,\r
+ IN PE_COFF_LOADER_IMAGE_CONTEXT *PeCoffLoaderImageContext,\r
+ OUT UINT16 *ImageMajorVersion,\r
+ OUT UINT16 *ImageMinorVersion\r
)\r
{\r
- EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION OptionalHeaderPtrUnion;\r
- UINT16 Magic;\r
+ EFI_IMAGE_OPTIONAL_HEADER_PTR_UNION OptionalHeaderPtrUnion;\r
+ UINT16 Magic;\r
\r
DEBUG ((DEBUG_INFO, " %a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
- if (Image == NULL || PeCoffLoaderImageContext == NULL || ImageMajorVersion == NULL || ImageMinorVersion == NULL) {\r
+ if ((Image == NULL) || (PeCoffLoaderImageContext == NULL) || (ImageMajorVersion == NULL) || (ImageMinorVersion == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
// image with PE32 magic.\r
//\r
switch (PeCoffLoaderImageContext->Machine) {\r
- case EFI_IMAGE_MACHINE_IA32:\r
- //\r
- // Assume PE32 image\r
- //\r
- Magic = EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC;\r
- break;\r
- case EFI_IMAGE_MACHINE_X64:\r
- case EFI_IMAGE_MACHINE_AARCH64:\r
- //\r
- // Assume PE32+ image\r
- //\r
- Magic = EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC;\r
- break;\r
- default:\r
- //\r
- // For unknown Machine field, use Magic in optional header\r
- //\r
- DEBUG ((\r
- DEBUG_WARN,\r
- "%a %a: The machine type for this image is not valid for a PRM module.\n",\r
- _DBGMSGID_,\r
- __FUNCTION__\r
- ));\r
- return EFI_UNSUPPORTED;\r
+ case EFI_IMAGE_MACHINE_IA32:\r
+ //\r
+ // Assume PE32 image\r
+ //\r
+ Magic = EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC;\r
+ break;\r
+ case EFI_IMAGE_MACHINE_X64:\r
+ case EFI_IMAGE_MACHINE_AARCH64:\r
+ //\r
+ // Assume PE32+ image\r
+ //\r
+ Magic = EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC;\r
+ break;\r
+ default:\r
+ //\r
+ // For unknown Machine field, use Magic in optional header\r
+ //\r
+ DEBUG ((\r
+ DEBUG_WARN,\r
+ "%a %a: The machine type for this image is not valid for a PRM module.\n",\r
+ _DBGMSGID_,\r
+ __FUNCTION__\r
+ ));\r
+ return EFI_UNSUPPORTED;\r
}\r
\r
- OptionalHeaderPtrUnion.Pe32 = (EFI_IMAGE_NT_HEADERS32 *) (\r
- (UINTN) Image +\r
- PeCoffLoaderImageContext->PeCoffHeaderOffset\r
- );\r
+ OptionalHeaderPtrUnion.Pe32 = (EFI_IMAGE_NT_HEADERS32 *)(\r
+ (UINTN)Image +\r
+ PeCoffLoaderImageContext->PeCoffHeaderOffset\r
+ );\r
//\r
// Check the PE/COFF Header Signature. Determine if the image is valid and/or a TE image.\r
//\r
**/\r
EFI_STATUS\r
GetExportEntryAddress (\r
- IN CONST CHAR8 *ExportName,\r
- IN EFI_PHYSICAL_ADDRESS ImageBaseAddress,\r
- IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
- OUT EFI_PHYSICAL_ADDRESS *ExportPhysicalAddress\r
+ IN CONST CHAR8 *ExportName,\r
+ IN EFI_PHYSICAL_ADDRESS ImageBaseAddress,\r
+ IN EFI_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory,\r
+ OUT EFI_PHYSICAL_ADDRESS *ExportPhysicalAddress\r
)\r
{\r
- UINTN ExportNameIndex;\r
- UINT16 CurrentExportOrdinal;\r
- UINT32 *ExportAddressTable;\r
- UINT32 *ExportNamePointerTable;\r
- UINT16 *OrdinalTable;\r
- CONST CHAR8 *ExportNameTablePointerName;\r
-\r
- if (ExportName == NULL || ImageBaseAddress == 0 || ImageExportDirectory == NULL || ExportPhysicalAddress == NULL) {\r
+ UINTN ExportNameIndex;\r
+ UINT16 CurrentExportOrdinal;\r
+ UINT32 *ExportAddressTable;\r
+ UINT32 *ExportNamePointerTable;\r
+ UINT16 *OrdinalTable;\r
+ CONST CHAR8 *ExportNameTablePointerName;\r
+\r
+ if ((ExportName == NULL) || (ImageBaseAddress == 0) || (ImageExportDirectory == NULL) || (ExportPhysicalAddress == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
*ExportPhysicalAddress = 0;\r
\r
- ExportAddressTable = (UINT32 *) ((UINTN) ImageBaseAddress + ImageExportDirectory->AddressOfFunctions);\r
- ExportNamePointerTable = (UINT32 *) ((UINTN) ImageBaseAddress + ImageExportDirectory->AddressOfNames);\r
- OrdinalTable = (UINT16 *) ((UINTN) ImageBaseAddress + ImageExportDirectory->AddressOfNameOrdinals);\r
+ ExportAddressTable = (UINT32 *)((UINTN)ImageBaseAddress + ImageExportDirectory->AddressOfFunctions);\r
+ ExportNamePointerTable = (UINT32 *)((UINTN)ImageBaseAddress + ImageExportDirectory->AddressOfNames);\r
+ OrdinalTable = (UINT16 *)((UINTN)ImageBaseAddress + ImageExportDirectory->AddressOfNameOrdinals);\r
\r
for (ExportNameIndex = 0; ExportNameIndex < ImageExportDirectory->NumberOfNames; ExportNameIndex++) {\r
- ExportNameTablePointerName = (CONST CHAR8 *) ((UINTN) ImageBaseAddress + ExportNamePointerTable[ExportNameIndex]);\r
+ ExportNameTablePointerName = (CONST CHAR8 *)((UINTN)ImageBaseAddress + ExportNamePointerTable[ExportNameIndex]);\r
\r
if (AsciiStrnCmp (ExportName, ExportNameTablePointerName, PRM_HANDLER_NAME_MAXIMUM_LENGTH) == 0) {\r
CurrentExportOrdinal = OrdinalTable[ExportNameIndex];\r
break;\r
}\r
\r
- *ExportPhysicalAddress = (EFI_PHYSICAL_ADDRESS) ((UINTN) ImageBaseAddress + ExportAddressTable[CurrentExportOrdinal]);\r
+ *ExportPhysicalAddress = (EFI_PHYSICAL_ADDRESS)((UINTN)ImageBaseAddress + ExportAddressTable[CurrentExportOrdinal]);\r
return EFI_SUCCESS;\r
}\r
}\r
#include <PrmMmio.h>\r
#include <Protocol/PrmConfig.h>\r
\r
-#define _DBGMSGID_ "[PRMCONFIG]"\r
+#define _DBGMSGID_ "[PRMCONFIG]"\r
\r
-STATIC UINTN mMaxRuntimeMmioRangeCount;\r
+STATIC UINTN mMaxRuntimeMmioRangeCount;\r
\r
-GLOBAL_REMOVE_IF_UNREFERENCED STATIC PRM_RUNTIME_MMIO_RANGES **mRuntimeMmioRanges;\r
+GLOBAL_REMOVE_IF_UNREFERENCED STATIC PRM_RUNTIME_MMIO_RANGES **mRuntimeMmioRanges;\r
\r
/**\r
Converts the runtime memory range physical addresses to virtual addresses.\r
**/\r
VOID\r
ConvertRuntimeMemoryRangeAddresses (\r
- IN PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges\r
+ IN PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
- if (RuntimeMmioRanges == NULL || RuntimeMmioRanges->Count == 0) {\r
+ if ((RuntimeMmioRanges == NULL) || (RuntimeMmioRanges->Count == 0)) {\r
return;\r
}\r
\r
- for (Index = 0; Index < (UINTN) RuntimeMmioRanges->Count; Index++) {\r
+ for (Index = 0; Index < (UINTN)RuntimeMmioRanges->Count; Index++) {\r
RuntimeMmioRanges->Range[Index].VirtualBaseAddress = RuntimeMmioRanges->Range[Index].PhysicalBaseAddress;\r
- gRT->ConvertPointer (0x0, (VOID **) &(RuntimeMmioRanges->Range[Index].VirtualBaseAddress));\r
+ gRT->ConvertPointer (0x0, (VOID **)&(RuntimeMmioRanges->Range[Index].VirtualBaseAddress));\r
}\r
}\r
\r
**/\r
VOID\r
SetRuntimeMemoryRangeAttributes (\r
- IN PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges\r
+ IN PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_STATUS Status2;\r
- UINTN Index;\r
- EFI_GCD_MEMORY_SPACE_DESCRIPTOR Descriptor;\r
+ EFI_STATUS Status;\r
+ EFI_STATUS Status2;\r
+ UINTN Index;\r
+ EFI_GCD_MEMORY_SPACE_DESCRIPTOR Descriptor;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
- if (RuntimeMmioRanges == NULL || RuntimeMmioRanges->Count == 0) {\r
+ if ((RuntimeMmioRanges == NULL) || (RuntimeMmioRanges->Count == 0)) {\r
return;\r
}\r
\r
- for (Index = 0; Index < (UINTN) RuntimeMmioRanges->Count; Index++) {\r
+ for (Index = 0; Index < (UINTN)RuntimeMmioRanges->Count; Index++) {\r
DEBUG ((\r
- DEBUG_INFO, " %a %a: Runtime MMIO Range [%d].\n", _DBGMSGID_, __FUNCTION__, Index));\r
+ DEBUG_INFO,\r
+ " %a %a: Runtime MMIO Range [%d].\n",\r
+ _DBGMSGID_,\r
+ __FUNCTION__,\r
+ Index\r
+ ));\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: Physical address = 0x%016x. Length = 0x%x.\n",\r
ASSERT ((RuntimeMmioRanges->Range[Index].Length & EFI_PAGE_MASK) == 0);\r
\r
Status2 = EFI_NOT_FOUND;\r
- Status = gDS->GetMemorySpaceDescriptor (RuntimeMmioRanges->Range[Index].PhysicalBaseAddress, &Descriptor);\r
+ Status = gDS->GetMemorySpaceDescriptor (RuntimeMmioRanges->Range[Index].PhysicalBaseAddress, &Descriptor);\r
if (!EFI_ERROR (Status) &&\r
- (\r
- (Descriptor.GcdMemoryType != EfiGcdMemoryTypeMemoryMappedIo && Descriptor.GcdMemoryType != EfiGcdMemoryTypeReserved) ||\r
- ((Descriptor.Length & EFI_PAGE_MASK) != 0)\r
+ (\r
+ ((Descriptor.GcdMemoryType != EfiGcdMemoryTypeMemoryMappedIo) && (Descriptor.GcdMemoryType != EfiGcdMemoryTypeReserved)) ||\r
+ ((Descriptor.Length & EFI_PAGE_MASK) != 0)\r
+ )\r
)\r
- ) {\r
+ {\r
Status2 = gDS->RemoveMemorySpace (\r
RuntimeMmioRanges->Range[Index].PhysicalBaseAddress,\r
Descriptor.Length\r
);\r
}\r
\r
- if (Status == EFI_NOT_FOUND || !EFI_ERROR (Status2)) {\r
+ if ((Status == EFI_NOT_FOUND) || !EFI_ERROR (Status2)) {\r
Status = gDS->AddMemorySpace (\r
EfiGcdMemoryTypeMemoryMappedIo,\r
RuntimeMmioRanges->Range[Index].PhysicalBaseAddress,\r
- (UINT64) RuntimeMmioRanges->Range[Index].Length,\r
+ (UINT64)RuntimeMmioRanges->Range[Index].Length,\r
EFI_MEMORY_UC | EFI_MEMORY_RUNTIME\r
);\r
ASSERT_EFI_ERROR (Status);\r
EfiGcdAllocateAddress,\r
EfiGcdMemoryTypeMemoryMappedIo,\r
0,\r
- (UINT64) RuntimeMmioRanges->Range[Index].Length,\r
+ (UINT64)RuntimeMmioRanges->Range[Index].Length,\r
&RuntimeMmioRanges->Range[Index].PhysicalBaseAddress,\r
gImageHandle,\r
NULL\r
));\r
continue;\r
}\r
+\r
if ((Descriptor.Attributes & EFI_MEMORY_RUNTIME) != 0) {\r
continue;\r
}\r
\r
Status = gDS->SetMemorySpaceAttributes (\r
RuntimeMmioRanges->Range[Index].PhysicalBaseAddress,\r
- (UINT64) RuntimeMmioRanges->Range[Index].Length,\r
+ (UINT64)RuntimeMmioRanges->Range[Index].Length,\r
Descriptor.Attributes | EFI_MEMORY_RUNTIME\r
);\r
ASSERT_EFI_ERROR (Status);\r
VOID\r
)\r
{\r
- EFI_STATUS Status;\r
- UINTN HandleCount;\r
- UINTN HandleIndex;\r
- UINTN RangeIndex;\r
- EFI_HANDLE *HandleBuffer;\r
- PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
+ EFI_STATUS Status;\r
+ UINTN HandleCount;\r
+ UINTN HandleIndex;\r
+ UINTN RangeIndex;\r
+ EFI_HANDLE *HandleBuffer;\r
+ PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
RangeIndex = 0;\r
\r
mRuntimeMmioRanges = AllocateRuntimeZeroPool (sizeof (*mRuntimeMmioRanges) * mMaxRuntimeMmioRangeCount);\r
- if (mRuntimeMmioRanges == NULL && mMaxRuntimeMmioRangeCount > 0) {\r
+ if ((mRuntimeMmioRanges == NULL) && (mMaxRuntimeMmioRangeCount > 0)) {\r
DEBUG ((\r
DEBUG_ERROR,\r
" %a %a: Memory allocation for runtime MMIO pointer array failed.\n",\r
}\r
\r
HandleBuffer = NULL;\r
- Status = gBS->LocateHandleBuffer (\r
- ByProtocol,\r
- &gPrmConfigProtocolGuid,\r
- NULL,\r
- &HandleCount,\r
- &HandleBuffer\r
- );\r
+ Status = gBS->LocateHandleBuffer (\r
+ ByProtocol,\r
+ &gPrmConfigProtocolGuid,\r
+ NULL,\r
+ &HandleCount,\r
+ &HandleBuffer\r
+ );\r
if (!EFI_ERROR (Status)) {\r
for (HandleIndex = 0; HandleIndex < HandleCount; HandleIndex++) {\r
Status = gBS->HandleProtocol (\r
HandleBuffer[HandleIndex],\r
&gPrmConfigProtocolGuid,\r
- (VOID **) &PrmConfigProtocol\r
+ (VOID **)&PrmConfigProtocol\r
);\r
ASSERT_EFI_ERROR (Status);\r
- if (EFI_ERROR (Status) || PrmConfigProtocol == NULL) {\r
+ if (EFI_ERROR (Status) || (PrmConfigProtocol == NULL)) {\r
continue;\r
}\r
\r
ASSERT_EFI_ERROR (Status);\r
return;\r
}\r
+\r
mRuntimeMmioRanges[RangeIndex++] = PrmConfigProtocol->ModuleContextBuffers.RuntimeMmioRanges;\r
}\r
}\r
+\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: %d MMIO ranges buffers saved for future virtual memory conversion.\n",\r
**/\r
EFI_STATUS\r
ValidatePrmDataBuffer (\r
- IN CONST PRM_DATA_BUFFER *PrmDataBuffer\r
+ IN CONST PRM_DATA_BUFFER *PrmDataBuffer\r
)\r
{\r
if (PrmDataBuffer == NULL) {\r
DEBUG ((DEBUG_ERROR, " %a %a: The PRM data buffer signature is invalid. PRM module.\n", _DBGMSGID_, __FUNCTION__));\r
return EFI_NOT_FOUND;\r
}\r
+\r
if (PrmDataBuffer->Header.Length < sizeof (PRM_DATA_BUFFER_HEADER)) {\r
DEBUG ((DEBUG_ERROR, " %a %a: The PRM data buffer length is invalid.\n", _DBGMSGID_, __FUNCTION__));\r
return EFI_BUFFER_TOO_SMALL;\r
**/\r
EFI_STATUS\r
ValidatePrmContextBuffer (\r
- IN CONST PRM_CONTEXT_BUFFER *PrmContextBuffer\r
+ IN CONST PRM_CONTEXT_BUFFER *PrmContextBuffer\r
)\r
{\r
if (PrmContextBuffer == NULL) {\r
return EFI_NOT_FOUND;\r
}\r
\r
- if (PrmContextBuffer->StaticDataBuffer != NULL && EFI_ERROR (ValidatePrmDataBuffer (PrmContextBuffer->StaticDataBuffer))) {\r
+ if ((PrmContextBuffer->StaticDataBuffer != NULL) && EFI_ERROR (ValidatePrmDataBuffer (PrmContextBuffer->StaticDataBuffer))) {\r
DEBUG ((\r
DEBUG_ERROR,\r
" %a %a: Error in static buffer for PRM handler %g.\n",\r
VOID\r
EFIAPI\r
PrmConfigVirtualAddressChangeEvent (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
+ IN EFI_EVENT Event,\r
+ IN VOID *Context\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
//\r
// Convert runtime MMIO ranges\r
VOID\r
EFIAPI\r
PrmConfigEndOfDxeNotification (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
+ IN EFI_EVENT Event,\r
+ IN VOID *Context\r
)\r
{\r
- EFI_STATUS Status;\r
- UINTN HandleCount;\r
- UINTN BufferIndex;\r
- UINTN HandleIndex;\r
- EFI_HANDLE *HandleBuffer;\r
- PRM_CONTEXT_BUFFER *CurrentContextBuffer;\r
- PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
+ EFI_STATUS Status;\r
+ UINTN HandleCount;\r
+ UINTN BufferIndex;\r
+ UINTN HandleIndex;\r
+ EFI_HANDLE *HandleBuffer;\r
+ PRM_CONTEXT_BUFFER *CurrentContextBuffer;\r
+ PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
HandleBuffer = NULL;\r
- Status = gBS->LocateHandleBuffer (\r
- ByProtocol,\r
- &gPrmConfigProtocolGuid,\r
- NULL,\r
- &HandleCount,\r
- &HandleBuffer\r
- );\r
+ Status = gBS->LocateHandleBuffer (\r
+ ByProtocol,\r
+ &gPrmConfigProtocolGuid,\r
+ NULL,\r
+ &HandleCount,\r
+ &HandleBuffer\r
+ );\r
if (!EFI_ERROR (Status)) {\r
for (HandleIndex = 0; HandleIndex < HandleCount; HandleIndex++) {\r
Status = gBS->HandleProtocol (\r
HandleBuffer[HandleIndex],\r
&gPrmConfigProtocolGuid,\r
- (VOID **) &PrmConfigProtocol\r
+ (VOID **)&PrmConfigProtocol\r
);\r
ASSERT_EFI_ERROR (Status);\r
- if (EFI_ERROR (Status) || PrmConfigProtocol == NULL) {\r
+ if (EFI_ERROR (Status) || (PrmConfigProtocol == NULL)) {\r
continue;\r
}\r
\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: Found PRM configuration protocol for PRM module %g.\n",\r
- _DBGMSGID_,\r
- __FUNCTION__,\r
- &PrmConfigProtocol->ModuleContextBuffers.ModuleGuid\r
- ));\r
+ _DBGMSGID_,\r
+ __FUNCTION__,\r
+ &PrmConfigProtocol->ModuleContextBuffers.ModuleGuid\r
+ ));\r
\r
DEBUG ((DEBUG_INFO, " %a %a: Validating module context buffers...\n", _DBGMSGID_, __FUNCTION__));\r
for (BufferIndex = 0; BufferIndex < PrmConfigProtocol->ModuleContextBuffers.BufferCount; BufferIndex++) {\r
));\r
}\r
}\r
+\r
DEBUG ((DEBUG_INFO, " %a %a: Module context buffer validation complete.\n", _DBGMSGID_, __FUNCTION__));\r
\r
if (PrmConfigProtocol->ModuleContextBuffers.RuntimeMmioRanges != NULL) {\r
DEBUG ((\r
DEBUG_INFO,\r
" %a %a: Found %d PRM runtime MMIO ranges.\n",\r
- _DBGMSGID_,\r
- __FUNCTION__,\r
- PrmConfigProtocol->ModuleContextBuffers.RuntimeMmioRanges->Count\r
- ));\r
+ _DBGMSGID_,\r
+ __FUNCTION__,\r
+ PrmConfigProtocol->ModuleContextBuffers.RuntimeMmioRanges->Count\r
+ ));\r
SetRuntimeMemoryRangeAttributes (PrmConfigProtocol->ModuleContextBuffers.RuntimeMmioRanges);\r
mMaxRuntimeMmioRangeCount++;\r
}\r
if (HandleBuffer != NULL) {\r
gBS->FreePool (HandleBuffer);\r
}\r
- gBS->CloseEvent(Event);\r
+\r
+ gBS->CloseEvent (Event);\r
}\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
PrmConfigEntryPoint (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_EVENT Event;\r
+ EFI_STATUS Status;\r
+ EFI_EVENT Event;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
//\r
// Register a notification function to change memory attributes at end of DXE\r
//\r
- Event = NULL;\r
+ Event = NULL;\r
Status = gBS->CreateEventEx (\r
EVT_NOTIFY_SIGNAL,\r
TPL_CALLBACK,\r
//\r
// Register a notification function for virtual address change\r
//\r
- Event = NULL;\r
+ Event = NULL;\r
Status = gBS->CreateEventEx (\r
EVT_NOTIFY_SIGNAL,\r
TPL_NOTIFY,\r
#include <Base.h>\r
#include <IndustryStandard/Acpi10.h>\r
\r
-#define PRM_TABLE_SIGNATURE SIGNATURE_32 ('P', 'R', 'M', 'T')\r
+#define PRM_TABLE_SIGNATURE SIGNATURE_32 ('P', 'R', 'M', 'T')\r
\r
-#define PRM_TABLE_REVISION 0x0\r
-#define PRM_MODULE_INFORMATION_STRUCT_REVISION 0x00\r
-#define PRM_HANDLER_INFORMATION_STRUCT_REVISION 0x00\r
+#define PRM_TABLE_REVISION 0x0\r
+#define PRM_MODULE_INFORMATION_STRUCT_REVISION 0x00\r
+#define PRM_HANDLER_INFORMATION_STRUCT_REVISION 0x00\r
\r
#pragma pack(push, 1)\r
\r
// Platform Runtime Mechanism (PRM) ACPI Table (PRMT) structures\r
//\r
typedef struct {\r
- UINT16 StructureRevision; ///< Revision of this structure\r
- UINT16 StructureLength; ///< Length in bytes of this structure\r
- GUID Identifier; ///< GUID of the PRM handler for this structure\r
- UINT64 PhysicalAddress; ///< Physical address of this PRM handler\r
- UINT64 StaticDataBuffer; ///< Physical address of the static data buffer for\r
+ UINT16 StructureRevision; ///< Revision of this structure\r
+ UINT16 StructureLength; ///< Length in bytes of this structure\r
+ GUID Identifier; ///< GUID of the PRM handler for this structure\r
+ UINT64 PhysicalAddress; ///< Physical address of this PRM handler\r
+ UINT64 StaticDataBuffer; ///< Physical address of the static data buffer for\r
///< this PRM handler (PRM_DATA_BUFFER *)\r
- UINT64 AcpiParameterBuffer; ///< Physical address of the parameter buffer\r
+ UINT64 AcpiParameterBuffer; ///< Physical address of the parameter buffer\r
///< for this PRM handler (PRM_DATA_BUFFER *)\r
///< that is only used in the case of _DSM invocation.\r
///< If _DSM invocation is not used, this value is\r
} PRM_HANDLER_INFORMATION_STRUCT;\r
\r
typedef struct {\r
- UINT16 StructureRevision; ///< Revision of this structure\r
- UINT16 StructureLength; ///< Length in bytes of this structure including the\r
+ UINT16 StructureRevision; ///< Revision of this structure\r
+ UINT16 StructureLength; ///< Length in bytes of this structure including the\r
///< variable length PRM Handler Info array\r
- GUID Identifier; ///< GUID of the PRM module for this structure\r
- UINT16 MajorRevision; ///< PRM module major revision\r
- UINT16 MinorRevision; ///< PRM module minor revision\r
- UINT16 HandlerCount; ///< Number of entries in the Handler Info array\r
- UINT32 HandlerInfoOffset; ///< Offset in bytes from the beginning of this\r
+ GUID Identifier; ///< GUID of the PRM module for this structure\r
+ UINT16 MajorRevision; ///< PRM module major revision\r
+ UINT16 MinorRevision; ///< PRM module minor revision\r
+ UINT16 HandlerCount; ///< Number of entries in the Handler Info array\r
+ UINT32 HandlerInfoOffset; ///< Offset in bytes from the beginning of this\r
///< structure to the Handler Info array\r
- UINT64 RuntimeMmioRanges; ///< Physical address of the PRM MMIO Ranges\r
+ UINT64 RuntimeMmioRanges; ///< Physical address of the PRM MMIO Ranges\r
///< structure (PRM_MODULE_RUNTIME_MMIO_RANGES *)\r
- PRM_HANDLER_INFORMATION_STRUCT HandlerInfoStructure[1];\r
+ PRM_HANDLER_INFORMATION_STRUCT HandlerInfoStructure[1];\r
} PRM_MODULE_INFORMATION_STRUCT;\r
\r
typedef struct {\r
- EFI_ACPI_DESCRIPTION_HEADER Header; ///< Standard ACPI description header\r
- GUID PrmPlatformGuid; ///< A GUID that uniquely identifies this platform.\r
+ EFI_ACPI_DESCRIPTION_HEADER Header; ///< Standard ACPI description header\r
+ GUID PrmPlatformGuid; ///< A GUID that uniquely identifies this platform.\r
///< Used to check for compatibility in PRM module\r
///< runtime updates.\r
- UINT32 PrmModuleInfoOffset; ///< Offset in bytes from the beginning of this\r
+ UINT32 PrmModuleInfoOffset; ///< Offset in bytes from the beginning of this\r
///< structure to the PRM Module Info array\r
- UINT32 PrmModuleInfoCount; ///< Number of entries in the PRM Module Info array\r
- PRM_MODULE_INFORMATION_STRUCT PrmModuleInfoStructure[1];\r
+ UINT32 PrmModuleInfoCount; ///< Number of entries in the PRM Module Info array\r
+ PRM_MODULE_INFORMATION_STRUCT PrmModuleInfoStructure[1];\r
} PRM_ACPI_DESCRIPTION_TABLE;\r
\r
#pragma pack(pop)\r
//\r
// Todo: Revisit whether to use; currently both macros are not used\r
//\r
-#define PRM_MODULE_INFORMATION_STRUCTURE(ModuleGuid, ModuleRevision, HandlerCount, PrmHanderInfoStructureArray) { \\r
+#define PRM_MODULE_INFORMATION_STRUCTURE(ModuleGuid, ModuleRevision, HandlerCount, PrmHanderInfoStructureArray) { \\r
{ \\r
- PRM_MODULE_INFORMATION_STRUCT_REVISION, /* UINT16 StructureRevision; */ \\r
- (OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure) + (HandlerCount * sizeof (PRM_HANDLER_INFORMATION_STRUCT))) /* UINT16 StructureLength; */ \\r
- ModuleGuid, /* GUID ModuleGuid; */ \\r
- ModuleRevision, /* UINT16 ModuleRevision */ \\r
- HandlerCount, /* UINT16 HandlerCount */ \\r
- OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoOffset), /* UINT32 HandlerInfoOffset */ \\r
- PrmHanderInfoStructureArray /* PRM_HANDLER_INFORMATION_STRUCT HandlerInfoStructure */ \\r
+ PRM_MODULE_INFORMATION_STRUCT_REVISION, /* UINT16 StructureRevision; */ \\r
+ (OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure) + (HandlerCount * sizeof (PRM_HANDLER_INFORMATION_STRUCT))) /* UINT16 StructureLength; */ \\r
+ ModuleGuid, /* GUID ModuleGuid; */ \\r
+ ModuleRevision, /* UINT16 ModuleRevision */ \\r
+ HandlerCount, /* UINT16 HandlerCount */ \\r
+ OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoOffset), /* UINT32 HandlerInfoOffset */ \\r
+ PrmHanderInfoStructureArray /* PRM_HANDLER_INFORMATION_STRUCT HandlerInfoStructure */ \\r
} \\r
}\r
\r
-#define PRM_HANDLER_INFORMATION_STRUCTURE(HandlerGuid, PhysicalAddress) { \\r
+#define PRM_HANDLER_INFORMATION_STRUCTURE(HandlerGuid, PhysicalAddress) { \\r
{ \\r
PRM_HANDLER_INFORMATION_STRUCT_REVISION, /* UINT16 StructureRevision; */ \\r
sizeof (PRM_HANDLER_INFORMATION_STRUCT), /* UINT16 StructureLength; */ \\r
\r
#define _DBGMSGID_ "[PRMLOADER]"\r
\r
-UINTN mPrmHandlerCount;\r
-UINTN mPrmModuleCount;\r
+UINTN mPrmHandlerCount;\r
+UINTN mPrmModuleCount;\r
\r
/**\r
Processes a list of PRM context entries to build a PRM ACPI table.\r
**/\r
EFI_STATUS\r
ProcessPrmModules (\r
- OUT PRM_ACPI_DESCRIPTION_TABLE **PrmAcpiDescriptionTable\r
+ OUT PRM_ACPI_DESCRIPTION_TABLE **PrmAcpiDescriptionTable\r
)\r
{\r
- EFI_IMAGE_EXPORT_DIRECTORY *CurrentImageExportDirectory;\r
- PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *CurrentExportDescriptorStruct;\r
- PRM_ACPI_DESCRIPTION_TABLE *PrmAcpiTable;\r
- PRM_MODULE_IMAGE_CONTEXT *CurrentPrmModuleImageContext;\r
- CONST CHAR8 *CurrentExportDescriptorHandlerName;\r
-\r
- ACPI_PARAMETER_BUFFER_DESCRIPTOR *CurrentModuleAcpiParamDescriptors;\r
- PRM_CONTEXT_BUFFER *CurrentContextBuffer;\r
- PRM_MODULE_CONTEXT_BUFFERS *CurrentModuleContextBuffers;\r
- PRM_MODULE_INFORMATION_STRUCT *CurrentModuleInfoStruct;\r
- PRM_HANDLER_INFORMATION_STRUCT *CurrentHandlerInfoStruct;\r
-\r
- EFI_STATUS Status;\r
- EFI_PHYSICAL_ADDRESS CurrentImageAddress;\r
- UINTN AcpiParamIndex;\r
- UINTN HandlerIndex;\r
- UINT32 PrmAcpiDescriptionTableBufferSize;\r
-\r
- UINT64 HandlerPhysicalAddress;\r
+ EFI_IMAGE_EXPORT_DIRECTORY *CurrentImageExportDirectory;\r
+ PRM_MODULE_EXPORT_DESCRIPTOR_STRUCT *CurrentExportDescriptorStruct;\r
+ PRM_ACPI_DESCRIPTION_TABLE *PrmAcpiTable;\r
+ PRM_MODULE_IMAGE_CONTEXT *CurrentPrmModuleImageContext;\r
+ CONST CHAR8 *CurrentExportDescriptorHandlerName;\r
+\r
+ ACPI_PARAMETER_BUFFER_DESCRIPTOR *CurrentModuleAcpiParamDescriptors;\r
+ PRM_CONTEXT_BUFFER *CurrentContextBuffer;\r
+ PRM_MODULE_CONTEXT_BUFFERS *CurrentModuleContextBuffers;\r
+ PRM_MODULE_INFORMATION_STRUCT *CurrentModuleInfoStruct;\r
+ PRM_HANDLER_INFORMATION_STRUCT *CurrentHandlerInfoStruct;\r
+\r
+ EFI_STATUS Status;\r
+ EFI_PHYSICAL_ADDRESS CurrentImageAddress;\r
+ UINTN AcpiParamIndex;\r
+ UINTN HandlerIndex;\r
+ UINT32 PrmAcpiDescriptionTableBufferSize;\r
+\r
+ UINT64 HandlerPhysicalAddress;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
if (PrmAcpiDescriptionTable == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
*PrmAcpiDescriptionTable = NULL;\r
\r
//\r
DEBUG ((DEBUG_INFO, " %a %a: %d total PRM modules to process.\n", _DBGMSGID_, __FUNCTION__, mPrmModuleCount));\r
DEBUG ((DEBUG_INFO, " %a %a: %d total PRM handlers to process.\n", _DBGMSGID_, __FUNCTION__, mPrmHandlerCount));\r
\r
- PrmAcpiDescriptionTableBufferSize = (UINT32) (OFFSET_OF (PRM_ACPI_DESCRIPTION_TABLE, PrmModuleInfoStructure) +\r
- (OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure) * mPrmModuleCount) +\r
- (sizeof (PRM_HANDLER_INFORMATION_STRUCT) * mPrmHandlerCount)\r
- );\r
+ PrmAcpiDescriptionTableBufferSize = (UINT32)(OFFSET_OF (PRM_ACPI_DESCRIPTION_TABLE, PrmModuleInfoStructure) +\r
+ (OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure) * mPrmModuleCount) +\r
+ (sizeof (PRM_HANDLER_INFORMATION_STRUCT) * mPrmHandlerCount)\r
+ );\r
DEBUG ((DEBUG_INFO, " %a %a: Total PRM ACPI table size: 0x%x.\n", _DBGMSGID_, __FUNCTION__, PrmAcpiDescriptionTableBufferSize));\r
\r
- PrmAcpiTable = AllocateZeroPool ((UINTN) PrmAcpiDescriptionTableBufferSize);\r
+ PrmAcpiTable = AllocateZeroPool ((UINTN)PrmAcpiDescriptionTableBufferSize);\r
if (PrmAcpiTable == NULL) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
\r
- PrmAcpiTable->Header.Signature = PRM_TABLE_SIGNATURE;\r
- PrmAcpiTable->Header.Length = PrmAcpiDescriptionTableBufferSize;\r
- PrmAcpiTable->Header.Revision = PRM_TABLE_REVISION;\r
- PrmAcpiTable->Header.Checksum = 0x0;\r
+ PrmAcpiTable->Header.Signature = PRM_TABLE_SIGNATURE;\r
+ PrmAcpiTable->Header.Length = PrmAcpiDescriptionTableBufferSize;\r
+ PrmAcpiTable->Header.Revision = PRM_TABLE_REVISION;\r
+ PrmAcpiTable->Header.Checksum = 0x0;\r
CopyMem (&PrmAcpiTable->Header.OemId, PcdGetPtr (PcdAcpiDefaultOemId), sizeof (PrmAcpiTable->Header.OemId));\r
- PrmAcpiTable->Header.OemTableId = PcdGet64 (PcdAcpiDefaultOemTableId);\r
- PrmAcpiTable->Header.OemRevision = PcdGet32 (PcdAcpiDefaultOemRevision);\r
- PrmAcpiTable->Header.CreatorId = PcdGet32 (PcdAcpiDefaultCreatorId);\r
- PrmAcpiTable->Header.CreatorRevision = PcdGet32 (PcdAcpiDefaultCreatorRevision);\r
+ PrmAcpiTable->Header.OemTableId = PcdGet64 (PcdAcpiDefaultOemTableId);\r
+ PrmAcpiTable->Header.OemRevision = PcdGet32 (PcdAcpiDefaultOemRevision);\r
+ PrmAcpiTable->Header.CreatorId = PcdGet32 (PcdAcpiDefaultCreatorId);\r
+ PrmAcpiTable->Header.CreatorRevision = PcdGet32 (PcdAcpiDefaultCreatorRevision);\r
CopyGuid (&PrmAcpiTable->PrmPlatformGuid, &gEdkiiDscPlatformGuid);\r
- PrmAcpiTable->PrmModuleInfoOffset = OFFSET_OF (PRM_ACPI_DESCRIPTION_TABLE, PrmModuleInfoStructure);\r
- PrmAcpiTable->PrmModuleInfoCount = (UINT32) mPrmModuleCount;\r
+ PrmAcpiTable->PrmModuleInfoOffset = OFFSET_OF (PRM_ACPI_DESCRIPTION_TABLE, PrmModuleInfoStructure);\r
+ PrmAcpiTable->PrmModuleInfoCount = (UINT32)mPrmModuleCount;\r
\r
//\r
// Iterate across all PRM Modules on the list\r
//\r
CurrentModuleInfoStruct = &PrmAcpiTable->PrmModuleInfoStructure[0];\r
for (\r
- CurrentPrmModuleImageContext = NULL, Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext);\r
- !EFI_ERROR (Status);\r
- Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext)) {\r
-\r
- CurrentImageAddress = CurrentPrmModuleImageContext->PeCoffImageContext.ImageAddress;\r
- CurrentImageExportDirectory = CurrentPrmModuleImageContext->ExportDirectory;\r
- CurrentExportDescriptorStruct = CurrentPrmModuleImageContext->ExportDescriptor;\r
+ CurrentPrmModuleImageContext = NULL, Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext);\r
+ !EFI_ERROR (Status);\r
+ Status = GetNextPrmModuleEntry (&CurrentPrmModuleImageContext))\r
+ {\r
+ CurrentImageAddress = CurrentPrmModuleImageContext->PeCoffImageContext.ImageAddress;\r
+ CurrentImageExportDirectory = CurrentPrmModuleImageContext->ExportDirectory;\r
+ CurrentExportDescriptorStruct = CurrentPrmModuleImageContext->ExportDescriptor;\r
CurrentModuleAcpiParamDescriptors = NULL;\r
\r
DEBUG ((\r
" %a %a: PRM Module - %a with %d handlers.\n",\r
_DBGMSGID_,\r
__FUNCTION__,\r
- (CHAR8 *) ((UINTN) CurrentImageAddress + CurrentImageExportDirectory->Name),\r
+ (CHAR8 *)((UINTN)CurrentImageAddress + CurrentImageExportDirectory->Name),\r
CurrentExportDescriptorStruct->Header.NumberPrmHandlers\r
));\r
\r
CurrentModuleInfoStruct->StructureRevision = PRM_MODULE_INFORMATION_STRUCT_REVISION;\r
- CurrentModuleInfoStruct->StructureLength = (\r
- OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure) +\r
- (CurrentExportDescriptorStruct->Header.NumberPrmHandlers * sizeof (PRM_HANDLER_INFORMATION_STRUCT))\r
- );\r
+ CurrentModuleInfoStruct->StructureLength = (\r
+ OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure) +\r
+ (CurrentExportDescriptorStruct->Header.NumberPrmHandlers * sizeof (PRM_HANDLER_INFORMATION_STRUCT))\r
+ );\r
CopyGuid (&CurrentModuleInfoStruct->Identifier, &CurrentExportDescriptorStruct->Header.ModuleGuid);\r
- CurrentModuleInfoStruct->HandlerCount = (UINT32) CurrentExportDescriptorStruct->Header.NumberPrmHandlers;\r
- CurrentModuleInfoStruct->HandlerInfoOffset = OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure);\r
+ CurrentModuleInfoStruct->HandlerCount = (UINT32)CurrentExportDescriptorStruct->Header.NumberPrmHandlers;\r
+ CurrentModuleInfoStruct->HandlerInfoOffset = OFFSET_OF (PRM_MODULE_INFORMATION_STRUCT, HandlerInfoStructure);\r
\r
CurrentModuleInfoStruct->MajorRevision = 0;\r
CurrentModuleInfoStruct->MinorRevision = 0;\r
- Status = GetImageVersionInPeCoffImage (\r
- (VOID *) (UINTN) CurrentImageAddress,\r
- &CurrentPrmModuleImageContext->PeCoffImageContext,\r
- &CurrentModuleInfoStruct->MajorRevision,\r
- &CurrentModuleInfoStruct->MinorRevision\r
- );\r
+ Status = GetImageVersionInPeCoffImage (\r
+ (VOID *)(UINTN)CurrentImageAddress,\r
+ &CurrentPrmModuleImageContext->PeCoffImageContext,\r
+ &CurrentModuleInfoStruct->MajorRevision,\r
+ &CurrentModuleInfoStruct->MinorRevision\r
+ );\r
ASSERT_EFI_ERROR (Status);\r
\r
// It is currently valid for a PRM module not to use a context buffer\r
Status = GetModuleContextBuffers (\r
- ByModuleGuid,\r
- &CurrentModuleInfoStruct->Identifier,\r
- (CONST PRM_MODULE_CONTEXT_BUFFERS **) &CurrentModuleContextBuffers\r
- );\r
+ ByModuleGuid,\r
+ &CurrentModuleInfoStruct->Identifier,\r
+ (CONST PRM_MODULE_CONTEXT_BUFFERS **)&CurrentModuleContextBuffers\r
+ );\r
ASSERT (!EFI_ERROR (Status) || Status == EFI_NOT_FOUND);\r
- if (!EFI_ERROR (Status) && CurrentModuleContextBuffers != NULL) {\r
- CurrentModuleInfoStruct->RuntimeMmioRanges = (UINT64) (UINTN) CurrentModuleContextBuffers->RuntimeMmioRanges;\r
- CurrentModuleAcpiParamDescriptors = CurrentModuleContextBuffers->AcpiParameterBufferDescriptors;\r
+ if (!EFI_ERROR (Status) && (CurrentModuleContextBuffers != NULL)) {\r
+ CurrentModuleInfoStruct->RuntimeMmioRanges = (UINT64)(UINTN)CurrentModuleContextBuffers->RuntimeMmioRanges;\r
+ CurrentModuleAcpiParamDescriptors = CurrentModuleContextBuffers->AcpiParameterBufferDescriptors;\r
}\r
\r
//\r
CurrentHandlerInfoStruct = &(CurrentModuleInfoStruct->HandlerInfoStructure[HandlerIndex]);\r
\r
CurrentHandlerInfoStruct->StructureRevision = PRM_HANDLER_INFORMATION_STRUCT_REVISION;\r
- CurrentHandlerInfoStruct->StructureLength = sizeof (PRM_HANDLER_INFORMATION_STRUCT);\r
+ CurrentHandlerInfoStruct->StructureLength = sizeof (PRM_HANDLER_INFORMATION_STRUCT);\r
CopyGuid (\r
&CurrentHandlerInfoStruct->Identifier,\r
&CurrentExportDescriptorStruct->PrmHandlerExportDescriptors[HandlerIndex].PrmHandlerGuid\r
);\r
\r
- CurrentExportDescriptorHandlerName = (CONST CHAR8 *) CurrentExportDescriptorStruct->PrmHandlerExportDescriptors[HandlerIndex].PrmHandlerName;\r
+ CurrentExportDescriptorHandlerName = (CONST CHAR8 *)CurrentExportDescriptorStruct->PrmHandlerExportDescriptors[HandlerIndex].PrmHandlerName;\r
\r
Status = GetContextBuffer (\r
&CurrentHandlerInfoStruct->Identifier,\r
CurrentModuleContextBuffers,\r
- (CONST PRM_CONTEXT_BUFFER **) &CurrentContextBuffer\r
+ (CONST PRM_CONTEXT_BUFFER **)&CurrentContextBuffer\r
);\r
if (!EFI_ERROR (Status)) {\r
- CurrentHandlerInfoStruct->StaticDataBuffer = (UINT64) (UINTN) CurrentContextBuffer->StaticDataBuffer;\r
+ CurrentHandlerInfoStruct->StaticDataBuffer = (UINT64)(UINTN)CurrentContextBuffer->StaticDataBuffer;\r
}\r
\r
Status = GetExportEntryAddress (\r
if (CurrentModuleAcpiParamDescriptors != NULL) {\r
for (AcpiParamIndex = 0; AcpiParamIndex < CurrentModuleContextBuffers->AcpiParameterBufferDescriptorCount; AcpiParamIndex++) {\r
if (CompareGuid (&CurrentModuleAcpiParamDescriptors[AcpiParamIndex].HandlerGuid, &CurrentHandlerInfoStruct->Identifier)) {\r
- CurrentHandlerInfoStruct->AcpiParameterBuffer = (UINT64) (UINTN) (\r
- CurrentModuleAcpiParamDescriptors[AcpiParamIndex].AcpiParameterBufferAddress\r
- );\r
+ CurrentHandlerInfoStruct->AcpiParameterBuffer = (UINT64)(UINTN)(\r
+ CurrentModuleAcpiParamDescriptors[AcpiParamIndex].AcpiParameterBufferAddress\r
+ );\r
}\r
}\r
}\r
}\r
- CurrentModuleInfoStruct = (PRM_MODULE_INFORMATION_STRUCT *) ((UINTN) CurrentModuleInfoStruct + CurrentModuleInfoStruct->StructureLength);\r
+\r
+ CurrentModuleInfoStruct = (PRM_MODULE_INFORMATION_STRUCT *)((UINTN)CurrentModuleInfoStruct + CurrentModuleInfoStruct->StructureLength);\r
}\r
+\r
*PrmAcpiDescriptionTable = PrmAcpiTable;\r
\r
return EFI_SUCCESS;\r
**/\r
EFI_STATUS\r
PublishPrmAcpiTable (\r
- IN PRM_ACPI_DESCRIPTION_TABLE *PrmAcpiDescriptionTable\r
+ IN PRM_ACPI_DESCRIPTION_TABLE *PrmAcpiDescriptionTable\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_ACPI_TABLE_PROTOCOL *AcpiTableProtocol;\r
- UINTN TableKey;\r
+ EFI_STATUS Status;\r
+ EFI_ACPI_TABLE_PROTOCOL *AcpiTableProtocol;\r
+ UINTN TableKey;\r
\r
- if (PrmAcpiDescriptionTable == NULL || PrmAcpiDescriptionTable->Header.Signature != PRM_TABLE_SIGNATURE) {\r
+ if ((PrmAcpiDescriptionTable == NULL) || (PrmAcpiDescriptionTable->Header.Signature != PRM_TABLE_SIGNATURE)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- Status = gBS->LocateProtocol (&gEfiAcpiTableProtocolGuid, NULL, (VOID **) &AcpiTableProtocol);\r
+ Status = gBS->LocateProtocol (&gEfiAcpiTableProtocolGuid, NULL, (VOID **)&AcpiTableProtocol);\r
if (!EFI_ERROR (Status)) {\r
TableKey = 0;\r
//\r
DEBUG ((DEBUG_INFO, "%a %a: The PRMT ACPI table was installed successfully.\n", _DBGMSGID_, __FUNCTION__));\r
}\r
}\r
+\r
ASSERT_EFI_ERROR (Status);\r
\r
return Status;\r
VOID\r
EFIAPI\r
PrmLoaderEndOfDxeNotification (\r
- IN EFI_EVENT Event,\r
- IN VOID *Context\r
+ IN EFI_EVENT Event,\r
+ IN VOID *Context\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_ACPI_DESCRIPTION_TABLE *PrmAcpiDescriptionTable;\r
+ EFI_STATUS Status;\r
+ PRM_ACPI_DESCRIPTION_TABLE *PrmAcpiDescriptionTable;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
if (PrmAcpiDescriptionTable != NULL) {\r
FreePool (PrmAcpiDescriptionTable);\r
}\r
+\r
gBS->CloseEvent (Event);\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
PrmLoaderEntryPoint (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_EVENT EndOfDxeEvent;\r
+ EFI_STATUS Status;\r
+ EFI_EVENT EndOfDxeEvent;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
// Discover and process installed PRM modules at the End of DXE\r
// The PRM ACPI table is published if one or PRM modules are discovered\r
//\r
- Status = gBS->CreateEventEx(\r
+ Status = gBS->CreateEventEx (\r
EVT_NOTIFY_SIGNAL,\r
TPL_CALLBACK,\r
PrmLoaderEndOfDxeNotification,\r
**/\r
EFI_STATUS\r
InstallPrmSsdt (\r
- IN CONST UINT8 *OemId\r
+ IN CONST UINT8 *OemId\r
)\r
{\r
- EFI_STATUS Status;\r
- UINTN SsdtSize;\r
- UINTN TableKey;\r
- EFI_ACPI_TABLE_PROTOCOL *AcpiTableProtocol;\r
- EFI_ACPI_DESCRIPTION_HEADER *Ssdt;\r
+ EFI_STATUS Status;\r
+ UINTN SsdtSize;\r
+ UINTN TableKey;\r
+ EFI_ACPI_TABLE_PROTOCOL *AcpiTableProtocol;\r
+ EFI_ACPI_DESCRIPTION_HEADER *Ssdt;\r
\r
DEBUG ((DEBUG_INFO, "%a %a - Entry.\n", _DBGMSGID_, __FUNCTION__));\r
\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- Status = gBS->LocateProtocol (&gEfiAcpiTableProtocolGuid, NULL, (VOID **) &AcpiTableProtocol);\r
+ Status = gBS->LocateProtocol (&gEfiAcpiTableProtocolGuid, NULL, (VOID **)&AcpiTableProtocol);\r
if (!EFI_ERROR (Status)) {\r
//\r
// Discover the SSDT\r
&gEfiCallerIdGuid,\r
EFI_SECTION_RAW,\r
0,\r
- (VOID **) &Ssdt,\r
+ (VOID **)&Ssdt,\r
&SsdtSize\r
);\r
ASSERT_EFI_ERROR (Status);\r
// Publish the SSDT. Table is re-checksummed.\r
//\r
TableKey = 0;\r
- Status = AcpiTableProtocol->InstallAcpiTable (\r
- AcpiTableProtocol,\r
- Ssdt,\r
- SsdtSize,\r
- &TableKey\r
- );\r
+ Status = AcpiTableProtocol->InstallAcpiTable (\r
+ AcpiTableProtocol,\r
+ Ssdt,\r
+ SsdtSize,\r
+ &TableKey\r
+ );\r
ASSERT_EFI_ERROR (Status);\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
PrmSsdtInstallEntryPoint (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
- Status = InstallPrmSsdt ((UINT8 *) PcdGetPtr (PcdAcpiDefaultOemId));\r
+ Status = InstallPrmSsdt ((UINT8 *)PcdGetPtr (PcdAcpiDefaultOemId));\r
ASSERT_EFI_ERROR (Status);\r
\r
return Status;\r
STATIC EFI_HANDLE mPrmConfigProtocolHandle;\r
\r
// {dc2a58a6-5927-4776-b995-d118a27335a2}\r
-STATIC CONST EFI_GUID mPrmModuleGuid = {0xdc2a58a6, 0x5927, 0x4776, {0xb9, 0x95, 0xd1, 0x18, 0xa2, 0x73, 0x35, 0xa2}};\r
+STATIC CONST EFI_GUID mPrmModuleGuid = {\r
+ 0xdc2a58a6, 0x5927, 0x4776, { 0xb9, 0x95, 0xd1, 0x18, 0xa2, 0x73, 0x35, 0xa2 }\r
+};\r
\r
// {2e4f2d13-6240-4ed0-a401-c723fbdc34e8}\r
-STATIC CONST EFI_GUID mCheckParamBufferPrmHandlerGuid = {0x2e4f2d13, 0x6240, 0x4ed0, {0xa4, 0x01, 0xc7, 0x23, 0xfb, 0xdc, 0x34, 0xe8}};\r
+STATIC CONST EFI_GUID mCheckParamBufferPrmHandlerGuid = {\r
+ 0x2e4f2d13, 0x6240, 0x4ed0, { 0xa4, 0x01, 0xc7, 0x23, 0xfb, 0xdc, 0x34, 0xe8 }\r
+};\r
\r
/**\r
Constructor of the PRM configuration library.\r
EFI_STATUS\r
EFIAPI\r
AcpiParameterBufferModuleConfigLibConstructor (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
EFI_STATUS Status;\r
ACPI_PARAMETER_BUFFER_DESCRIPTOR *AcpiParamBufferDescriptor;\r
PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
\r
- AcpiParameterBuffer = NULL;\r
+ AcpiParameterBuffer = NULL;\r
AcpiParamBufferDescriptor = NULL;\r
- PrmConfigProtocol = NULL;\r
+ PrmConfigProtocol = NULL;\r
\r
/*\r
In this sample PRM module, the protocol describing this sample module's resources is simply\r
Status = EFI_OUT_OF_RESOURCES;\r
goto Done;\r
}\r
+\r
CopyGuid (&PrmConfigProtocol->ModuleContextBuffers.ModuleGuid, &mPrmModuleGuid);\r
\r
// Populate the ACPI Parameter Buffer Descriptor structure\r
CopyGuid (&AcpiParamBufferDescriptor->HandlerGuid, &mCheckParamBufferPrmHandlerGuid);\r
- AcpiParamBufferDescriptor->AcpiParameterBufferAddress = (UINT64) (UINTN) AcpiParameterBuffer;\r
+ AcpiParamBufferDescriptor->AcpiParameterBufferAddress = (UINT64)(UINTN)AcpiParameterBuffer;\r
\r
// Populate the PRM Module Context Buffers structure\r
PrmConfigProtocol->ModuleContextBuffers.AcpiParameterBufferDescriptorCount = 1;\r
- PrmConfigProtocol->ModuleContextBuffers.AcpiParameterBufferDescriptors = AcpiParamBufferDescriptor;\r
+ PrmConfigProtocol->ModuleContextBuffers.AcpiParameterBufferDescriptors = AcpiParamBufferDescriptor;\r
\r
//\r
// Install the PRM Configuration Protocol for this module. This indicates the configuration\r
&mPrmConfigProtocolHandle,\r
&gPrmConfigProtocolGuid,\r
EFI_NATIVE_INTERFACE,\r
- (VOID *) PrmConfigProtocol\r
+ (VOID *)PrmConfigProtocol\r
);\r
\r
Done:\r
if (AcpiParameterBuffer != NULL) {\r
FreePool (AcpiParameterBuffer);\r
}\r
+\r
if (AcpiParamBufferDescriptor != NULL) {\r
FreePool (AcpiParamBufferDescriptor);\r
}\r
+\r
if (PrmConfigProtocol != NULL) {\r
FreePool (PrmConfigProtocol);\r
}\r
// TEMP\r
#include <Library/DebugLib.h>\r
\r
-#define PARAM_BUFFER_TEST_SIGNATURE SIGNATURE_32('T','E','S','T')\r
+#define PARAM_BUFFER_TEST_SIGNATURE SIGNATURE_32('T','E','S','T')\r
\r
//\r
// PRM Handler GUIDs\r
//\r
\r
// {2e4f2d13-6240-4ed0-a401-c723fbdc34e8}\r
-#define CHECK_PARAM_BUFFER_PRM_HANDLER_GUID {0x2e4f2d13, 0x6240, 0x4ed0, {0xa4, 0x01, 0xc7, 0x23, 0xfb, 0xdc, 0x34, 0xe8}}\r
+#define CHECK_PARAM_BUFFER_PRM_HANDLER_GUID {0x2e4f2d13, 0x6240, 0x4ed0, {0xa4, 0x01, 0xc7, 0x23, 0xfb, 0xdc, 0x34, 0xe8}}\r
\r
/**\r
A sample Platform Runtime Mechanism (PRM) handler.\r
@retval Others An error occurred in the PRM handler.\r
\r
**/\r
-PRM_HANDLER_EXPORT (CheckParamBufferPrmHandler)\r
-{\r
+PRM_HANDLER_EXPORT (CheckParamBufferPrmHandler) {\r
if (ParameterBuffer == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- if (*((UINT32 *) ParameterBuffer) == PARAM_BUFFER_TEST_SIGNATURE) {\r
+ if (*((UINT32 *)ParameterBuffer) == PARAM_BUFFER_TEST_SIGNATURE) {\r
return EFI_SUCCESS;\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
PrmSampleAcpiParameterBufferModuleInit (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
return EFI_SUCCESS;\r
\r
#include <Base.h>\r
\r
-#define SOME_VALUE_ARRAY_MAX_VALUES 16\r
+#define SOME_VALUE_ARRAY_MAX_VALUES 16\r
\r
typedef struct {\r
- BOOLEAN Policy1Enabled;\r
- BOOLEAN Policy2Enabled;\r
- UINT8 SomeValueArray[SOME_VALUE_ARRAY_MAX_VALUES];\r
+ BOOLEAN Policy1Enabled;\r
+ BOOLEAN Policy2Enabled;\r
+ UINT8 SomeValueArray[SOME_VALUE_ARRAY_MAX_VALUES];\r
} STATIC_DATA_SAMPLE_CONTEXT_BUFFER_MODULE;\r
\r
#endif\r
STATIC EFI_HANDLE mPrmConfigProtocolHandle;\r
\r
// {5a6cf42b-8bb4-472c-a233-5c4dc4033dc7}\r
-STATIC CONST EFI_GUID mPrmModuleGuid = {0x5a6cf42b, 0x8bb4, 0x472c, {0xa2, 0x33, 0x5c, 0x4d, 0xc4, 0x03, 0x3d, 0xc7}};\r
+STATIC CONST EFI_GUID mPrmModuleGuid = {\r
+ 0x5a6cf42b, 0x8bb4, 0x472c, { 0xa2, 0x33, 0x5c, 0x4d, 0xc4, 0x03, 0x3d, 0xc7 }\r
+};\r
\r
// {e1466081-7562-430f-896b-b0e523dc335a}\r
-STATIC CONST EFI_GUID mCheckStaticDataBufferPrmHandlerGuid = {0xe1466081, 0x7562, 0x430f, {0x89, 0x6b, 0xb0, 0xe5, 0x23, 0xdc, 0x33, 0x5a}};\r
+STATIC CONST EFI_GUID mCheckStaticDataBufferPrmHandlerGuid = {\r
+ 0xe1466081, 0x7562, 0x430f, { 0x89, 0x6b, 0xb0, 0xe5, 0x23, 0xdc, 0x33, 0x5a }\r
+};\r
\r
/**\r
Populates the static data buffer for this PRM module.\r
**/\r
EFI_STATUS\r
GetStaticDataBuffer (\r
- OUT PRM_DATA_BUFFER **StaticDataBuffer\r
+ OUT PRM_DATA_BUFFER **StaticDataBuffer\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_DATA_BUFFER *DataBuffer;\r
- UINTN DataBufferLength;\r
+ EFI_STATUS Status;\r
+ PRM_DATA_BUFFER *DataBuffer;\r
+ UINTN DataBufferLength;\r
\r
if (StaticDataBuffer == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
*StaticDataBuffer = NULL;\r
\r
//\r
// Initialize the data buffer header\r
//\r
DataBuffer->Header.Signature = PRM_DATA_BUFFER_HEADER_SIGNATURE;\r
- DataBuffer->Header.Length = (UINT32) DataBufferLength;\r
+ DataBuffer->Header.Length = (UINT32)DataBufferLength;\r
\r
- Status = PopulateStaticDataBuffer ((STATIC_DATA_SAMPLE_CONTEXT_BUFFER_MODULE *) &DataBuffer->Data[0]);\r
+ Status = PopulateStaticDataBuffer ((STATIC_DATA_SAMPLE_CONTEXT_BUFFER_MODULE *)&DataBuffer->Data[0]);\r
ASSERT_EFI_ERROR (Status);\r
\r
*StaticDataBuffer = DataBuffer;\r
EFI_STATUS\r
EFIAPI\r
ContextBufferModuleConfigLibConstructor (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_CONTEXT_BUFFER *PrmContextBuffer;\r
- PRM_DATA_BUFFER *StaticDataBuffer;\r
- PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
+ EFI_STATUS Status;\r
+ PRM_CONTEXT_BUFFER *PrmContextBuffer;\r
+ PRM_DATA_BUFFER *StaticDataBuffer;\r
+ PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
\r
- PrmContextBuffer = NULL;\r
- StaticDataBuffer = NULL;\r
+ PrmContextBuffer = NULL;\r
+ StaticDataBuffer = NULL;\r
PrmConfigProtocol = NULL;\r
\r
/*\r
//\r
Status = GetStaticDataBuffer (&StaticDataBuffer);\r
ASSERT_EFI_ERROR (Status);\r
- if (EFI_ERROR (Status) || StaticDataBuffer == NULL) {\r
+ if (EFI_ERROR (Status) || (StaticDataBuffer == NULL)) {\r
goto Done;\r
}\r
\r
Status = EFI_OUT_OF_RESOURCES;\r
goto Done;\r
}\r
+\r
CopyGuid (&PrmContextBuffer->HandlerGuid, &mCheckStaticDataBufferPrmHandlerGuid);\r
- PrmContextBuffer->Signature = PRM_CONTEXT_BUFFER_SIGNATURE;\r
- PrmContextBuffer->Version = PRM_CONTEXT_BUFFER_INTERFACE_VERSION;\r
+ PrmContextBuffer->Signature = PRM_CONTEXT_BUFFER_SIGNATURE;\r
+ PrmContextBuffer->Version = PRM_CONTEXT_BUFFER_INTERFACE_VERSION;\r
PrmContextBuffer->StaticDataBuffer = StaticDataBuffer;\r
\r
PrmConfigProtocol = AllocateZeroPool (sizeof (*PrmConfigProtocol));\r
Status = EFI_OUT_OF_RESOURCES;\r
goto Done;\r
}\r
+\r
CopyGuid (&PrmConfigProtocol->ModuleContextBuffers.ModuleGuid, &mPrmModuleGuid);\r
PrmConfigProtocol->ModuleContextBuffers.BufferCount = 1;\r
- PrmConfigProtocol->ModuleContextBuffers.Buffer = PrmContextBuffer;\r
+ PrmConfigProtocol->ModuleContextBuffers.Buffer = PrmContextBuffer;\r
\r
//\r
// Install the PRM Configuration Protocol for this module. This indicates the configuration\r
&mPrmConfigProtocolHandle,\r
&gPrmConfigProtocolGuid,\r
EFI_NATIVE_INTERFACE,\r
- (VOID *) PrmConfigProtocol\r
+ (VOID *)PrmConfigProtocol\r
);\r
\r
Done:\r
if (StaticDataBuffer != NULL) {\r
FreePool (StaticDataBuffer);\r
}\r
+\r
if (PrmContextBuffer != NULL) {\r
FreePool (PrmContextBuffer);\r
}\r
+\r
if (PrmConfigProtocol != NULL) {\r
FreePool (PrmConfigProtocol);\r
}\r
//\r
\r
// {e1466081-7562-430f-896b-b0e523dc335a}\r
-#define CHECK_STATIC_DATA_BUFFER_PRM_HANDLER_GUID {0xe1466081, 0x7562, 0x430f, {0x89, 0x6b, 0xb0, 0xe5, 0x23, 0xdc, 0x33, 0x5a}}\r
+#define CHECK_STATIC_DATA_BUFFER_PRM_HANDLER_GUID {0xe1466081, 0x7562, 0x430f, {0x89, 0x6b, 0xb0, 0xe5, 0x23, 0xdc, 0x33, 0x5a}}\r
\r
/**\r
A sample Platform Runtime Mechanism (PRM) handler.\r
@retval Others An error occurred in the PRM handler.\r
\r
**/\r
-PRM_HANDLER_EXPORT (CheckStaticDataBufferPrmHandler)\r
-{\r
+PRM_HANDLER_EXPORT (CheckStaticDataBufferPrmHandler) {\r
if (ContextBuffer == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
// Verify PRM data buffer signature is valid\r
//\r
if (\r
- ContextBuffer->Signature != PRM_CONTEXT_BUFFER_SIGNATURE ||\r
- ContextBuffer->StaticDataBuffer->Header.Signature != PRM_DATA_BUFFER_HEADER_SIGNATURE) {\r
+ (ContextBuffer->Signature != PRM_CONTEXT_BUFFER_SIGNATURE) ||\r
+ (ContextBuffer->StaticDataBuffer->Header.Signature != PRM_DATA_BUFFER_HEADER_SIGNATURE))\r
+ {\r
return EFI_NOT_FOUND;\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
PrmSampleContextBufferModuleInit (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
return EFI_SUCCESS;\r
#ifndef HPET_REGISTER_H_\r
#define HPET_REGISTER_H_\r
\r
-#define HPET_BASE_ADDRESS 0xFED00000\r
-#define HPET_RANGE_LENGTH 0x1000\r
+#define HPET_BASE_ADDRESS 0xFED00000\r
+#define HPET_RANGE_LENGTH 0x1000\r
\r
///\r
/// HPET General Register Offsets\r
///\r
/// HPET Timer Register Offsets\r
///\r
-#define HPET_MAIN_COUNTER_OFFSET 0x0F0\r
-#define HPET_TIMER_CONFIGURATION_OFFSET 0x100\r
-#define HPET_TIMER_COMPARATOR_OFFSET 0x108\r
-#define HPET_TIMER_MSI_ROUTE_OFFSET 0x110\r
+#define HPET_MAIN_COUNTER_OFFSET 0x0F0\r
+#define HPET_TIMER_CONFIGURATION_OFFSET 0x100\r
+#define HPET_TIMER_COMPARATOR_OFFSET 0x108\r
+#define HPET_TIMER_MSI_ROUTE_OFFSET 0x110\r
\r
///\r
/// Stride between sets of HPET Timer Registers\r
///\r
-#define HPET_TIMER_STRIDE 0x20\r
+#define HPET_TIMER_STRIDE 0x20\r
\r
#pragma pack(1)\r
\r
///\r
typedef union {\r
struct {\r
- UINT32 Revision:8;\r
- UINT32 NumberOfTimers:5;\r
- UINT32 CounterSize:1;\r
- UINT32 Reserved0:1;\r
- UINT32 LegacyRoute:1;\r
- UINT32 VendorId:16;\r
- UINT32 CounterClockPeriod:32;\r
+ UINT32 Revision : 8;\r
+ UINT32 NumberOfTimers : 5;\r
+ UINT32 CounterSize : 1;\r
+ UINT32 Reserved0 : 1;\r
+ UINT32 LegacyRoute : 1;\r
+ UINT32 VendorId : 16;\r
+ UINT32 CounterClockPeriod : 32;\r
} Bits;\r
- UINT64 Uint64;\r
+ UINT64 Uint64;\r
} HPET_GENERAL_CAPABILITIES_ID_REGISTER;\r
\r
///\r
///\r
typedef union {\r
struct {\r
- UINT32 MainCounterEnable:1;\r
- UINT32 LegacyRouteEnable:1;\r
- UINT32 Reserved0:30;\r
- UINT32 Reserved1:32;\r
+ UINT32 MainCounterEnable : 1;\r
+ UINT32 LegacyRouteEnable : 1;\r
+ UINT32 Reserved0 : 30;\r
+ UINT32 Reserved1 : 32;\r
} Bits;\r
- UINT64 Uint64;\r
+ UINT64 Uint64;\r
} HPET_GENERAL_CONFIGURATION_REGISTER;\r
\r
///\r
///\r
typedef union {\r
struct {\r
- UINT32 Reserved0:1;\r
- UINT32 LevelTriggeredInterrupt:1;\r
- UINT32 InterruptEnable:1;\r
- UINT32 PeriodicInterruptEnable:1;\r
- UINT32 PeriodicInterruptCapability:1;\r
- UINT32 CounterSizeCapability:1;\r
- UINT32 ValueSetEnable:1;\r
- UINT32 Reserved1:1;\r
- UINT32 CounterSizeEnable:1;\r
- UINT32 InterruptRoute:5;\r
- UINT32 MsiInterruptEnable:1;\r
- UINT32 MsiInterruptCapability:1;\r
- UINT32 Reserved2:16;\r
- UINT32 InterruptRouteCapability;\r
+ UINT32 Reserved0 : 1;\r
+ UINT32 LevelTriggeredInterrupt : 1;\r
+ UINT32 InterruptEnable : 1;\r
+ UINT32 PeriodicInterruptEnable : 1;\r
+ UINT32 PeriodicInterruptCapability : 1;\r
+ UINT32 CounterSizeCapability : 1;\r
+ UINT32 ValueSetEnable : 1;\r
+ UINT32 Reserved1 : 1;\r
+ UINT32 CounterSizeEnable : 1;\r
+ UINT32 InterruptRoute : 5;\r
+ UINT32 MsiInterruptEnable : 1;\r
+ UINT32 MsiInterruptCapability : 1;\r
+ UINT32 Reserved2 : 16;\r
+ UINT32 InterruptRouteCapability;\r
} Bits;\r
- UINT64 Uint64;\r
+ UINT64 Uint64;\r
} HPET_TIMER_CONFIGURATION_REGISTER;\r
\r
///\r
///\r
typedef union {\r
struct {\r
- UINT32 Value:32;\r
- UINT32 Address:32;\r
+ UINT32 Value : 32;\r
+ UINT32 Address : 32;\r
} Bits;\r
- UINT64 Uint64;\r
+ UINT64 Uint64;\r
} HPET_TIMER_MSI_ROUTE_REGISTER;\r
\r
#pragma pack()\r
STATIC EFI_HANDLE mPrmConfigProtocolHandle;\r
\r
// {0ef93ed7-14ae-425b-928f-b85a6213b57e}\r
-STATIC CONST EFI_GUID mPrmModuleGuid = {0x0ef93ed7, 0x14ae, 0x425b, {0x92, 0x8f, 0xb8, 0x5a, 0x62, 0x13, 0xb5, 0x7e}};\r
+STATIC CONST EFI_GUID mPrmModuleGuid = {\r
+ 0x0ef93ed7, 0x14ae, 0x425b, { 0x92, 0x8f, 0xb8, 0x5a, 0x62, 0x13, 0xb5, 0x7e }\r
+};\r
\r
/**\r
Constructor of the PRM configuration library.\r
EFI_STATUS\r
EFIAPI\r
HardwareAccessModuleConfigLibConstructor (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- EFI_STATUS Status;\r
- PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges;\r
- PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
+ EFI_STATUS Status;\r
+ PRM_RUNTIME_MMIO_RANGES *RuntimeMmioRanges;\r
+ PRM_CONFIG_PROTOCOL *PrmConfigProtocol;\r
\r
RuntimeMmioRanges = NULL;\r
PrmConfigProtocol = NULL;\r
Status = EFI_OUT_OF_RESOURCES;\r
goto Done;\r
}\r
+\r
CopyGuid (&PrmConfigProtocol->ModuleContextBuffers.ModuleGuid, &mPrmModuleGuid);\r
\r
// Populate the Runtime MMIO Ranges structure\r
- RuntimeMmioRanges->Count = 1;\r
+ RuntimeMmioRanges->Count = 1;\r
RuntimeMmioRanges->Range[0].PhysicalBaseAddress = HPET_BASE_ADDRESS;\r
- RuntimeMmioRanges->Range[0].Length = HPET_RANGE_LENGTH;\r
+ RuntimeMmioRanges->Range[0].Length = HPET_RANGE_LENGTH;\r
\r
PrmConfigProtocol->ModuleContextBuffers.RuntimeMmioRanges = RuntimeMmioRanges;\r
\r
&mPrmConfigProtocolHandle,\r
&gPrmConfigProtocolGuid,\r
EFI_NATIVE_INTERFACE,\r
- (VOID *) PrmConfigProtocol\r
+ (VOID *)PrmConfigProtocol\r
);\r
\r
Done:\r
if (RuntimeMmioRanges != NULL) {\r
FreePool (RuntimeMmioRanges);\r
}\r
+\r
if (PrmConfigProtocol != NULL) {\r
FreePool (PrmConfigProtocol);\r
}\r
//\r
\r
// {2120cd3c-848b-4d8f-abbb-4b74ce64ac89}\r
-#define MSR_ACCESS_MICROCODE_SIGNATURE_PRM_HANDLER_GUID {0x2120cd3c, 0x848b, 0x4d8f, {0xab, 0xbb, 0x4b, 0x74, 0xce, 0x64, 0xac, 0x89}}\r
+#define MSR_ACCESS_MICROCODE_SIGNATURE_PRM_HANDLER_GUID {0x2120cd3c, 0x848b, 0x4d8f, {0xab, 0xbb, 0x4b, 0x74, 0xce, 0x64, 0xac, 0x89}}\r
\r
// {ea0935a7-506b-4159-bbbb-48deeecb6f58}\r
-#define MSR_ACCESS_MTRR_DUMP_PRM_HANDLER_GUID {0xea0935a7, 0x506b, 0x4159, {0xbb, 0xbb, 0x48, 0xde, 0xee, 0xcb, 0x6f, 0x58}}\r
+#define MSR_ACCESS_MTRR_DUMP_PRM_HANDLER_GUID {0xea0935a7, 0x506b, 0x4159, {0xbb, 0xbb, 0x48, 0xde, 0xee, 0xcb, 0x6f, 0x58}}\r
\r
// {1bd1bda9-909a-4614-9699-25ec0c2783f7}\r
-#define MMIO_ACCESS_HPET_PRM_HANDLER_GUID {0x1bd1bda9, 0x909a, 0x4614, {0x96, 0x99, 0x25, 0xec, 0x0c, 0x27, 0x83, 0xf7}}\r
+#define MMIO_ACCESS_HPET_PRM_HANDLER_GUID {0x1bd1bda9, 0x909a, 0x4614, {0x96, 0x99, 0x25, 0xec, 0x0c, 0x27, 0x83, 0xf7}}\r
\r
//\r
// BEGIN: MtrrLib internal library globals and function prototypes here for testing\r
//\r
-extern CONST CHAR8 *mMtrrMemoryCacheTypeShortName[];\r
+extern CONST CHAR8 *mMtrrMemoryCacheTypeShortName[];\r
\r
/**\r
Initializes the valid bits mask and valid address mask for MTRRs.\r
**/\r
VOID\r
MtrrLibInitializeMtrrMask (\r
- OUT UINT64 *MtrrValidBitsMask,\r
- OUT UINT64 *MtrrValidAddressMask\r
+ OUT UINT64 *MtrrValidBitsMask,\r
+ OUT UINT64 *MtrrValidAddressMask\r
);\r
\r
/**\r
**/\r
RETURN_STATUS\r
MtrrLibApplyVariableMtrrs (\r
- IN CONST MTRR_MEMORY_RANGE *VariableMtrr,\r
- IN UINT32 VariableMtrrCount,\r
- IN OUT MTRR_MEMORY_RANGE *Ranges,\r
- IN UINTN RangeCapacity,\r
- IN OUT UINTN *RangeCount\r
+ IN CONST MTRR_MEMORY_RANGE *VariableMtrr,\r
+ IN UINT32 VariableMtrrCount,\r
+ IN OUT MTRR_MEMORY_RANGE *Ranges,\r
+ IN UINTN RangeCapacity,\r
+ IN OUT UINTN *RangeCount\r
);\r
\r
//\r
VOID\r
)\r
{\r
- MTRR_SETTINGS LocalMtrrs;\r
- MTRR_SETTINGS *Mtrrs;\r
- UINTN RangeCount;\r
- UINT64 MtrrValidBitsMask;\r
- UINT64 MtrrValidAddressMask;\r
- UINT32 VariableMtrrCount;\r
-\r
- MTRR_MEMORY_RANGE Ranges[\r
- MTRR_NUMBER_OF_FIXED_MTRR * sizeof (UINT64) + 2 * ARRAY_SIZE (Mtrrs->Variables.Mtrr) + 1\r
- ];\r
- MTRR_MEMORY_RANGE RawVariableRanges[ARRAY_SIZE (Mtrrs->Variables.Mtrr)];\r
+ MTRR_SETTINGS LocalMtrrs;\r
+ MTRR_SETTINGS *Mtrrs;\r
+ UINTN RangeCount;\r
+ UINT64 MtrrValidBitsMask;\r
+ UINT64 MtrrValidAddressMask;\r
+ UINT32 VariableMtrrCount;\r
+\r
+ MTRR_MEMORY_RANGE Ranges[\r
+ MTRR_NUMBER_OF_FIXED_MTRR * sizeof (UINT64) + 2 * ARRAY_SIZE (Mtrrs->Variables.Mtrr) + 1\r
+ ];\r
+ MTRR_MEMORY_RANGE RawVariableRanges[ARRAY_SIZE (Mtrrs->Variables.Mtrr)];\r
\r
if (!IsMtrrSupported ()) {\r
return;\r
Ranges[0].BaseAddress = 0;\r
Ranges[0].Length = MtrrValidBitsMask + 1;\r
Ranges[0].Type = MtrrGetDefaultMemoryType ();\r
- RangeCount = 1;\r
+ RangeCount = 1;\r
\r
MtrrLibGetRawVariableRanges (\r
- &Mtrrs->Variables, VariableMtrrCount,\r
- MtrrValidBitsMask, MtrrValidAddressMask, RawVariableRanges\r
+ &Mtrrs->Variables,\r
+ VariableMtrrCount,\r
+ MtrrValidBitsMask,\r
+ MtrrValidAddressMask,\r
+ RawVariableRanges\r
);\r
MtrrLibApplyVariableMtrrs (\r
- RawVariableRanges, VariableMtrrCount,\r
- Ranges, ARRAY_SIZE (Ranges), &RangeCount\r
+ RawVariableRanges,\r
+ VariableMtrrCount,\r
+ Ranges,\r
+ ARRAY_SIZE (Ranges),\r
+ &RangeCount\r
);\r
\r
MtrrLibApplyFixedMtrrs (&Mtrrs->Fixed, Ranges, ARRAY_SIZE (Ranges), &RangeCount);\r
UINT64\r
EFIAPI\r
HpetRead (\r
- IN UINTN Offset\r
+ IN UINTN Offset\r
)\r
{\r
- UINTN Address;\r
- UINT64 Value;\r
+ UINTN Address;\r
+ UINT64 Value;\r
\r
Address = HPET_BASE_ADDRESS + Offset;\r
\r
}\r
\r
MemoryFence ();\r
- Value = *(volatile UINT64*)Address;\r
+ Value = *(volatile UINT64 *)Address;\r
MemoryFence ();\r
\r
return Value;\r
@retval Others An error occurred in the PRM handler.\r
\r
**/\r
-PRM_HANDLER_EXPORT (MsrAccessMicrocodeSignaturePrmHandler)\r
-{\r
+PRM_HANDLER_EXPORT (MsrAccessMicrocodeSignaturePrmHandler) {\r
UINT32 MicrocodeSignature;\r
\r
MicrocodeSignature = 0;\r
@retval Others An error occurred in the PRM handler.\r
\r
**/\r
-PRM_HANDLER_EXPORT (MsrAccessMtrrDumpPrmHandler)\r
-{\r
+PRM_HANDLER_EXPORT (MsrAccessMtrrDumpPrmHandler) {\r
AccessAllMtrrs ();\r
\r
return EFI_SUCCESS;\r
@retval Others An error occurred in the PRM handler.\r
\r
**/\r
-PRM_HANDLER_EXPORT (MmioAccessHpetPrmHandler)\r
-{\r
+PRM_HANDLER_EXPORT (MmioAccessHpetPrmHandler) {\r
AccessHpetConfiguration ();\r
\r
return EFI_SUCCESS;\r
EFI_STATUS\r
EFIAPI\r
PrmSampleHardwareAccessModuleInit (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
return EFI_SUCCESS;\r
\r
#include "UefiBootServicesTableLibUnitTest.h"\r
\r
-EFI_HANDLE gImageHandle = NULL;\r
-EFI_SYSTEM_TABLE *gST = NULL;\r
+EFI_HANDLE gImageHandle = NULL;\r
+EFI_SYSTEM_TABLE *gST = NULL;\r
\r
-STATIC EFI_BOOT_SERVICES mBootServices = {\r
+STATIC EFI_BOOT_SERVICES mBootServices = {\r
{\r
EFI_BOOT_SERVICES_SIGNATURE, // Signature\r
EFI_BOOT_SERVICES_REVISION, // Revision\r
0, // CRC32\r
0 // Reserved\r
},\r
- (EFI_RAISE_TPL) UnitTestRaiseTpl, // RaiseTPL\r
- (EFI_RESTORE_TPL) UnitTestRestoreTpl, // RestoreTPL\r
- (EFI_ALLOCATE_PAGES) UnitTestAllocatePages, // AllocatePages\r
- (EFI_FREE_PAGES) UnitTestFreePages, // FreePages\r
- (EFI_GET_MEMORY_MAP) UnitTestGetMemoryMap, // GetMemoryMap\r
- (EFI_ALLOCATE_POOL) UnitTestAllocatePool, // AllocatePool\r
- (EFI_FREE_POOL) UnitTestFreePool, // FreePool\r
- (EFI_CREATE_EVENT) UnitTestCreateEvent, // CreateEvent\r
- (EFI_SET_TIMER) UnitTestSetTimer, // SetTimer\r
- (EFI_WAIT_FOR_EVENT) UnitTestWaitForEvent, // WaitForEvent\r
- (EFI_SIGNAL_EVENT) UnitTestSignalEvent, // SignalEvent\r
- (EFI_CLOSE_EVENT) UnitTestCloseEvent, // CloseEvent\r
- (EFI_CHECK_EVENT) UnitTestCheckEvent, // CheckEvent\r
- (EFI_INSTALL_PROTOCOL_INTERFACE) UnitTestInstallProtocolInterface, // InstallProtocolInterface\r
- (EFI_REINSTALL_PROTOCOL_INTERFACE) UnitTestReinstallProtocolInterface, // ReinstallProtocolInterface\r
- (EFI_UNINSTALL_PROTOCOL_INTERFACE) UnitTestUninstallProtocolInterface, // UninstallProtocolInterface\r
- (EFI_HANDLE_PROTOCOL) UnitTestHandleProtocol, // HandleProtocol\r
- (VOID *) NULL, // Reserved\r
- (EFI_REGISTER_PROTOCOL_NOTIFY) UnitTestRegisterProtocolNotify, // RegisterProtocolNotify\r
- (EFI_LOCATE_HANDLE) UnitTestLocateHandle, // LocateHandle\r
- (EFI_LOCATE_DEVICE_PATH) UnitTestLocateDevicePath, // LocateDevicePath\r
- (EFI_INSTALL_CONFIGURATION_TABLE) UnitTestInstallConfigurationTable, // InstallConfigurationTable\r
- (EFI_IMAGE_LOAD) UnitTestLoadImage, // LoadImage\r
- (EFI_IMAGE_START) UnitTestStartImage, // StartImage\r
- (EFI_EXIT) UnitTestExit, // Exit\r
- (EFI_IMAGE_UNLOAD) UnitTestUnloadImage, // UnloadImage\r
- (EFI_EXIT_BOOT_SERVICES) UnitTestExitBootServices, // ExitBootServices\r
- (EFI_GET_NEXT_MONOTONIC_COUNT) UnitTestGetNextMonotonicCount, // GetNextMonotonicCount\r
- (EFI_STALL) UnitTestStall, // Stall\r
- (EFI_SET_WATCHDOG_TIMER) UnitTestSetWatchdogTimer, // SetWatchdogTimer\r
- (EFI_CONNECT_CONTROLLER) UnitTestConnectController, // ConnectController\r
- (EFI_DISCONNECT_CONTROLLER) UnitTestDisconnectController, // DisconnectController\r
- (EFI_OPEN_PROTOCOL) UnitTestOpenProtocol, // OpenProtocol\r
- (EFI_CLOSE_PROTOCOL) UnitTestCloseProtocol, // CloseProtocol\r
- (EFI_OPEN_PROTOCOL_INFORMATION) UnitTestOpenProtocolInformation, // OpenProtocolInformation\r
- (EFI_PROTOCOLS_PER_HANDLE) UnitTestProtocolsPerHandle, // ProtocolsPerHandle\r
- (EFI_LOCATE_HANDLE_BUFFER) UnitTestLocateHandleBuffer, // LocateHandleBuffer\r
- (EFI_LOCATE_PROTOCOL) UnitTestLocateProtocol, // LocateProtocol\r
- (EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES) UnitTestInstallMultipleProtocolInterfaces, // InstallMultipleProtocolInterfaces\r
- (EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES) UnitTestUninstallMultipleProtocolInterfaces, // UninstallMultipleProtocolInterfaces\r
- (EFI_CALCULATE_CRC32) UnitTestCalculateCrc32, // CalculateCrc32\r
- (EFI_COPY_MEM) CopyMem, // CopyMem\r
- (EFI_SET_MEM) SetMem, // SetMem\r
- (EFI_CREATE_EVENT_EX) UnitTestCreateEventEx // CreateEventEx\r
+ (EFI_RAISE_TPL)UnitTestRaiseTpl, // RaiseTPL\r
+ (EFI_RESTORE_TPL)UnitTestRestoreTpl, // RestoreTPL\r
+ (EFI_ALLOCATE_PAGES)UnitTestAllocatePages, // AllocatePages\r
+ (EFI_FREE_PAGES)UnitTestFreePages, // FreePages\r
+ (EFI_GET_MEMORY_MAP)UnitTestGetMemoryMap, // GetMemoryMap\r
+ (EFI_ALLOCATE_POOL)UnitTestAllocatePool, // AllocatePool\r
+ (EFI_FREE_POOL)UnitTestFreePool, // FreePool\r
+ (EFI_CREATE_EVENT)UnitTestCreateEvent, // CreateEvent\r
+ (EFI_SET_TIMER)UnitTestSetTimer, // SetTimer\r
+ (EFI_WAIT_FOR_EVENT)UnitTestWaitForEvent, // WaitForEvent\r
+ (EFI_SIGNAL_EVENT)UnitTestSignalEvent, // SignalEvent\r
+ (EFI_CLOSE_EVENT)UnitTestCloseEvent, // CloseEvent\r
+ (EFI_CHECK_EVENT)UnitTestCheckEvent, // CheckEvent\r
+ (EFI_INSTALL_PROTOCOL_INTERFACE)UnitTestInstallProtocolInterface, // InstallProtocolInterface\r
+ (EFI_REINSTALL_PROTOCOL_INTERFACE)UnitTestReinstallProtocolInterface, // ReinstallProtocolInterface\r
+ (EFI_UNINSTALL_PROTOCOL_INTERFACE)UnitTestUninstallProtocolInterface, // UninstallProtocolInterface\r
+ (EFI_HANDLE_PROTOCOL)UnitTestHandleProtocol, // HandleProtocol\r
+ (VOID *)NULL, // Reserved\r
+ (EFI_REGISTER_PROTOCOL_NOTIFY)UnitTestRegisterProtocolNotify, // RegisterProtocolNotify\r
+ (EFI_LOCATE_HANDLE)UnitTestLocateHandle, // LocateHandle\r
+ (EFI_LOCATE_DEVICE_PATH)UnitTestLocateDevicePath, // LocateDevicePath\r
+ (EFI_INSTALL_CONFIGURATION_TABLE)UnitTestInstallConfigurationTable, // InstallConfigurationTable\r
+ (EFI_IMAGE_LOAD)UnitTestLoadImage, // LoadImage\r
+ (EFI_IMAGE_START)UnitTestStartImage, // StartImage\r
+ (EFI_EXIT)UnitTestExit, // Exit\r
+ (EFI_IMAGE_UNLOAD)UnitTestUnloadImage, // UnloadImage\r
+ (EFI_EXIT_BOOT_SERVICES)UnitTestExitBootServices, // ExitBootServices\r
+ (EFI_GET_NEXT_MONOTONIC_COUNT)UnitTestGetNextMonotonicCount, // GetNextMonotonicCount\r
+ (EFI_STALL)UnitTestStall, // Stall\r
+ (EFI_SET_WATCHDOG_TIMER)UnitTestSetWatchdogTimer, // SetWatchdogTimer\r
+ (EFI_CONNECT_CONTROLLER)UnitTestConnectController, // ConnectController\r
+ (EFI_DISCONNECT_CONTROLLER)UnitTestDisconnectController, // DisconnectController\r
+ (EFI_OPEN_PROTOCOL)UnitTestOpenProtocol, // OpenProtocol\r
+ (EFI_CLOSE_PROTOCOL)UnitTestCloseProtocol, // CloseProtocol\r
+ (EFI_OPEN_PROTOCOL_INFORMATION)UnitTestOpenProtocolInformation, // OpenProtocolInformation\r
+ (EFI_PROTOCOLS_PER_HANDLE)UnitTestProtocolsPerHandle, // ProtocolsPerHandle\r
+ (EFI_LOCATE_HANDLE_BUFFER)UnitTestLocateHandleBuffer, // LocateHandleBuffer\r
+ (EFI_LOCATE_PROTOCOL)UnitTestLocateProtocol, // LocateProtocol\r
+ (EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES)UnitTestInstallMultipleProtocolInterfaces, // InstallMultipleProtocolInterfaces\r
+ (EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES)UnitTestUninstallMultipleProtocolInterfaces, // UninstallMultipleProtocolInterfaces\r
+ (EFI_CALCULATE_CRC32)UnitTestCalculateCrc32, // CalculateCrc32\r
+ (EFI_COPY_MEM)CopyMem, // CopyMem\r
+ (EFI_SET_MEM)SetMem, // SetMem\r
+ (EFI_CREATE_EVENT_EX)UnitTestCreateEventEx // CreateEventEx\r
};\r
\r
EFI_BOOT_SERVICES *gBS = &mBootServices;\r
EFI_TPL\r
EFIAPI\r
UnitTestRaiseTpl (\r
- IN EFI_TPL NewTpl\r
+ IN EFI_TPL NewTpl\r
);\r
\r
-\r
-\r
/**\r
Lowers the task priority to the previous value. If the new\r
priority unmasks events at a higher priority, they are dispatched.\r
VOID\r
EFIAPI\r
UnitTestRestoreTpl (\r
- IN EFI_TPL NewTpl\r
+ IN EFI_TPL NewTpl\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestAllocatePages (\r
- IN EFI_ALLOCATE_TYPE Type,\r
- IN EFI_MEMORY_TYPE MemoryType,\r
- IN UINTN NumberOfPages,\r
+ IN EFI_ALLOCATE_TYPE Type,\r
+ IN EFI_MEMORY_TYPE MemoryType,\r
+ IN UINTN NumberOfPages,\r
IN OUT EFI_PHYSICAL_ADDRESS *Memory\r
);\r
\r
EFI_STATUS\r
EFIAPI\r
UnitTestFreePages (\r
- IN EFI_PHYSICAL_ADDRESS Memory,\r
- IN UINTN NumberOfPages\r
+ IN EFI_PHYSICAL_ADDRESS Memory,\r
+ IN UINTN NumberOfPages\r
);\r
\r
/**\r
OUT UINT32 *DescriptorVersion\r
);\r
\r
-\r
-\r
/**\r
Allocate pool of a particular type.\r
\r
EFI_STATUS\r
EFIAPI\r
UnitTestFreePool (\r
- IN VOID *Buffer\r
+ IN VOID *Buffer\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestInternalFreePool (\r
- IN VOID *Buffer,\r
- OUT EFI_MEMORY_TYPE *PoolType OPTIONAL\r
+ IN VOID *Buffer,\r
+ OUT EFI_MEMORY_TYPE *PoolType OPTIONAL\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestCreateEvent (\r
- IN UINT32 Type,\r
- IN EFI_TPL NotifyTpl,\r
- IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
+ IN UINT32 Type,\r
+ IN EFI_TPL NotifyTpl,\r
+ IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
IN VOID *NotifyContext, OPTIONAL\r
OUT EFI_EVENT *Event\r
);\r
EFI_STATUS\r
EFIAPI\r
UnitTestSetTimer (\r
- IN EFI_EVENT UserEvent,\r
- IN EFI_TIMER_DELAY Type,\r
- IN UINT64 TriggerTime\r
+ IN EFI_EVENT UserEvent,\r
+ IN EFI_TIMER_DELAY Type,\r
+ IN UINT64 TriggerTime\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestWaitForEvent (\r
- IN UINTN NumberOfEvents,\r
- IN EFI_EVENT *UserEvents,\r
- OUT UINTN *UserIndex\r
+ IN UINTN NumberOfEvents,\r
+ IN EFI_EVENT *UserEvents,\r
+ OUT UINTN *UserIndex\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestSignalEvent (\r
- IN EFI_EVENT UserEvent\r
+ IN EFI_EVENT UserEvent\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestCloseEvent (\r
- IN EFI_EVENT UserEvent\r
+ IN EFI_EVENT UserEvent\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestCheckEvent (\r
- IN EFI_EVENT UserEvent\r
+ IN EFI_EVENT UserEvent\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestInstallProtocolInterface (\r
- IN OUT EFI_HANDLE *UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN EFI_INTERFACE_TYPE InterfaceType,\r
- IN VOID *Interface\r
+ IN OUT EFI_HANDLE *UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN EFI_INTERFACE_TYPE InterfaceType,\r
+ IN VOID *Interface\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestReinstallProtocolInterface (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN VOID *OldInterface,\r
- IN VOID *NewInterface\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN VOID *OldInterface,\r
+ IN VOID *NewInterface\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestUninstallProtocolInterface (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN VOID *Interface\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN VOID *Interface\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestHandleProtocol (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- OUT VOID **Interface\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ OUT VOID **Interface\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestRegisterProtocolNotify (\r
- IN EFI_GUID *Protocol,\r
- IN EFI_EVENT Event,\r
- OUT VOID **Registration\r
+ IN EFI_GUID *Protocol,\r
+ IN EFI_EVENT Event,\r
+ OUT VOID **Registration\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestLocateHandle (\r
- IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
- IN EFI_GUID *Protocol OPTIONAL,\r
- IN VOID *SearchKey OPTIONAL,\r
- IN OUT UINTN *BufferSize,\r
- OUT EFI_HANDLE *Buffer\r
+ IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
+ IN EFI_GUID *Protocol OPTIONAL,\r
+ IN VOID *SearchKey OPTIONAL,\r
+ IN OUT UINTN *BufferSize,\r
+ OUT EFI_HANDLE *Buffer\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestLocateDevicePath (\r
- IN EFI_GUID *Protocol,\r
- IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath,\r
- OUT EFI_HANDLE *Device\r
+ IN EFI_GUID *Protocol,\r
+ IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath,\r
+ OUT EFI_HANDLE *Device\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestInstallConfigurationTable (\r
- IN EFI_GUID *Guid,\r
- IN VOID *Table\r
+ IN EFI_GUID *Guid,\r
+ IN VOID *Table\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestLoadImage (\r
- IN BOOLEAN BootPolicy,\r
- IN EFI_HANDLE ParentImageHandle,\r
- IN EFI_DEVICE_PATH_PROTOCOL *FilePath,\r
- IN VOID *SourceBuffer OPTIONAL,\r
- IN UINTN SourceSize,\r
- OUT EFI_HANDLE *ImageHandle\r
+ IN BOOLEAN BootPolicy,\r
+ IN EFI_HANDLE ParentImageHandle,\r
+ IN EFI_DEVICE_PATH_PROTOCOL *FilePath,\r
+ IN VOID *SourceBuffer OPTIONAL,\r
+ IN UINTN SourceSize,\r
+ OUT EFI_HANDLE *ImageHandle\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestExitBootServices (\r
- IN EFI_HANDLE ImageHandle,\r
- IN UINTN MapKey\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN UINTN MapKey\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestGetNextMonotonicCount (\r
- OUT UINT64 *Count\r
+ OUT UINT64 *Count\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestStall (\r
- IN UINTN Microseconds\r
+ IN UINTN Microseconds\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestSetWatchdogTimer (\r
- IN UINTN Timeout,\r
- IN UINT64 WatchdogCode,\r
- IN UINTN DataSize,\r
- IN CHAR16 *WatchdogData OPTIONAL\r
+ IN UINTN Timeout,\r
+ IN UINT64 WatchdogCode,\r
+ IN UINTN DataSize,\r
+ IN CHAR16 *WatchdogData OPTIONAL\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestOpenProtocol (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- OUT VOID **Interface OPTIONAL,\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_HANDLE ControllerHandle,\r
- IN UINT32 Attributes\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ OUT VOID **Interface OPTIONAL,\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_HANDLE ControllerHandle,\r
+ IN UINT32 Attributes\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestCloseProtocol (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN EFI_HANDLE AgentHandle,\r
- IN EFI_HANDLE ControllerHandle\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN EFI_HANDLE AgentHandle,\r
+ IN EFI_HANDLE ControllerHandle\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestOpenProtocolInformation (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- OUT EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer,\r
- OUT UINTN *EntryCount\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ OUT EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer,\r
+ OUT UINTN *EntryCount\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestProtocolsPerHandle (\r
- IN EFI_HANDLE UserHandle,\r
- OUT EFI_GUID ***ProtocolBuffer,\r
- OUT UINTN *ProtocolBufferCount\r
+ IN EFI_HANDLE UserHandle,\r
+ OUT EFI_GUID ***ProtocolBuffer,\r
+ OUT UINTN *ProtocolBufferCount\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestLocateHandleBuffer (\r
- IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
- IN EFI_GUID *Protocol OPTIONAL,\r
- IN VOID *SearchKey OPTIONAL,\r
- IN OUT UINTN *NumberHandles,\r
- OUT EFI_HANDLE **Buffer\r
+ IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
+ IN EFI_GUID *Protocol OPTIONAL,\r
+ IN VOID *SearchKey OPTIONAL,\r
+ IN OUT UINTN *NumberHandles,\r
+ OUT EFI_HANDLE **Buffer\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestInstallMultipleProtocolInterfaces (\r
- IN OUT EFI_HANDLE *Handle,\r
+ IN OUT EFI_HANDLE *Handle,\r
...\r
);\r
\r
EFI_STATUS\r
EFIAPI\r
UnitTestUninstallMultipleProtocolInterfaces (\r
- IN EFI_HANDLE Handle,\r
+ IN EFI_HANDLE Handle,\r
...\r
);\r
\r
EFI_STATUS\r
EFIAPI\r
UnitTestCalculateCrc32 (\r
- IN VOID *Data,\r
- IN UINTN DataSize,\r
- OUT UINT32 *Crc32\r
+ IN VOID *Data,\r
+ IN UINTN DataSize,\r
+ OUT UINT32 *Crc32\r
);\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestCreateEventEx (\r
- IN UINT32 Type,\r
- IN EFI_TPL NotifyTpl,\r
- IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
+ IN UINT32 Type,\r
+ IN EFI_TPL NotifyTpl,\r
+ IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
IN CONST VOID *NotifyContext, OPTIONAL\r
- IN CONST EFI_GUID *EventGroup, OPTIONAL\r
+ IN CONST EFI_GUID *EventGroup, OPTIONAL\r
OUT EFI_EVENT *Event\r
);\r
\r
EFI_STATUS\r
EFIAPI\r
UnitTestCreateEvent (\r
- IN UINT32 Type,\r
- IN EFI_TPL NotifyTpl,\r
- IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
+ IN UINT32 Type,\r
+ IN EFI_TPL NotifyTpl,\r
+ IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
IN VOID *NotifyContext, OPTIONAL\r
OUT EFI_EVENT *Event\r
)\r
EFI_STATUS\r
EFIAPI\r
UnitTestSetTimer (\r
- IN EFI_EVENT UserEvent,\r
- IN EFI_TIMER_DELAY Type,\r
- IN UINT64 TriggerTime\r
+ IN EFI_EVENT UserEvent,\r
+ IN EFI_TIMER_DELAY Type,\r
+ IN UINT64 TriggerTime\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestWaitForEvent (\r
- IN UINTN NumberOfEvents,\r
- IN EFI_EVENT *UserEvents,\r
- OUT UINTN *UserIndex\r
+ IN UINTN NumberOfEvents,\r
+ IN EFI_EVENT *UserEvents,\r
+ OUT UINTN *UserIndex\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestSignalEvent (\r
- IN EFI_EVENT UserEvent\r
+ IN EFI_EVENT UserEvent\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestCloseEvent (\r
- IN EFI_EVENT UserEvent\r
+ IN EFI_EVENT UserEvent\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestCheckEvent (\r
- IN EFI_EVENT UserEvent\r
+ IN EFI_EVENT UserEvent\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestCreateEventEx (\r
- IN UINT32 Type,\r
- IN EFI_TPL NotifyTpl,\r
- IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
+ IN UINT32 Type,\r
+ IN EFI_TPL NotifyTpl,\r
+ IN EFI_EVENT_NOTIFY NotifyFunction, OPTIONAL\r
IN CONST VOID *NotifyContext, OPTIONAL\r
- IN CONST EFI_GUID *EventGroup, OPTIONAL\r
+ IN CONST EFI_GUID *EventGroup, OPTIONAL\r
OUT EFI_EVENT *Event\r
)\r
{\r
EFI_STATUS\r
EFIAPI\r
UnitTestLoadImage (\r
- IN BOOLEAN BootPolicy,\r
- IN EFI_HANDLE ParentImageHandle,\r
- IN EFI_DEVICE_PATH_PROTOCOL *FilePath,\r
- IN VOID *SourceBuffer OPTIONAL,\r
- IN UINTN SourceSize,\r
- OUT EFI_HANDLE *ImageHandle\r
+ IN BOOLEAN BootPolicy,\r
+ IN EFI_HANDLE ParentImageHandle,\r
+ IN EFI_DEVICE_PATH_PROTOCOL *FilePath,\r
+ IN VOID *SourceBuffer OPTIONAL,\r
+ IN UINTN SourceSize,\r
+ OUT EFI_HANDLE *ImageHandle\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestExitBootServices (\r
- IN EFI_HANDLE ImageHandle,\r
- IN UINTN MapKey\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN UINTN MapKey\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestAllocatePages (\r
- IN EFI_ALLOCATE_TYPE Type,\r
- IN EFI_MEMORY_TYPE MemoryType,\r
- IN UINTN NumberOfPages,\r
+ IN EFI_ALLOCATE_TYPE Type,\r
+ IN EFI_MEMORY_TYPE MemoryType,\r
+ IN UINTN NumberOfPages,\r
IN OUT EFI_PHYSICAL_ADDRESS *Memory\r
)\r
{\r
EFI_STATUS\r
EFIAPI\r
UnitTestFreePages (\r
- IN EFI_PHYSICAL_ADDRESS Memory,\r
- IN UINTN NumberOfPages\r
+ IN EFI_PHYSICAL_ADDRESS Memory,\r
+ IN UINTN NumberOfPages\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestFreePool (\r
- IN VOID *Buffer\r
+ IN VOID *Buffer\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestGetNextMonotonicCount (\r
- OUT UINT64 *Count\r
+ OUT UINT64 *Count\r
)\r
{\r
STATIC UINT64 StaticCount = 0;\r
EFI_STATUS\r
EFIAPI\r
UnitTestStall (\r
- IN UINTN Microseconds\r
+ IN UINTN Microseconds\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestSetWatchdogTimer (\r
- IN UINTN Timeout,\r
- IN UINT64 WatchdogCode,\r
- IN UINTN DataSize,\r
- IN CHAR16 *WatchdogData OPTIONAL\r
+ IN UINTN Timeout,\r
+ IN UINT64 WatchdogCode,\r
+ IN UINTN DataSize,\r
+ IN CHAR16 *WatchdogData OPTIONAL\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestCalculateCrc32 (\r
- IN VOID *Data,\r
- IN UINTN DataSize,\r
- OUT UINT32 *Crc32\r
+ IN VOID *Data,\r
+ IN UINTN DataSize,\r
+ OUT UINT32 *Crc32\r
)\r
{\r
- if (Data == NULL || Crc32 == NULL || DataSize == 0) {\r
+ if ((Data == NULL) || (Crc32 == NULL) || (DataSize == 0)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
\r
#include "UefiBootServicesTableLibUnitTestProtocol.h"\r
\r
-STATIC LIST_ENTRY mProtocolDatabase = INITIALIZE_LIST_HEAD_VARIABLE (mProtocolDatabase);\r
-STATIC LIST_ENTRY gHandleList = INITIALIZE_LIST_HEAD_VARIABLE (gHandleList);\r
-STATIC UINT64 gHandleDatabaseKey = 0;\r
-STATIC UINTN mEfiLocateHandleRequest = 0;\r
+STATIC LIST_ENTRY mProtocolDatabase = INITIALIZE_LIST_HEAD_VARIABLE (mProtocolDatabase);\r
+STATIC LIST_ENTRY gHandleList = INITIALIZE_LIST_HEAD_VARIABLE (gHandleList);\r
+STATIC UINT64 gHandleDatabaseKey = 0;\r
+STATIC UINTN mEfiLocateHandleRequest = 0;\r
\r
//\r
// Helper Functions\r
\r
**/\r
EFI_STATUS\r
- UnitTestValidateHandle (\r
- IN EFI_HANDLE UserHandle\r
+UnitTestValidateHandle (\r
+ IN EFI_HANDLE UserHandle\r
)\r
{\r
- IHANDLE *Handle;\r
- LIST_ENTRY *Link;\r
+ IHANDLE *Handle;\r
+ LIST_ENTRY *Link;\r
\r
if (UserHandle == NULL) {\r
return EFI_INVALID_PARAMETER;\r
\r
for (Link = gHandleList.BackLink; Link != &gHandleList; Link = Link->BackLink) {\r
Handle = CR (Link, IHANDLE, AllHandles, EFI_HANDLE_SIGNATURE);\r
- if (Handle == (IHANDLE *) UserHandle) {\r
+ if (Handle == (IHANDLE *)UserHandle) {\r
return EFI_SUCCESS;\r
}\r
}\r
**/\r
PROTOCOL_ENTRY *\r
UnitTestFindProtocolEntry (\r
- IN EFI_GUID *Protocol,\r
- IN BOOLEAN Create\r
+ IN EFI_GUID *Protocol,\r
+ IN BOOLEAN Create\r
)\r
{\r
- LIST_ENTRY *Link;\r
- PROTOCOL_ENTRY *Item;\r
- PROTOCOL_ENTRY *ProtEntry;\r
+ LIST_ENTRY *Link;\r
+ PROTOCOL_ENTRY *Item;\r
+ PROTOCOL_ENTRY *ProtEntry;\r
\r
//\r
// Search the database for the matching GUID\r
ProtEntry = NULL;\r
for (Link = mProtocolDatabase.ForwardLink;\r
Link != &mProtocolDatabase;\r
- Link = Link->ForwardLink) {\r
-\r
+ Link = Link->ForwardLink)\r
+ {\r
Item = CR (Link, PROTOCOL_ENTRY, AllEntries, PROTOCOL_ENTRY_SIGNATURE);\r
if (CompareGuid (&Item->ProtocolID, Protocol)) {\r
-\r
//\r
// This is the protocol entry\r
//\r
// Initialize new protocol entry structure\r
//\r
ProtEntry->Signature = PROTOCOL_ENTRY_SIGNATURE;\r
- CopyGuid ((VOID *) &ProtEntry->ProtocolID, Protocol);\r
+ CopyGuid ((VOID *)&ProtEntry->ProtocolID, Protocol);\r
InitializeListHead (&ProtEntry->Protocols);\r
InitializeListHead (&ProtEntry->Notify);\r
\r
**/\r
PROTOCOL_INTERFACE *\r
UnitTestFindProtocolInterface (\r
- IN IHANDLE *Handle,\r
- IN EFI_GUID *Protocol,\r
- IN VOID *Interface\r
+ IN IHANDLE *Handle,\r
+ IN EFI_GUID *Protocol,\r
+ IN VOID *Interface\r
)\r
{\r
PROTOCOL_INTERFACE *Prot;\r
\r
ProtEntry = UnitTestFindProtocolEntry (Protocol, FALSE);\r
if (ProtEntry != NULL) {\r
-\r
//\r
// Look at each protocol interface for any matches\r
//\r
- for (Link = Handle->Protocols.ForwardLink; Link != &Handle->Protocols; Link=Link->ForwardLink) {\r
-\r
+ for (Link = Handle->Protocols.ForwardLink; Link != &Handle->Protocols; Link = Link->ForwardLink) {\r
//\r
// If this protocol interface matches, remove it\r
//\r
- Prot = CR(Link, PROTOCOL_INTERFACE, Link, PROTOCOL_INTERFACE_SIGNATURE);\r
- if (Prot->Interface == Interface && Prot->Protocol == ProtEntry) {\r
+ Prot = CR (Link, PROTOCOL_INTERFACE, Link, PROTOCOL_INTERFACE_SIGNATURE);\r
+ if ((Prot->Interface == Interface) && (Prot->Protocol == ProtEntry)) {\r
break;\r
}\r
\r
**/\r
VOID\r
UnitTestNotifyProtocolEntry (\r
- IN PROTOCOL_ENTRY *ProtEntry\r
+ IN PROTOCOL_ENTRY *ProtEntry\r
)\r
{\r
- PROTOCOL_NOTIFY *ProtNotify;\r
- LIST_ENTRY *Link;\r
+ PROTOCOL_NOTIFY *ProtNotify;\r
+ LIST_ENTRY *Link;\r
\r
- for (Link=ProtEntry->Notify.ForwardLink; Link != &ProtEntry->Notify; Link=Link->ForwardLink) {\r
- ProtNotify = CR(Link, PROTOCOL_NOTIFY, Link, PROTOCOL_NOTIFY_SIGNATURE);\r
+ for (Link = ProtEntry->Notify.ForwardLink; Link != &ProtEntry->Notify; Link = Link->ForwardLink) {\r
+ ProtNotify = CR (Link, PROTOCOL_NOTIFY, Link, PROTOCOL_NOTIFY_SIGNATURE);\r
UnitTestSignalEvent (ProtNotify->Event);\r
}\r
}\r
**/\r
IHANDLE *\r
UnitTestGetNextLocateAllHandles (\r
- IN OUT LOCATE_POSITION *Position,\r
- OUT VOID **Interface\r
+ IN OUT LOCATE_POSITION *Position,\r
+ OUT VOID **Interface\r
)\r
{\r
- IHANDLE *Handle;\r
+ IHANDLE *Handle;\r
\r
//\r
// Next handle\r
//\r
// If not at the end of the list, get the handle\r
//\r
- Handle = NULL;\r
- *Interface = NULL;\r
+ Handle = NULL;\r
+ *Interface = NULL;\r
if (Position->Position != &gHandleList) {\r
Handle = CR (Position->Position, IHANDLE, AllHandles, EFI_HANDLE_SIGNATURE);\r
}\r
**/\r
IHANDLE *\r
UnitTestGetNextLocateByRegisterNotify (\r
- IN OUT LOCATE_POSITION *Position,\r
- OUT VOID **Interface\r
+ IN OUT LOCATE_POSITION *Position,\r
+ OUT VOID **Interface\r
)\r
{\r
IHANDLE *Handle;\r
PROTOCOL_INTERFACE *Prot;\r
LIST_ENTRY *Link;\r
\r
- Handle = NULL;\r
- *Interface = NULL;\r
+ Handle = NULL;\r
+ *Interface = NULL;\r
ProtNotify = Position->SearchKey;\r
\r
//\r
//\r
Link = ProtNotify->Position->ForwardLink;\r
if (Link != &ProtNotify->Protocol->Protocols) {\r
- Prot = CR (Link, PROTOCOL_INTERFACE, ByProtocol, PROTOCOL_INTERFACE_SIGNATURE);\r
- Handle = Prot->Handle;\r
+ Prot = CR (Link, PROTOCOL_INTERFACE, ByProtocol, PROTOCOL_INTERFACE_SIGNATURE);\r
+ Handle = Prot->Handle;\r
*Interface = Prot->Interface;\r
}\r
}\r
return Handle;\r
}\r
\r
-\r
/**\r
Routine to get the next Handle, when you are searching for a given protocol.\r
\r
**/\r
IHANDLE *\r
UnitTestGetNextLocateByProtocol (\r
- IN OUT LOCATE_POSITION *Position,\r
- OUT VOID **Interface\r
+ IN OUT LOCATE_POSITION *Position,\r
+ OUT VOID **Interface\r
)\r
{\r
IHANDLE *Handle;\r
LIST_ENTRY *Link;\r
PROTOCOL_INTERFACE *Prot;\r
\r
- Handle = NULL;\r
- *Interface = NULL;\r
- for (; ;) {\r
+ Handle = NULL;\r
+ *Interface = NULL;\r
+ for ( ; ;) {\r
//\r
// Next entry\r
//\r
- Link = Position->Position->ForwardLink;\r
+ Link = Position->Position->ForwardLink;\r
Position->Position = Link;\r
\r
//\r
//\r
// Get the handle\r
//\r
- Prot = CR (Link, PROTOCOL_INTERFACE, ByProtocol, PROTOCOL_INTERFACE_SIGNATURE);\r
- Handle = Prot->Handle;\r
+ Prot = CR (Link, PROTOCOL_INTERFACE, ByProtocol, PROTOCOL_INTERFACE_SIGNATURE);\r
+ Handle = Prot->Handle;\r
*Interface = Prot->Interface;\r
\r
//\r
**/\r
EFI_STATUS\r
UnitTestDisconnectControllersUsingProtocolInterface (\r
- IN EFI_HANDLE UserHandle,\r
- IN PROTOCOL_INTERFACE *Prot\r
+ IN EFI_HANDLE UserHandle,\r
+ IN PROTOCOL_INTERFACE *Prot\r
)\r
{\r
- EFI_STATUS Status;\r
- BOOLEAN ItemFound;\r
- LIST_ENTRY *Link;\r
- OPEN_PROTOCOL_DATA *OpenData;\r
+ EFI_STATUS Status;\r
+ BOOLEAN ItemFound;\r
+ LIST_ENTRY *Link;\r
+ OPEN_PROTOCOL_DATA *OpenData;\r
\r
Status = EFI_SUCCESS;\r
\r
if (!EFI_ERROR (Status)) {\r
ItemFound = TRUE;\r
}\r
+\r
break;\r
}\r
}\r
for (Link = Prot->OpenList.ForwardLink; Link != &Prot->OpenList;) {\r
OpenData = CR (Link, OPEN_PROTOCOL_DATA, Link, OPEN_PROTOCOL_DATA_SIGNATURE);\r
if ((OpenData->Attributes &\r
- (EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL | EFI_OPEN_PROTOCOL_GET_PROTOCOL | EFI_OPEN_PROTOCOL_TEST_PROTOCOL)) != 0) {\r
+ (EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL | EFI_OPEN_PROTOCOL_GET_PROTOCOL | EFI_OPEN_PROTOCOL_TEST_PROTOCOL)) != 0)\r
+ {\r
Link = RemoveEntryList (&OpenData->Link);\r
Prot->OpenListCount--;\r
FreePool (OpenData);\r
**/\r
PROTOCOL_INTERFACE *\r
UnitTestRemoveInterfaceFromProtocol (\r
- IN IHANDLE *Handle,\r
- IN EFI_GUID *Protocol,\r
- IN VOID *Interface\r
+ IN IHANDLE *Handle,\r
+ IN EFI_GUID *Protocol,\r
+ IN VOID *Interface\r
)\r
{\r
PROTOCOL_INTERFACE *Prot;\r
\r
Prot = UnitTestFindProtocolInterface (Handle, Protocol, Interface);\r
if (Prot != NULL) {\r
-\r
ProtEntry = Prot->Protocol;\r
\r
//\r
// If there's a protocol notify location pointing to this entry, back it up one\r
//\r
- for(Link = ProtEntry->Notify.ForwardLink; Link != &ProtEntry->Notify; Link=Link->ForwardLink) {\r
- ProtNotify = CR(Link, PROTOCOL_NOTIFY, Link, PROTOCOL_NOTIFY_SIGNATURE);\r
+ for (Link = ProtEntry->Notify.ForwardLink; Link != &ProtEntry->Notify; Link = Link->ForwardLink) {\r
+ ProtNotify = CR (Link, PROTOCOL_NOTIFY, Link, PROTOCOL_NOTIFY_SIGNATURE);\r
\r
if (ProtNotify->Position == &Prot->ByProtocol) {\r
ProtNotify->Position = Prot->ByProtocol.BackLink;\r
**/\r
PROTOCOL_INTERFACE *\r
UnitTestGetProtocolInterface (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol\r
)\r
{\r
EFI_STATUS Status;\r
return NULL;\r
}\r
\r
- Handle = (IHANDLE *) UserHandle;\r
+ Handle = (IHANDLE *)UserHandle;\r
\r
//\r
// Look at each protocol interface for a match\r
//\r
for (Link = Handle->Protocols.ForwardLink; Link != &Handle->Protocols; Link = Link->ForwardLink) {\r
- Prot = CR(Link, PROTOCOL_INTERFACE, Link, PROTOCOL_INTERFACE_SIGNATURE);\r
+ Prot = CR (Link, PROTOCOL_INTERFACE, Link, PROTOCOL_INTERFACE_SIGNATURE);\r
ProtEntry = Prot->Protocol;\r
if (CompareGuid (&ProtEntry->ProtocolID, Protocol)) {\r
return Prot;\r
}\r
}\r
+\r
return NULL;\r
}\r
\r
**/\r
EFI_STATUS\r
UnitTestInstallProtocolInterfaceNotify (\r
- IN OUT EFI_HANDLE *UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN EFI_INTERFACE_TYPE InterfaceType,\r
- IN VOID *Interface,\r
- IN BOOLEAN Notify\r
+ IN OUT EFI_HANDLE *UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN EFI_INTERFACE_TYPE InterfaceType,\r
+ IN VOID *Interface,\r
+ IN BOOLEAN Notify\r
)\r
{\r
PROTOCOL_INTERFACE *Prot;\r
// returns EFI_INVALID_PARAMETER if InterfaceType is invalid.\r
// Also added check for invalid UserHandle and Protocol pointers.\r
//\r
- if (UserHandle == NULL || Protocol == NULL) {\r
+ if ((UserHandle == NULL) || (Protocol == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
UT_LOG_INFO ("InstallProtocolInterface: %g %p\n", Protocol, Interface);\r
\r
Status = EFI_OUT_OF_RESOURCES;\r
- Prot = NULL;\r
+ Prot = NULL;\r
Handle = NULL;\r
\r
if (*UserHandle != NULL) {\r
- Status = UnitTestHandleProtocol (*UserHandle, Protocol, (VOID **) &ExistingInterface);\r
+ Status = UnitTestHandleProtocol (*UserHandle, Protocol, (VOID **)&ExistingInterface);\r
if (!EFI_ERROR (Status)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
//\r
// If caller didn't supply a handle, allocate a new one\r
//\r
- Handle = (IHANDLE *) *UserHandle;\r
+ Handle = (IHANDLE *)*UserHandle;\r
if (Handle == NULL) {\r
Handle = AllocateZeroPool (sizeof (IHANDLE));\r
if (Handle == NULL) {\r
} else {\r
Status = UnitTestValidateHandle (Handle);\r
if (EFI_ERROR (Status)) {\r
- DEBUG((DEBUG_ERROR, "InstallProtocolInterface: input handle at 0x%x is invalid\n", Handle));\r
+ DEBUG ((DEBUG_ERROR, "InstallProtocolInterface: input handle at 0x%x is invalid\n", Handle));\r
goto Done;\r
}\r
}\r
// Initialize the protocol interface structure\r
//\r
Prot->Signature = PROTOCOL_INTERFACE_SIGNATURE;\r
- Prot->Handle = Handle;\r
- Prot->Protocol = ProtEntry;\r
+ Prot->Handle = Handle;\r
+ Prot->Protocol = ProtEntry;\r
Prot->Interface = Interface;\r
\r
//\r
if (Notify) {\r
UnitTestNotifyProtocolEntry (ProtEntry);\r
}\r
+\r
Status = EFI_SUCCESS;\r
\r
Done:\r
if (Prot != NULL) {\r
UnitTestFreePool (Prot);\r
}\r
+\r
DEBUG ((DEBUG_ERROR, "InstallProtocolInterface: %g %p failed with %r\n", Protocol, Interface, Status));\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
UnitTestInstallProtocolInterface (\r
- IN OUT EFI_HANDLE *UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN EFI_INTERFACE_TYPE InterfaceType,\r
- IN VOID *Interface\r
+ IN OUT EFI_HANDLE *UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN EFI_INTERFACE_TYPE InterfaceType,\r
+ IN VOID *Interface\r
)\r
{\r
return UnitTestInstallProtocolInterfaceNotify (\r
- UserHandle,\r
- Protocol,\r
- InterfaceType,\r
- Interface,\r
- TRUE\r
- );\r
+ UserHandle,\r
+ Protocol,\r
+ InterfaceType,\r
+ Interface,\r
+ TRUE\r
+ );\r
}\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestReinstallProtocolInterface (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN VOID *OldInterface,\r
- IN VOID *NewInterface\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN VOID *OldInterface,\r
+ IN VOID *NewInterface\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestUninstallProtocolInterface (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN VOID *Interface\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN VOID *Interface\r
)\r
{\r
- EFI_STATUS Status;\r
- IHANDLE *Handle;\r
- PROTOCOL_INTERFACE *Prot;\r
+ EFI_STATUS Status;\r
+ IHANDLE *Handle;\r
+ PROTOCOL_INTERFACE *Prot;\r
\r
//\r
// Check that Protocol is valid\r
// Remove the protocol interface from the protocol\r
//\r
Status = EFI_NOT_FOUND;\r
- Handle = (IHANDLE *) UserHandle;\r
+ Handle = (IHANDLE *)UserHandle;\r
Prot = UnitTestRemoveInterfaceFromProtocol (Handle, Protocol, Interface);\r
\r
if (Prot != NULL) {\r
EFI_STATUS\r
EFIAPI\r
UnitTestHandleProtocol (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- OUT VOID **Interface\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ OUT VOID **Interface\r
)\r
{\r
- return UnitTestOpenProtocol (\r
- UserHandle,\r
- Protocol,\r
- Interface,\r
- gImageHandle,\r
- NULL,\r
- EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL\r
- );\r
+ return UnitTestOpenProtocol (\r
+ UserHandle,\r
+ Protocol,\r
+ Interface,\r
+ gImageHandle,\r
+ NULL,\r
+ EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL\r
+ );\r
}\r
\r
/**\r
EFI_STATUS\r
EFIAPI\r
UnitTestRegisterProtocolNotify (\r
- IN EFI_GUID *Protocol,\r
- IN EFI_EVENT Event,\r
- OUT VOID **Registration\r
+ IN EFI_GUID *Protocol,\r
+ IN EFI_EVENT Event,\r
+ OUT VOID **Registration\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestLocateHandle (\r
- IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
- IN EFI_GUID *Protocol OPTIONAL,\r
- IN VOID *SearchKey OPTIONAL,\r
- IN OUT UINTN *BufferSize,\r
- OUT EFI_HANDLE *Buffer\r
+ IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
+ IN EFI_GUID *Protocol OPTIONAL,\r
+ IN VOID *SearchKey OPTIONAL,\r
+ IN OUT UINTN *BufferSize,\r
+ OUT EFI_HANDLE *Buffer\r
)\r
{\r
EFI_STATUS Status;\r
Position.SearchKey = SearchKey;\r
Position.Position = &gHandleList;\r
\r
- ResultSize = 0;\r
- ResultBuffer = (IHANDLE **) Buffer;\r
- Status = EFI_SUCCESS;\r
+ ResultSize = 0;\r
+ ResultBuffer = (IHANDLE **)Buffer;\r
+ Status = EFI_SUCCESS;\r
\r
//\r
// Get the search function based on type\r
//\r
switch (SearchType) {\r
- case AllHandles:\r
- GetNext = UnitTestGetNextLocateAllHandles;\r
- break;\r
-\r
- case ByRegisterNotify:\r
- //\r
- // Must have SearchKey for locate ByRegisterNotify\r
- //\r
- if (SearchKey == NULL) {\r
- Status = EFI_INVALID_PARAMETER;\r
+ case AllHandles:\r
+ GetNext = UnitTestGetNextLocateAllHandles;\r
break;\r
- }\r
- GetNext = UnitTestGetNextLocateByRegisterNotify;\r
- break;\r
\r
- case ByProtocol:\r
- GetNext = UnitTestGetNextLocateByProtocol;\r
- if (Protocol == NULL) {\r
- Status = EFI_INVALID_PARAMETER;\r
+ case ByRegisterNotify:\r
+ //\r
+ // Must have SearchKey for locate ByRegisterNotify\r
+ //\r
+ if (SearchKey == NULL) {\r
+ Status = EFI_INVALID_PARAMETER;\r
+ break;\r
+ }\r
+\r
+ GetNext = UnitTestGetNextLocateByRegisterNotify;\r
break;\r
- }\r
- //\r
- // Look up the protocol entry and set the head pointer\r
- //\r
- Position.ProtEntry = UnitTestFindProtocolEntry (Protocol, FALSE);\r
- if (Position.ProtEntry == NULL) {\r
- Status = EFI_NOT_FOUND;\r
+\r
+ case ByProtocol:\r
+ GetNext = UnitTestGetNextLocateByProtocol;\r
+ if (Protocol == NULL) {\r
+ Status = EFI_INVALID_PARAMETER;\r
+ break;\r
+ }\r
+\r
+ //\r
+ // Look up the protocol entry and set the head pointer\r
+ //\r
+ Position.ProtEntry = UnitTestFindProtocolEntry (Protocol, FALSE);\r
+ if (Position.ProtEntry == NULL) {\r
+ Status = EFI_NOT_FOUND;\r
+ break;\r
+ }\r
+\r
+ Position.Position = &Position.ProtEntry->Protocols;\r
break;\r
- }\r
- Position.Position = &Position.ProtEntry->Protocols;\r
- break;\r
\r
- default:\r
- Status = EFI_INVALID_PARAMETER;\r
- break;\r
+ default:\r
+ Status = EFI_INVALID_PARAMETER;\r
+ break;\r
}\r
\r
if (EFI_ERROR (Status)) {\r
// Enumerate out the matching handles\r
//\r
mEfiLocateHandleRequest += 1;\r
- for (; ;) {\r
+ for ( ; ;) {\r
//\r
// Get the next handle. If no more handles, stop\r
//\r
//\r
ResultSize += sizeof (Handle);\r
if (ResultSize <= *BufferSize) {\r
- *ResultBuffer = Handle;\r
- ResultBuffer += 1;\r
+ *ResultBuffer = Handle;\r
+ ResultBuffer += 1;\r
}\r
}\r
\r
\r
*BufferSize = ResultSize;\r
\r
- if (SearchType == ByRegisterNotify && !EFI_ERROR(Status)) {\r
+ if ((SearchType == ByRegisterNotify) && !EFI_ERROR (Status)) {\r
//\r
// If this is a search by register notify and a handle was\r
// returned, update the register notification position\r
//\r
ASSERT (SearchKey != NULL);\r
- ProtNotify = SearchKey;\r
+ ProtNotify = SearchKey;\r
ProtNotify->Position = ProtNotify->Position->ForwardLink;\r
}\r
}\r
EFI_STATUS\r
EFIAPI\r
UnitTestLocateDevicePath (\r
- IN EFI_GUID *Protocol,\r
- IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath,\r
- OUT EFI_HANDLE *Device\r
+ IN EFI_GUID *Protocol,\r
+ IN OUT EFI_DEVICE_PATH_PROTOCOL **DevicePath,\r
+ OUT EFI_HANDLE *Device\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestInstallConfigurationTable (\r
- IN EFI_GUID *Guid,\r
- IN VOID *Table\r
+ IN EFI_GUID *Guid,\r
+ IN VOID *Table\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestOpenProtocol (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- OUT VOID **Interface OPTIONAL,\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_HANDLE ControllerHandle,\r
- IN UINT32 Attributes\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ OUT VOID **Interface OPTIONAL,\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_HANDLE ControllerHandle,\r
+ IN UINT32 Attributes\r
)\r
{\r
EFI_STATUS Status;\r
// Check for invalid Attributes\r
//\r
switch (Attributes) {\r
- case EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER :\r
- Status = UnitTestValidateHandle (ImageHandle);\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
- Status = UnitTestValidateHandle (ControllerHandle);\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
- if (UserHandle == ControllerHandle) {\r
+ case EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER:\r
+ Status = UnitTestValidateHandle (ImageHandle);\r
+ if (EFI_ERROR (Status)) {\r
+ return Status;\r
+ }\r
+\r
+ Status = UnitTestValidateHandle (ControllerHandle);\r
+ if (EFI_ERROR (Status)) {\r
+ return Status;\r
+ }\r
+\r
+ if (UserHandle == ControllerHandle) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
+\r
+ break;\r
+ case EFI_OPEN_PROTOCOL_BY_DRIVER:\r
+ case EFI_OPEN_PROTOCOL_BY_DRIVER | EFI_OPEN_PROTOCOL_EXCLUSIVE:\r
+ Status = UnitTestValidateHandle (ImageHandle);\r
+ if (EFI_ERROR (Status)) {\r
+ return Status;\r
+ }\r
+\r
+ Status = UnitTestValidateHandle (ControllerHandle);\r
+ if (EFI_ERROR (Status)) {\r
+ return Status;\r
+ }\r
+\r
+ break;\r
+ case EFI_OPEN_PROTOCOL_EXCLUSIVE:\r
+ Status = UnitTestValidateHandle (ImageHandle);\r
+ if (EFI_ERROR (Status)) {\r
+ return Status;\r
+ }\r
+\r
+ break;\r
+ case EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL:\r
+ case EFI_OPEN_PROTOCOL_GET_PROTOCOL:\r
+ case EFI_OPEN_PROTOCOL_TEST_PROTOCOL:\r
+ break;\r
+ default:\r
return EFI_INVALID_PARAMETER;\r
- }\r
- break;\r
- case EFI_OPEN_PROTOCOL_BY_DRIVER :\r
- case EFI_OPEN_PROTOCOL_BY_DRIVER | EFI_OPEN_PROTOCOL_EXCLUSIVE :\r
- Status = UnitTestValidateHandle (ImageHandle);\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
- Status = UnitTestValidateHandle (ControllerHandle);\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
- break;\r
- case EFI_OPEN_PROTOCOL_EXCLUSIVE :\r
- Status = UnitTestValidateHandle (ImageHandle);\r
- if (EFI_ERROR (Status)) {\r
- return Status;\r
- }\r
- break;\r
- case EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL :\r
- case EFI_OPEN_PROTOCOL_GET_PROTOCOL :\r
- case EFI_OPEN_PROTOCOL_TEST_PROTOCOL :\r
- break;\r
- default:\r
- return EFI_INVALID_PARAMETER;\r
}\r
\r
//\r
\r
Status = EFI_SUCCESS;\r
\r
- ByDriver = FALSE;\r
- Exclusive = FALSE;\r
+ ByDriver = FALSE;\r
+ Exclusive = FALSE;\r
for ( Link = Prot->OpenList.ForwardLink; Link != &Prot->OpenList; Link = Link->ForwardLink) {\r
- OpenData = CR (Link, OPEN_PROTOCOL_DATA, Link, OPEN_PROTOCOL_DATA_SIGNATURE);\r
+ OpenData = CR (Link, OPEN_PROTOCOL_DATA, Link, OPEN_PROTOCOL_DATA_SIGNATURE);\r
ExactMatch = (BOOLEAN)((OpenData->AgentHandle == ImageHandle) &&\r
(OpenData->Attributes == Attributes) &&\r
(OpenData->ControllerHandle == ControllerHandle));\r
goto Done;\r
}\r
}\r
+\r
if ((OpenData->Attributes & EFI_OPEN_PROTOCOL_EXCLUSIVE) != 0) {\r
Exclusive = TRUE;\r
} else if (ExactMatch) {\r
//\r
\r
switch (Attributes) {\r
- case EFI_OPEN_PROTOCOL_BY_DRIVER :\r
- if (Exclusive || ByDriver) {\r
- Status = EFI_ACCESS_DENIED;\r
- goto Done;\r
- }\r
- break;\r
- case EFI_OPEN_PROTOCOL_BY_DRIVER | EFI_OPEN_PROTOCOL_EXCLUSIVE :\r
- case EFI_OPEN_PROTOCOL_EXCLUSIVE :\r
- if (Exclusive) {\r
- Status = EFI_ACCESS_DENIED;\r
- goto Done;\r
- }\r
- if (ByDriver) {\r
- do {\r
- Disconnect = FALSE;\r
- for (Link = Prot->OpenList.ForwardLink; Link != &Prot->OpenList; Link = Link->ForwardLink) {\r
- OpenData = CR (Link, OPEN_PROTOCOL_DATA, Link, OPEN_PROTOCOL_DATA_SIGNATURE);\r
- if ((OpenData->Attributes & EFI_OPEN_PROTOCOL_BY_DRIVER) != 0) {\r
- Disconnect = TRUE;\r
- Status = UnitTestDisconnectController (UserHandle, OpenData->AgentHandle, NULL);\r
- if (EFI_ERROR (Status)) {\r
- Status = EFI_ACCESS_DENIED;\r
- goto Done;\r
- } else {\r
- break;\r
+ case EFI_OPEN_PROTOCOL_BY_DRIVER:\r
+ if (Exclusive || ByDriver) {\r
+ Status = EFI_ACCESS_DENIED;\r
+ goto Done;\r
+ }\r
+\r
+ break;\r
+ case EFI_OPEN_PROTOCOL_BY_DRIVER | EFI_OPEN_PROTOCOL_EXCLUSIVE:\r
+ case EFI_OPEN_PROTOCOL_EXCLUSIVE:\r
+ if (Exclusive) {\r
+ Status = EFI_ACCESS_DENIED;\r
+ goto Done;\r
+ }\r
+\r
+ if (ByDriver) {\r
+ do {\r
+ Disconnect = FALSE;\r
+ for (Link = Prot->OpenList.ForwardLink; Link != &Prot->OpenList; Link = Link->ForwardLink) {\r
+ OpenData = CR (Link, OPEN_PROTOCOL_DATA, Link, OPEN_PROTOCOL_DATA_SIGNATURE);\r
+ if ((OpenData->Attributes & EFI_OPEN_PROTOCOL_BY_DRIVER) != 0) {\r
+ Disconnect = TRUE;\r
+ Status = UnitTestDisconnectController (UserHandle, OpenData->AgentHandle, NULL);\r
+ if (EFI_ERROR (Status)) {\r
+ Status = EFI_ACCESS_DENIED;\r
+ goto Done;\r
+ } else {\r
+ break;\r
+ }\r
}\r
}\r
- }\r
- } while (Disconnect);\r
- }\r
- break;\r
- case EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER :\r
- case EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL :\r
- case EFI_OPEN_PROTOCOL_GET_PROTOCOL :\r
- case EFI_OPEN_PROTOCOL_TEST_PROTOCOL :\r
- break;\r
+ } while (Disconnect);\r
+ }\r
+\r
+ break;\r
+ case EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER:\r
+ case EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL:\r
+ case EFI_OPEN_PROTOCOL_GET_PROTOCOL:\r
+ case EFI_OPEN_PROTOCOL_TEST_PROTOCOL:\r
+ break;\r
}\r
\r
if (ImageHandle == NULL) {\r
Status = EFI_SUCCESS;\r
goto Done;\r
}\r
+\r
//\r
// Create new entry\r
//\r
- OpenData = AllocatePool (sizeof(OPEN_PROTOCOL_DATA));\r
+ OpenData = AllocatePool (sizeof (OPEN_PROTOCOL_DATA));\r
if (OpenData == NULL) {\r
Status = EFI_OUT_OF_RESOURCES;\r
} else {\r
- OpenData->Signature = OPEN_PROTOCOL_DATA_SIGNATURE;\r
- OpenData->AgentHandle = ImageHandle;\r
- OpenData->ControllerHandle = ControllerHandle;\r
- OpenData->Attributes = Attributes;\r
- OpenData->OpenCount = 1;\r
+ OpenData->Signature = OPEN_PROTOCOL_DATA_SIGNATURE;\r
+ OpenData->AgentHandle = ImageHandle;\r
+ OpenData->ControllerHandle = ControllerHandle;\r
+ OpenData->Attributes = Attributes;\r
+ OpenData->OpenCount = 1;\r
InsertTailList (&Prot->OpenList, &OpenData->Link);\r
Prot->OpenListCount++;\r
Status = EFI_SUCCESS;\r
// Keep Interface unmodified in case of any Error\r
// except EFI_ALREADY_STARTED and EFI_UNSUPPORTED.\r
//\r
- if (!EFI_ERROR (Status) || Status == EFI_ALREADY_STARTED) {\r
+ if (!EFI_ERROR (Status) || (Status == EFI_ALREADY_STARTED)) {\r
//\r
// According to above logic, if 'Prot' is NULL, then the 'Status' must be\r
// EFI_UNSUPPORTED. Here the 'Status' is not EFI_UNSUPPORTED, so 'Prot'\r
EFI_STATUS\r
EFIAPI\r
UnitTestCloseProtocol (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- IN EFI_HANDLE AgentHandle,\r
- IN EFI_HANDLE ControllerHandle\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ IN EFI_HANDLE AgentHandle,\r
+ IN EFI_HANDLE ControllerHandle\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestOpenProtocolInformation (\r
- IN EFI_HANDLE UserHandle,\r
- IN EFI_GUID *Protocol,\r
- OUT EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer,\r
- OUT UINTN *EntryCount\r
+ IN EFI_HANDLE UserHandle,\r
+ IN EFI_GUID *Protocol,\r
+ OUT EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer,\r
+ OUT UINTN *EntryCount\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestProtocolsPerHandle (\r
- IN EFI_HANDLE UserHandle,\r
- OUT EFI_GUID ***ProtocolBuffer,\r
- OUT UINTN *ProtocolBufferCount\r
+ IN EFI_HANDLE UserHandle,\r
+ OUT EFI_GUID ***ProtocolBuffer,\r
+ OUT UINTN *ProtocolBufferCount\r
)\r
{\r
return EFI_NOT_AVAILABLE_YET;\r
EFI_STATUS\r
EFIAPI\r
UnitTestLocateHandleBuffer (\r
- IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
- IN EFI_GUID *Protocol OPTIONAL,\r
- IN VOID *SearchKey OPTIONAL,\r
- IN OUT UINTN *NumberHandles,\r
- OUT EFI_HANDLE **Buffer\r
+ IN EFI_LOCATE_SEARCH_TYPE SearchType,\r
+ IN EFI_GUID *Protocol OPTIONAL,\r
+ IN VOID *SearchKey OPTIONAL,\r
+ IN OUT UINTN *NumberHandles,\r
+ OUT EFI_HANDLE **Buffer\r
)\r
{\r
- EFI_STATUS Status;\r
- UINTN BufferSize;\r
+ EFI_STATUS Status;\r
+ UINTN BufferSize;\r
\r
if (NumberHandles == NULL) {\r
return EFI_INVALID_PARAMETER;\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- BufferSize = 0;\r
+ BufferSize = 0;\r
*NumberHandles = 0;\r
- *Buffer = NULL;\r
- Status = UnitTestLocateHandle (\r
- SearchType,\r
- Protocol,\r
- SearchKey,\r
- &BufferSize,\r
- *Buffer\r
- );\r
+ *Buffer = NULL;\r
+ Status = UnitTestLocateHandle (\r
+ SearchType,\r
+ Protocol,\r
+ SearchKey,\r
+ &BufferSize,\r
+ *Buffer\r
+ );\r
//\r
// LocateHandleBuffer() returns incorrect status code if SearchType is\r
// invalid.\r
//\r
// Add code to correctly handle expected errors from UnitTestLocateHandle().\r
//\r
- if (EFI_ERROR (Status) && Status != EFI_BUFFER_TOO_SMALL) {\r
+ if (EFI_ERROR (Status) && (Status != EFI_BUFFER_TOO_SMALL)) {\r
if (Status != EFI_INVALID_PARAMETER) {\r
Status = EFI_NOT_FOUND;\r
}\r
+\r
return Status;\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
UnitTestInstallMultipleProtocolInterfaces (\r
- IN OUT EFI_HANDLE *Handle,\r
+ IN OUT EFI_HANDLE *Handle,\r
...\r
)\r
{\r
EFI_STATUS\r
EFIAPI\r
UnitTestUninstallMultipleProtocolInterfaces (\r
- IN EFI_HANDLE Handle,\r
+ IN EFI_HANDLE Handle,\r
...\r
)\r
{\r
- EFI_STATUS Status;\r
- VA_LIST Args;\r
- EFI_GUID *Protocol;\r
- VOID *Interface;\r
- UINTN Index;\r
+ EFI_STATUS Status;\r
+ VA_LIST Args;\r
+ EFI_GUID *Protocol;\r
+ VOID *Interface;\r
+ UINTN Index;\r
\r
VA_START (Args, Handle);\r
for (Index = 0, Status = EFI_SUCCESS; !EFI_ERROR (Status); Index++) {\r
//\r
Status = UnitTestUninstallProtocolInterface (Handle, Protocol, Interface);\r
}\r
+\r
VA_END (Args);\r
\r
//\r
// Reset the va_arg back to the first argument.\r
//\r
VA_START (Args, Handle);\r
- for (; Index > 1; Index--) {\r
- Protocol = VA_ARG(Args, EFI_GUID *);\r
- Interface = VA_ARG(Args, VOID *);\r
+ for ( ; Index > 1; Index--) {\r
+ Protocol = VA_ARG (Args, EFI_GUID *);\r
+ Interface = VA_ARG (Args, VOID *);\r
UnitTestInstallProtocolInterface (&Handle, Protocol, EFI_NATIVE_INTERFACE, Interface);\r
}\r
+\r
VA_END (Args);\r
Status = EFI_INVALID_PARAMETER;\r
}\r
\r
#include "UefiBootServicesTableLibUnitTest.h"\r
\r
-#define EFI_HANDLE_SIGNATURE SIGNATURE_32('h','n','d','l')\r
+#define EFI_HANDLE_SIGNATURE SIGNATURE_32('h','n','d','l')\r
\r
///\r
/// IHANDLE - contains a list of protocol handles\r
///\r
typedef struct {\r
- UINTN Signature;\r
+ UINTN Signature;\r
/// All handles list of IHANDLE\r
- LIST_ENTRY AllHandles;\r
+ LIST_ENTRY AllHandles;\r
/// List of PROTOCOL_INTERFACE's for this handle\r
- LIST_ENTRY Protocols;\r
- UINTN LocateRequest;\r
+ LIST_ENTRY Protocols;\r
+ UINTN LocateRequest;\r
/// The Handle Database Key value when this handle was last created or modified\r
- UINT64 Key;\r
+ UINT64 Key;\r
} IHANDLE;\r
\r
#define ASSERT_IS_HANDLE(a) ASSERT((a)->Signature == EFI_HANDLE_SIGNATURE)\r
\r
-#define PROTOCOL_ENTRY_SIGNATURE SIGNATURE_32('p','r','t','e')\r
+#define PROTOCOL_ENTRY_SIGNATURE SIGNATURE_32('p','r','t','e')\r
\r
///\r
/// PROTOCOL_ENTRY - each different protocol has 1 entry in the protocol\r
/// with a list of registered notifies.\r
///\r
typedef struct {\r
- UINTN Signature;\r
+ UINTN Signature;\r
/// Link Entry inserted to mProtocolDatabase\r
- LIST_ENTRY AllEntries;\r
+ LIST_ENTRY AllEntries;\r
/// ID of the protocol\r
- EFI_GUID ProtocolID;\r
+ EFI_GUID ProtocolID;\r
/// All protocol interfaces\r
- LIST_ENTRY Protocols;\r
+ LIST_ENTRY Protocols;\r
/// Registered notification handlers\r
- LIST_ENTRY Notify;\r
+ LIST_ENTRY Notify;\r
} PROTOCOL_ENTRY;\r
\r
-\r
#define PROTOCOL_INTERFACE_SIGNATURE SIGNATURE_32('p','i','f','c')\r
\r
///\r
/// with a protocol interface structure\r
///\r
typedef struct {\r
- UINTN Signature;\r
+ UINTN Signature;\r
/// Link on IHANDLE.Protocols\r
- LIST_ENTRY Link;\r
+ LIST_ENTRY Link;\r
/// Back pointer\r
- IHANDLE *Handle;\r
+ IHANDLE *Handle;\r
/// Link on PROTOCOL_ENTRY.Protocols\r
- LIST_ENTRY ByProtocol;\r
+ LIST_ENTRY ByProtocol;\r
/// The protocol ID\r
- PROTOCOL_ENTRY *Protocol;\r
+ PROTOCOL_ENTRY *Protocol;\r
/// The interface value\r
- VOID *Interface;\r
+ VOID *Interface;\r
/// OPEN_PROTOCOL_DATA list\r
- LIST_ENTRY OpenList;\r
- UINTN OpenListCount;\r
-\r
+ LIST_ENTRY OpenList;\r
+ UINTN OpenListCount;\r
} PROTOCOL_INTERFACE;\r
\r
#define OPEN_PROTOCOL_DATA_SIGNATURE SIGNATURE_32('p','o','d','l')\r
\r
typedef struct {\r
- UINTN Signature;\r
- ///Link on PROTOCOL_INTERFACE.OpenList\r
- LIST_ENTRY Link;\r
-\r
- EFI_HANDLE AgentHandle;\r
- EFI_HANDLE ControllerHandle;\r
- UINT32 Attributes;\r
- UINT32 OpenCount;\r
+ UINTN Signature;\r
+ /// Link on PROTOCOL_INTERFACE.OpenList\r
+ LIST_ENTRY Link;\r
+\r
+ EFI_HANDLE AgentHandle;\r
+ EFI_HANDLE ControllerHandle;\r
+ UINT32 Attributes;\r
+ UINT32 OpenCount;\r
} OPEN_PROTOCOL_DATA;\r
\r
-\r
-#define PROTOCOL_NOTIFY_SIGNATURE SIGNATURE_32('p','r','t','n')\r
+#define PROTOCOL_NOTIFY_SIGNATURE SIGNATURE_32('p','r','t','n')\r
\r
///\r
/// PROTOCOL_NOTIFY - used for each register notification for a protocol\r
///\r
typedef struct {\r
- UINTN Signature;\r
- PROTOCOL_ENTRY *Protocol;\r
+ UINTN Signature;\r
+ PROTOCOL_ENTRY *Protocol;\r
/// All notifications for this protocol\r
- LIST_ENTRY Link;\r
+ LIST_ENTRY Link;\r
/// Event to notify\r
- EFI_EVENT Event;\r
+ EFI_EVENT Event;\r
/// Last position notified\r
- LIST_ENTRY *Position;\r
+ LIST_ENTRY *Position;\r
} PROTOCOL_NOTIFY;\r
\r
typedef struct {\r
- EFI_GUID *Protocol;\r
- VOID *SearchKey;\r
- LIST_ENTRY *Position;\r
- PROTOCOL_ENTRY *ProtEntry;\r
+ EFI_GUID *Protocol;\r
+ VOID *SearchKey;\r
+ LIST_ENTRY *Position;\r
+ PROTOCOL_ENTRY *ProtEntry;\r
} LOCATE_POSITION;\r
\r
typedef\r
IHANDLE *\r
-(* UNIT_TEST_GET_NEXT) (\r
- IN OUT LOCATE_POSITION *Position,\r
- OUT VOID **Interface\r
+(*UNIT_TEST_GET_NEXT) (\r
+ IN OUT LOCATE_POSITION *Position,\r
+ OUT VOID **Interface\r
);\r
\r
#endif\r
EFI_TPL\r
EFIAPI\r
UnitTestRaiseTpl (\r
- IN EFI_TPL NewTpl\r
+ IN EFI_TPL NewTpl\r
)\r
{\r
return TPL_APPLICATION;\r
VOID\r
EFIAPI\r
UnitTestRestoreTpl (\r
- IN EFI_TPL NewTpl\r
+ IN EFI_TPL NewTpl\r
)\r
{\r
return;\r