MdeModulePkg: Apply uncrustify changes

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737

Apply uncrustify changes to .c/.h files in the MdeModulePkg package

Cc: Andrew Fish <afish@apple.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
This commit is contained in:
Michael Kubacki
2021-12-05 14:54:02 -08:00
committed by mergify[bot]
parent 7c7184e201
commit 1436aea4d5
994 changed files with 107608 additions and 101311 deletions

View File

@ -22,9 +22,9 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL gFvSimpleFileSystemCo
//
// EFI Component Name 2 Protocol
//
GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gFvSimpleFileSystemComponentName2 = {
(EFI_COMPONENT_NAME2_GET_DRIVER_NAME) FvSimpleFileSystemComponentNameGetDriverName,
(EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) FvSimpleFileSystemComponentNameGetControllerName,
GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gFvSimpleFileSystemComponentName2 = {
(EFI_COMPONENT_NAME2_GET_DRIVER_NAME)FvSimpleFileSystemComponentNameGetDriverName,
(EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)FvSimpleFileSystemComponentNameGetControllerName,
"en"
};
@ -32,7 +32,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gFvSimpleFileSystemCo
// Driver name table for FvSimpleFileSystem module.
// It is shared by the implementation of ComponentName & ComponentName2 Protocol.
//
GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mFvSimpleFileSystemDriverNameTable[] = {
GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mFvSimpleFileSystemDriverNameTable[] = {
{
"eng;en",
(CHAR16 *)L"Fv Simple File System Driver"
@ -170,11 +170,11 @@ FvSimpleFileSystemComponentNameGetDriverName (
EFI_STATUS
EFIAPI
FvSimpleFileSystemComponentNameGetControllerName (
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN EFI_HANDLE ControllerHandle,
IN EFI_HANDLE ChildHandle OPTIONAL,
IN CHAR8 *Language,
OUT CHAR16 **ControllerName
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN EFI_HANDLE ControllerHandle,
IN EFI_HANDLE ChildHandle OPTIONAL,
IN CHAR8 *Language,
OUT CHAR16 **ControllerName
)
{
return EFI_UNSUPPORTED;

View File

@ -23,7 +23,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
//
// Template for EFI_FILE_SYSTEM_INFO data structure.
//
EFI_FILE_SYSTEM_INFO mFsInfoTemplate = {
EFI_FILE_SYSTEM_INFO mFsInfoTemplate = {
0, // Populate at runtime
TRUE, // Read-only
0, // Don't know volume size
@ -35,7 +35,7 @@ EFI_FILE_SYSTEM_INFO mFsInfoTemplate = {
//
// Template for EFI_FILE_PROTOCOL data structure.
//
EFI_FILE_PROTOCOL mFileSystemTemplate = {
EFI_FILE_PROTOCOL mFileSystemTemplate = {
EFI_FILE_PROTOCOL_REVISION,
FvSimpleFileSystemOpen,
FvSimpleFileSystemClose,
@ -68,15 +68,15 @@ EFI_FILE_PROTOCOL mFileSystemTemplate = {
**/
EFI_STATUS
FvFsFindExecutableSection (
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN FV_FILESYSTEM_FILE_INFO *FvFileInfo,
IN OUT UINTN *BufferSize,
IN OUT VOID **Buffer
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN FV_FILESYSTEM_FILE_INFO *FvFileInfo,
IN OUT UINTN *BufferSize,
IN OUT VOID **Buffer
)
{
EFI_SECTION_TYPE SectionType;
UINT32 AuthenticationStatus;
EFI_STATUS Status;
EFI_SECTION_TYPE SectionType;
UINT32 AuthenticationStatus;
EFI_STATUS Status;
for (SectionType = EFI_SECTION_PE32; SectionType <= EFI_SECTION_TE; SectionType++) {
Status = FvProtocol->ReadSection (
@ -109,16 +109,16 @@ FvFsFindExecutableSection (
**/
EFI_STATUS
FvFsGetFileSize (
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN OUT FV_FILESYSTEM_FILE_INFO *FvFileInfo
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN OUT FV_FILESYSTEM_FILE_INFO *FvFileInfo
)
{
UINT32 AuthenticationStatus;
EFI_FV_FILETYPE FoundType;
EFI_FV_FILE_ATTRIBUTES Attributes;
EFI_STATUS Status;
UINT8 IgnoredByte;
VOID *IgnoredPtr;
UINT32 AuthenticationStatus;
EFI_FV_FILETYPE FoundType;
EFI_FV_FILE_ATTRIBUTES Attributes;
EFI_STATUS Status;
UINT8 IgnoredByte;
VOID *IgnoredPtr;
//
// To get the size of a section, we pass 0 for BufferSize. But we can't pass
@ -126,14 +126,14 @@ FvFsGetFileSize (
// can't pass NULL for *Buffer, as that will cause the callee to allocate
// a buffer of the sections size.
//
IgnoredPtr = &IgnoredByte;
IgnoredPtr = &IgnoredByte;
FvFileInfo->FileInfo.FileSize = 0;
if (FV_FILETYPE_IS_EXECUTABLE (FvFileInfo->Type)) {
//
// Get the size of the first executable section out of the file.
//
Status = FvFsFindExecutableSection (FvProtocol, FvFileInfo, (UINTN*)&FvFileInfo->FileInfo.FileSize, &IgnoredPtr);
Status = FvFsFindExecutableSection (FvProtocol, FvFileInfo, (UINTN *)&FvFileInfo->FileInfo.FileSize, &IgnoredPtr);
if (Status == EFI_WARN_BUFFER_TOO_SMALL) {
return EFI_SUCCESS;
}
@ -147,12 +147,13 @@ FvFsGetFileSize (
EFI_SECTION_RAW,
0,
&IgnoredPtr,
(UINTN*)&FvFileInfo->FileInfo.FileSize,
(UINTN *)&FvFileInfo->FileInfo.FileSize,
&AuthenticationStatus
);
if (Status == EFI_WARN_BUFFER_TOO_SMALL) {
return EFI_SUCCESS;
}
if (EFI_ERROR (Status)) {
//
// Didn't find a raw section, just return the whole file's size.
@ -161,7 +162,7 @@ FvFsGetFileSize (
FvProtocol,
&FvFileInfo->NameGuid,
NULL,
(UINTN*)&FvFileInfo->FileInfo.FileSize,
(UINTN *)&FvFileInfo->FileInfo.FileSize,
&FoundType,
&Attributes,
&AuthenticationStatus
@ -175,7 +176,7 @@ FvFsGetFileSize (
FvProtocol,
&FvFileInfo->NameGuid,
NULL,
(UINTN*)&FvFileInfo->FileInfo.FileSize,
(UINTN *)&FvFileInfo->FileInfo.FileSize,
&FoundType,
&Attributes,
&AuthenticationStatus
@ -211,16 +212,16 @@ FvFsGetFileSize (
**/
EFI_STATUS
FvFsReadFile (
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN FV_FILESYSTEM_FILE_INFO *FvFileInfo,
IN OUT UINTN *BufferSize,
IN OUT VOID **Buffer
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN FV_FILESYSTEM_FILE_INFO *FvFileInfo,
IN OUT UINTN *BufferSize,
IN OUT VOID **Buffer
)
{
UINT32 AuthenticationStatus;
EFI_FV_FILETYPE FoundType;
EFI_FV_FILE_ATTRIBUTES Attributes;
EFI_STATUS Status;
UINT32 AuthenticationStatus;
EFI_FV_FILETYPE FoundType;
EFI_FV_FILE_ATTRIBUTES Attributes;
EFI_STATUS Status;
if (FV_FILETYPE_IS_EXECUTABLE (FvFileInfo->Type)) {
//
@ -290,12 +291,12 @@ FvFsReadFile (
**/
EFI_STATUS
FvFsGetFileInfo (
IN FV_FILESYSTEM_FILE_INFO *FvFileInfo,
IN OUT UINTN *BufferSize,
OUT EFI_FILE_INFO *FileInfo
IN FV_FILESYSTEM_FILE_INFO *FvFileInfo,
IN OUT UINTN *BufferSize,
OUT EFI_FILE_INFO *FileInfo
)
{
UINTN InfoSize;
UINTN InfoSize;
InfoSize = (UINTN)FvFileInfo->FileInfo.Size;
if (*BufferSize < InfoSize) {
@ -325,19 +326,21 @@ FvFsGetFileInfo (
BOOLEAN
EFIAPI
RemoveLastItemFromPath (
IN OUT CHAR16 *Path
IN OUT CHAR16 *Path
)
{
CHAR16 *Walker;
CHAR16 *LastSlash;
CHAR16 *Walker;
CHAR16 *LastSlash;
//
// get directory name from path... ('chop' off extra)
//
for ( Walker = Path, LastSlash = NULL
; Walker != NULL && *Walker != CHAR_NULL
; Walker++
){
if (*Walker == L'\\' && *(Walker + 1) != CHAR_NULL) {
; Walker != NULL && *Walker != CHAR_NULL
; Walker++
)
{
if ((*Walker == L'\\') && (*(Walker + 1) != CHAR_NULL)) {
LastSlash = Walker + 1;
}
}
@ -366,10 +369,10 @@ RemoveLastItemFromPath (
@return Path in all other instances.
**/
CHAR16*
CHAR16 *
EFIAPI
TrimFilePathToAbsolutePath (
IN CHAR16 *Path
IN CHAR16 *Path
)
{
CHAR16 *TempString;
@ -382,7 +385,7 @@ TrimFilePathToAbsolutePath (
//
// Fix up the '/' vs '\'
//
for (TempString = Path ; (TempString != NULL) && (*TempString != CHAR_NULL); TempString++) {
for (TempString = Path; (TempString != NULL) && (*TempString != CHAR_NULL); TempString++) {
if (*TempString == L'/') {
*TempString = L'\\';
}
@ -392,15 +395,15 @@ TrimFilePathToAbsolutePath (
// Fix up the ..
//
while ((TempString = StrStr (Path, L"\\..\\")) != NULL) {
*TempString = CHAR_NULL;
TempString += 4;
*TempString = CHAR_NULL;
TempString += 4;
RemoveLastItemFromPath (Path);
TempSize = StrSize (TempString);
TempSize = StrSize (TempString);
CopyMem (Path + StrLen (Path), TempString, TempSize);
}
if (((TempString = StrStr (Path, L"\\..")) != NULL) && (*(TempString + 3) == CHAR_NULL)) {
*TempString = CHAR_NULL;
*TempString = CHAR_NULL;
RemoveLastItemFromPath (Path);
}
@ -408,10 +411,10 @@ TrimFilePathToAbsolutePath (
// Fix up the .
//
while ((TempString = StrStr (Path, L"\\.\\")) != NULL) {
*TempString = CHAR_NULL;
TempString += 2;
TempSize = StrSize (TempString);
CopyMem(Path + StrLen (Path), TempString, TempSize);
*TempString = CHAR_NULL;
TempString += 2;
TempSize = StrSize (TempString);
CopyMem (Path + StrLen (Path), TempString, TempSize);
}
if (((TempString = StrStr (Path, L"\\.")) != NULL) && (*(TempString + 2) == CHAR_NULL)) {
@ -419,13 +422,13 @@ TrimFilePathToAbsolutePath (
}
while ((TempString = StrStr (Path, L"\\\\")) != NULL) {
*TempString = CHAR_NULL;
TempString += 1;
TempSize = StrSize(TempString);
CopyMem(Path + StrLen(Path), TempString, TempSize);
*TempString = CHAR_NULL;
TempString += 1;
TempSize = StrSize (TempString);
CopyMem (Path + StrLen (Path), TempString, TempSize);
}
if (((TempString = StrStr(Path, L"\\\\")) != NULL) && (*(TempString + 1) == CHAR_NULL)) {
if (((TempString = StrStr (Path, L"\\\\")) != NULL) && (*(TempString + 1) == CHAR_NULL)) {
*(TempString) = CHAR_NULL;
}
@ -465,35 +468,35 @@ TrimFilePathToAbsolutePath (
EFI_STATUS
EFIAPI
FvSimpleFileSystemOpen (
IN EFI_FILE_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **NewHandle,
IN CHAR16 *FileName,
IN UINT64 OpenMode,
IN UINT64 Attributes
IN EFI_FILE_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **NewHandle,
IN CHAR16 *FileName,
IN UINT64 OpenMode,
IN UINT64 Attributes
)
{
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
FV_FILESYSTEM_FILE *NewFile;
FV_FILESYSTEM_FILE_INFO *FvFileInfo;
LIST_ENTRY *FvFileInfoLink;
EFI_STATUS Status;
UINTN FileNameLength;
UINTN NewFileNameLength;
CHAR16 *FileNameWithExtension;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
FV_FILESYSTEM_FILE *NewFile;
FV_FILESYSTEM_FILE_INFO *FvFileInfo;
LIST_ENTRY *FvFileInfoLink;
EFI_STATUS Status;
UINTN FileNameLength;
UINTN NewFileNameLength;
CHAR16 *FileNameWithExtension;
//
// Check for a valid mode
//
switch (OpenMode) {
case EFI_FILE_MODE_READ:
break;
case EFI_FILE_MODE_READ:
break;
default:
return EFI_WRITE_PROTECTED;
default:
return EFI_WRITE_PROTECTED;
}
File = FVFS_FILE_FROM_FILE_THIS (This);
File = FVFS_FILE_FROM_FILE_THIS (This);
Instance = File->Instance;
FileName = TrimFilePathToAbsolutePath (FileName);
@ -508,13 +511,14 @@ FvSimpleFileSystemOpen (
//
// Check for opening root
//
if (StrCmp (FileName, L".") == 0 || StrCmp (FileName, L"") == 0) {
if ((StrCmp (FileName, L".") == 0) || (StrCmp (FileName, L"") == 0)) {
NewFile = AllocateZeroPool (sizeof (FV_FILESYSTEM_FILE));
if (NewFile == NULL) {
return EFI_OUT_OF_RESOURCES;
}
NewFile->Signature = FVFS_FILE_SIGNATURE;
NewFile->Instance = Instance;
NewFile->Signature = FVFS_FILE_SIGNATURE;
NewFile->Instance = Instance;
NewFile->FvFileInfo = File->FvFileInfo;
CopyMem (&NewFile->FileProtocol, &mFileSystemTemplate, sizeof (mFileSystemTemplate));
InitializeListHead (&NewFile->Link);
@ -535,8 +539,9 @@ FvSimpleFileSystemOpen (
Status = EFI_NOT_FOUND;
FvFileInfo = NULL;
for (FvFileInfoLink = GetFirstNode (&Instance->FileInfoHead);
!IsNull (&Instance->FileInfoHead, FvFileInfoLink);
FvFileInfoLink = GetNextNode (&Instance->FileInfoHead, FvFileInfoLink)) {
!IsNull (&Instance->FileInfoHead, FvFileInfoLink);
FvFileInfoLink = GetNextNode (&Instance->FileInfoHead, FvFileInfoLink))
{
FvFileInfo = FVFS_FILE_INFO_FROM_LINK (FvFileInfoLink);
if (mUnicodeCollation->StriColl (mUnicodeCollation, &FvFileInfo->FileInfo.FileName[0], FileName) == 0) {
Status = EFI_SUCCESS;
@ -555,14 +560,15 @@ FvSimpleFileSystemOpen (
if (mUnicodeCollation->StriColl (mUnicodeCollation, FileName + FileNameLength - 4, L".efi") != 0) {
// No, there was no extension. So add one and search again for the file
// NewFileNameLength = FileNameLength + 1 + 4 = (Number of non-null character) + (file extension) + (a null character)
NewFileNameLength = FileNameLength + 1 + 4;
NewFileNameLength = FileNameLength + 1 + 4;
FileNameWithExtension = AllocatePool (NewFileNameLength * 2);
StrCpyS (FileNameWithExtension, NewFileNameLength, FileName);
StrCatS (FileNameWithExtension, NewFileNameLength, L".EFI");
for (FvFileInfoLink = GetFirstNode (&Instance->FileInfoHead);
!IsNull (&Instance->FileInfoHead, FvFileInfoLink);
FvFileInfoLink = GetNextNode (&Instance->FileInfoHead, FvFileInfoLink)) {
!IsNull (&Instance->FileInfoHead, FvFileInfoLink);
FvFileInfoLink = GetNextNode (&Instance->FileInfoHead, FvFileInfoLink))
{
FvFileInfo = FVFS_FILE_INFO_FROM_LINK (FvFileInfoLink);
if (mUnicodeCollation->StriColl (mUnicodeCollation, &FvFileInfo->FileInfo.FileName[0], FileNameWithExtension) == 0) {
Status = EFI_SUCCESS;
@ -578,8 +584,8 @@ FvSimpleFileSystemOpen (
return EFI_OUT_OF_RESOURCES;
}
NewFile->Signature = FVFS_FILE_SIGNATURE;
NewFile->Instance = Instance;
NewFile->Signature = FVFS_FILE_SIGNATURE;
NewFile->Instance = Instance;
NewFile->FvFileInfo = FvFileInfo;
CopyMem (&NewFile->FileProtocol, &mFileSystemTemplate, sizeof (mFileSystemTemplate));
InitializeListHead (&NewFile->Link);
@ -607,16 +613,17 @@ FvSimpleFileSystemClose (
IN EFI_FILE_PROTOCOL *This
)
{
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
File = FVFS_FILE_FROM_FILE_THIS (This);
File = FVFS_FILE_FROM_FILE_THIS (This);
Instance = File->Instance;
if (File != Instance->Root) {
RemoveEntryList (&File->Link);
FreePool (File);
}
return EFI_SUCCESS;
}
@ -643,19 +650,19 @@ FvSimpleFileSystemClose (
EFI_STATUS
EFIAPI
FvSimpleFileSystemRead (
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
)
{
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
EFI_STATUS Status;
LIST_ENTRY *FvFileInfoLink;
VOID *FileBuffer;
UINTN FileSize;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
EFI_STATUS Status;
LIST_ENTRY *FvFileInfoLink;
VOID *FileBuffer;
UINTN FileSize;
File = FVFS_FILE_FROM_FILE_THIS (This);
File = FVFS_FILE_FROM_FILE_THIS (This);
Instance = File->Instance;
if (File->FvFileInfo == Instance->Root->FvFileInfo) {
@ -679,6 +686,7 @@ FvSimpleFileSystemRead (
File->DirReadNext = FVFS_FILE_INFO_FROM_LINK (FvFileInfoLink);
}
}
return Status;
} else {
//
@ -706,7 +714,7 @@ FvSimpleFileSystemRead (
*BufferSize = (UINTN)(FileSize - File->Position);
}
CopyMem (Buffer, (UINT8*)FileBuffer + File->Position, *BufferSize);
CopyMem (Buffer, (UINT8 *)FileBuffer + File->Position, *BufferSize);
File->Position += *BufferSize;
FreePool (FileBuffer);
@ -738,15 +746,15 @@ FvSimpleFileSystemRead (
EFI_STATUS
EFIAPI
FvSimpleFileSystemWrite (
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
IN VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
IN VOID *Buffer
)
{
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
File = FVFS_FILE_FROM_FILE_THIS (This);
File = FVFS_FILE_FROM_FILE_THIS (This);
Instance = File->Instance;
if (File->FvFileInfo == Instance->Root->FvFileInfo) {
@ -771,14 +779,14 @@ FvSimpleFileSystemWrite (
EFI_STATUS
EFIAPI
FvSimpleFileSystemGetPosition (
IN EFI_FILE_PROTOCOL *This,
OUT UINT64 *Position
IN EFI_FILE_PROTOCOL *This,
OUT UINT64 *Position
)
{
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
File = FVFS_FILE_FROM_FILE_THIS (This);
File = FVFS_FILE_FROM_FILE_THIS (This);
Instance = File->Instance;
if (File->FvFileInfo == Instance->Root->FvFileInfo) {
@ -805,20 +813,21 @@ FvSimpleFileSystemGetPosition (
EFI_STATUS
EFIAPI
FvSimpleFileSystemSetPosition (
IN EFI_FILE_PROTOCOL *This,
IN UINT64 Position
IN EFI_FILE_PROTOCOL *This,
IN UINT64 Position
)
{
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE *File;
File = FVFS_FILE_FROM_FILE_THIS (This);
File = FVFS_FILE_FROM_FILE_THIS (This);
Instance = File->Instance;
if (File->FvFileInfo == Instance->Root->FvFileInfo) {
if (Position != 0) {
return EFI_UNSUPPORTED;
}
//
// Reset directory position to first entry
//
@ -871,10 +880,10 @@ FvSimpleFileSystemFlush (
EFI_STATUS
EFIAPI
FvSimpleFileSystemDelete (
IN EFI_FILE_PROTOCOL *This
IN EFI_FILE_PROTOCOL *This
)
{
EFI_STATUS Status;
EFI_STATUS Status;
Status = FvSimpleFileSystemClose (This);
ASSERT_EFI_ERROR (Status);
@ -905,18 +914,18 @@ FvSimpleFileSystemDelete (
EFI_STATUS
EFIAPI
FvSimpleFileSystemGetInfo (
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
)
{
FV_FILESYSTEM_FILE *File;
EFI_FILE_SYSTEM_INFO *FsInfoOut;
EFI_FILE_SYSTEM_VOLUME_LABEL *FsVolumeLabel;
FV_FILESYSTEM_INSTANCE *Instance;
UINTN Size;
EFI_STATUS Status;
FV_FILESYSTEM_FILE *File;
EFI_FILE_SYSTEM_INFO *FsInfoOut;
EFI_FILE_SYSTEM_VOLUME_LABEL *FsVolumeLabel;
FV_FILESYSTEM_INSTANCE *Instance;
UINTN Size;
EFI_STATUS Status;
File = FVFS_FILE_FROM_FILE_THIS (This);
@ -936,14 +945,15 @@ FvSimpleFileSystemGetInfo (
//
// Cast output buffer for convenience
//
FsInfoOut = (EFI_FILE_SYSTEM_INFO *) Buffer;
FsInfoOut = (EFI_FILE_SYSTEM_INFO *)Buffer;
CopyMem (FsInfoOut, &mFsInfoTemplate, sizeof (EFI_FILE_SYSTEM_INFO));
Status = StrnCpyS ( FsInfoOut->VolumeLabel,
(*BufferSize - OFFSET_OF (EFI_FILE_SYSTEM_INFO, VolumeLabel)) / sizeof (CHAR16),
Instance->VolumeLabel,
StrLen (Instance->VolumeLabel)
);
Status = StrnCpyS (
FsInfoOut->VolumeLabel,
(*BufferSize - OFFSET_OF (EFI_FILE_SYSTEM_INFO, VolumeLabel)) / sizeof (CHAR16),
Instance->VolumeLabel,
StrLen (Instance->VolumeLabel)
);
ASSERT_EFI_ERROR (Status);
FsInfoOut->Size = Size;
return Status;
@ -951,24 +961,25 @@ FvSimpleFileSystemGetInfo (
//
// Return file info
//
return FvFsGetFileInfo (File->FvFileInfo, BufferSize, (EFI_FILE_INFO *) Buffer);
return FvFsGetFileInfo (File->FvFileInfo, BufferSize, (EFI_FILE_INFO *)Buffer);
} else if (CompareGuid (InformationType, &gEfiFileSystemVolumeLabelInfoIdGuid)) {
//
// Return Volume Label
//
Instance = File->Instance;
Size = sizeof (EFI_FILE_SYSTEM_VOLUME_LABEL) + StrSize (Instance->VolumeLabel) - sizeof (CHAR16);;
Size = sizeof (EFI_FILE_SYSTEM_VOLUME_LABEL) + StrSize (Instance->VolumeLabel) - sizeof (CHAR16);
if (*BufferSize < Size) {
*BufferSize = Size;
return EFI_BUFFER_TOO_SMALL;
}
FsVolumeLabel = (EFI_FILE_SYSTEM_VOLUME_LABEL*) Buffer;
Status = StrnCpyS (FsVolumeLabel->VolumeLabel,
(*BufferSize - OFFSET_OF (EFI_FILE_SYSTEM_VOLUME_LABEL, VolumeLabel)) / sizeof (CHAR16),
Instance->VolumeLabel,
StrLen (Instance->VolumeLabel)
);
FsVolumeLabel = (EFI_FILE_SYSTEM_VOLUME_LABEL *)Buffer;
Status = StrnCpyS (
FsVolumeLabel->VolumeLabel,
(*BufferSize - OFFSET_OF (EFI_FILE_SYSTEM_VOLUME_LABEL, VolumeLabel)) / sizeof (CHAR16),
Instance->VolumeLabel,
StrLen (Instance->VolumeLabel)
);
ASSERT_EFI_ERROR (Status);
return Status;
} else {
@ -1013,18 +1024,18 @@ FvSimpleFileSystemGetInfo (
EFI_STATUS
EFIAPI
FvSimpleFileSystemSetInfo (
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN UINTN BufferSize,
IN VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN UINTN BufferSize,
IN VOID *Buffer
)
{
if (CompareGuid (InformationType, &gEfiFileSystemInfoGuid) ||
CompareGuid (InformationType, &gEfiFileInfoGuid) ||
CompareGuid (InformationType, &gEfiFileSystemVolumeLabelInfoIdGuid)) {
CompareGuid (InformationType, &gEfiFileSystemVolumeLabelInfoIdGuid))
{
return EFI_WRITE_PROTECTED;
}
return EFI_UNSUPPORTED;
}

View File

@ -20,21 +20,21 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
#include "FvSimpleFileSystemInternal.h"
EFI_UNICODE_COLLATION_PROTOCOL *mUnicodeCollation = NULL;
EFI_UNICODE_COLLATION_PROTOCOL *mUnicodeCollation = NULL;
//
// A Guid string is 32 hex characters with 4 hyphens and a NULL-terminated char: 37 characters total
//
#define GUID_STRING_SIZE (37 * sizeof (CHAR16))
#define GUID_STRING_SIZE (37 * sizeof (CHAR16))
#define FVFS_VOLUME_LABEL_PREFIX L"Firmware Volume: "
#define FVFS_VOLUME_LABEL_SIZE (sizeof (FVFS_VOLUME_LABEL_PREFIX) + GUID_STRING_SIZE - sizeof (CHAR16))
#define FVFS_FALLBACK_VOLUME_LABEL L"Firmware Volume"
#define FVFS_VOLUME_LABEL_PREFIX L"Firmware Volume: "
#define FVFS_VOLUME_LABEL_SIZE (sizeof (FVFS_VOLUME_LABEL_PREFIX) + GUID_STRING_SIZE - sizeof (CHAR16))
#define FVFS_FALLBACK_VOLUME_LABEL L"Firmware Volume"
//
// Template for EFI_SIMPLE_FILE_SYSTEM_PROTOCOL data structure.
//
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL mSimpleFsTemplate = {
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL mSimpleFsTemplate = {
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_REVISION,
FvSimpleFileSystemOpenVolume
};
@ -42,7 +42,7 @@ EFI_SIMPLE_FILE_SYSTEM_PROTOCOL mSimpleFsTemplate = {
//
// Template for EFI_DRIVER_BINDING_PROTOCOL data structure.
//
EFI_DRIVER_BINDING_PROTOCOL mDriverBinding = {
EFI_DRIVER_BINDING_PROTOCOL mDriverBinding = {
FvSimpleFileSystemDriverSupported,
FvSimpleFileSystemDriverStart,
FvSimpleFileSystemDriverStop,
@ -74,29 +74,29 @@ EFI_DRIVER_BINDING_PROTOCOL mDriverBinding = {
EFI_STATUS
EFIAPI
FvSimpleFileSystemOpenVolume (
IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **RootFile
IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **RootFile
)
{
EFI_STATUS Status;
FV_FILESYSTEM_FILE *Root;
CHAR16 *UiSection;
EFI_GUID NameGuid;
EFI_FV_FILE_ATTRIBUTES Attributes;
UINT32 Authentication;
UINTN Key;
EFI_FV_FILETYPE FileType;
UINTN Size;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE_INFO *FvFileInfo;
EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol;
CHAR16 *Name;
UINTN NameLen;
UINTN NumChars;
UINTN DestMax;
EFI_STATUS Status;
FV_FILESYSTEM_FILE *Root;
CHAR16 *UiSection;
EFI_GUID NameGuid;
EFI_FV_FILE_ATTRIBUTES Attributes;
UINT32 Authentication;
UINTN Key;
EFI_FV_FILETYPE FileType;
UINTN Size;
FV_FILESYSTEM_INSTANCE *Instance;
FV_FILESYSTEM_FILE_INFO *FvFileInfo;
EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol;
CHAR16 *Name;
UINTN NameLen;
UINTN NumChars;
UINTN DestMax;
Instance = FVFS_INSTANCE_FROM_SIMPLE_FS_THIS (This);
Status = EFI_SUCCESS;
Status = EFI_SUCCESS;
if (Instance->Root == NULL) {
//
@ -113,8 +113,9 @@ FvSimpleFileSystemOpenVolume (
CopyMem (&Root->FileProtocol, &mFileSystemTemplate, sizeof (mFileSystemTemplate));
Root->FvFileInfo = AllocateZeroPool (sizeof (FV_FILESYSTEM_FILE_INFO));
if (Root->FvFileInfo == NULL) {
return EFI_OUT_OF_RESOURCES;
return EFI_OUT_OF_RESOURCES;
}
Root->FvFileInfo->FileInfo.Size = sizeof (EFI_FILE_INFO);
Root->FvFileInfo->FileInfo.Attribute = EFI_FILE_DIRECTORY | EFI_FILE_READ_ONLY;
@ -149,15 +150,15 @@ FvSimpleFileSystemOpenVolume (
// its NameGuid.
//
UiSection = NULL;
Status = FvProtocol->ReadSection (
FvProtocol,
&NameGuid,
EFI_SECTION_USER_INTERFACE,
0,
(VOID **)&UiSection,
&Size,
&Authentication
);
Status = FvProtocol->ReadSection (
FvProtocol,
&NameGuid,
EFI_SECTION_USER_INTERFACE,
0,
(VOID **)&UiSection,
&Size,
&Authentication
);
if (!EFI_ERROR (Status)) {
Name = UiSection;
} else {
@ -165,6 +166,7 @@ FvSimpleFileSystemOpenVolume (
if (Name == NULL) {
return EFI_OUT_OF_RESOURCES;
}
NumChars = UnicodeSPrint (Name, GUID_STRING_SIZE, L"%g", &NameGuid);
ASSERT ((NumChars + 1) * sizeof (CHAR16) == GUID_STRING_SIZE);
}
@ -196,12 +198,12 @@ FvSimpleFileSystemOpenVolume (
ASSERT_EFI_ERROR (Status);
if (FV_FILETYPE_IS_EXECUTABLE (FileType)) {
Status = StrnCatS (&FvFileInfo->FileInfo.FileName[0], DestMax, L".efi", StrLen (L".efi"));
Status = StrnCatS (&FvFileInfo->FileInfo.FileName[0], DestMax, L".efi", StrLen (L".efi"));
ASSERT_EFI_ERROR (Status);
}
FvFileInfo->FileInfo.Size = sizeof (EFI_FILE_INFO) + NameLen - sizeof (CHAR16);
Status = FvFsGetFileSize (FvProtocol, FvFileInfo);
FvFileInfo->FileInfo.Size = sizeof (EFI_FILE_INFO) + NameLen - sizeof (CHAR16);
Status = FvFsGetFileSize (FvProtocol, FvFileInfo);
ASSERT_EFI_ERROR (Status);
FvFileInfo->FileInfo.PhysicalSize = FvFileInfo->FileInfo.FileSize;
FvFileInfo->FileInfo.Attribute = EFI_FILE_READ_ONLY;
@ -209,7 +211,6 @@ FvSimpleFileSystemOpenVolume (
InsertHeadList (&Instance->FileInfoHead, &FvFileInfo->Link);
FreePool (Name);
} while (TRUE);
if (Status == EFI_NOT_FOUND) {
@ -243,10 +244,10 @@ FvSimpleFileSystemOpenVolume (
**/
EFI_STATUS
InitializeUnicodeCollationSupportWorker (
IN EFI_HANDLE AgentHandle,
IN EFI_GUID *ProtocolGuid,
IN CONST CHAR16 *VariableName,
IN CONST CHAR8 *DefaultLanguage
IN EFI_HANDLE AgentHandle,
IN EFI_GUID *ProtocolGuid,
IN CONST CHAR16 *VariableName,
IN CONST CHAR8 *DefaultLanguage
)
{
EFI_STATUS ReturnStatus;
@ -270,8 +271,8 @@ InitializeUnicodeCollationSupportWorker (
return Status;
}
Iso639Language = (BOOLEAN) (ProtocolGuid == &gEfiUnicodeCollationProtocolGuid);
GetEfiGlobalVariable2 (VariableName, (VOID**) &Language, NULL);
Iso639Language = (BOOLEAN)(ProtocolGuid == &gEfiUnicodeCollationProtocolGuid);
GetEfiGlobalVariable2 (VariableName, (VOID **)&Language, NULL);
ReturnStatus = EFI_UNSUPPORTED;
for (Index = 0; Index < NumHandles; Index++) {
@ -281,7 +282,7 @@ InitializeUnicodeCollationSupportWorker (
Status = gBS->OpenProtocol (
Handles[Index],
ProtocolGuid,
(VOID **) &Uci,
(VOID **)&Uci,
AgentHandle,
NULL,
EFI_OPEN_PROTOCOL_GET_PROTOCOL
@ -304,7 +305,7 @@ InitializeUnicodeCollationSupportWorker (
if (BestLanguage != NULL) {
FreePool (BestLanguage);
mUnicodeCollation = Uci;
ReturnStatus = EFI_SUCCESS;
ReturnStatus = EFI_SUCCESS;
break;
}
}
@ -333,11 +334,10 @@ InitializeUnicodeCollationSupportWorker (
**/
EFI_STATUS
InitializeUnicodeCollationSupport (
IN EFI_HANDLE AgentHandle
IN EFI_HANDLE AgentHandle
)
{
EFI_STATUS Status;
EFI_STATUS Status;
Status = EFI_UNSUPPORTED;
@ -348,7 +348,7 @@ InitializeUnicodeCollationSupport (
AgentHandle,
&gEfiUnicodeCollation2ProtocolGuid,
L"PlatformLang",
(CONST CHAR8 *) PcdGetPtr (PcdUefiVariableDefaultPlatformLang)
(CONST CHAR8 *)PcdGetPtr (PcdUefiVariableDefaultPlatformLang)
);
//
// If the attempt to use Unicode Collation 2 Protocol fails, then we fall back
@ -359,7 +359,7 @@ InitializeUnicodeCollationSupport (
AgentHandle,
&gEfiUnicodeCollationProtocolGuid,
L"Lang",
(CONST CHAR8 *) PcdGetPtr (PcdUefiVariableDefaultLang)
(CONST CHAR8 *)PcdGetPtr (PcdUefiVariableDefaultLang)
);
}
@ -419,12 +419,12 @@ FvSimpleFileSystemDriverStart (
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath OPTIONAL
)
{
EFI_STATUS Status;
EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol;
FV_FILESYSTEM_INSTANCE *Instance;
EFI_DEVICE_PATH_PROTOCOL *FvDevicePath;
EFI_GUID *FvGuid;
UINTN NumChars;
EFI_STATUS Status;
EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol;
FV_FILESYSTEM_INSTANCE *Instance;
EFI_DEVICE_PATH_PROTOCOL *FvDevicePath;
EFI_GUID *FvGuid;
UINTN NumChars;
Status = InitializeUnicodeCollationSupport (DriverBinding->DriverBindingHandle);
if (EFI_ERROR (Status)) {
@ -437,7 +437,7 @@ FvSimpleFileSystemDriverStart (
Status = gBS->OpenProtocol (
ControllerHandle,
&gEfiFirmwareVolume2ProtocolGuid,
(VOID **) &FvProtocol,
(VOID **)&FvProtocol,
gImageHandle,
ControllerHandle,
EFI_OPEN_PROTOCOL_BY_DRIVER
@ -452,14 +452,14 @@ FvSimpleFileSystemDriverStart (
Instance = AllocateZeroPool (sizeof (FV_FILESYSTEM_INSTANCE));
ASSERT (Instance != NULL);
Instance->Root = NULL;
Instance->Root = NULL;
Instance->FvProtocol = FvProtocol;
Instance->Signature = FVFS_INSTANCE_SIGNATURE;
Instance->Signature = FVFS_INSTANCE_SIGNATURE;
InitializeListHead (&Instance->FileInfoHead);
InitializeListHead (&Instance->FileHead);
CopyMem (&Instance->SimpleFs, &mSimpleFsTemplate, sizeof (mSimpleFsTemplate));
Status = gBS->InstallProtocolInterface(
Status = gBS->InstallProtocolInterface (
&ControllerHandle,
&gEfiSimpleFileSystemProtocolGuid,
EFI_NATIVE_INTERFACE,
@ -472,21 +472,22 @@ FvSimpleFileSystemDriverStart (
// Get the device path to find the FV's GUID
//
Instance->VolumeLabel = NULL;
Status = gBS->OpenProtocol (
ControllerHandle,
&gEfiDevicePathProtocolGuid,
(VOID **) &FvDevicePath,
gImageHandle,
ControllerHandle,
EFI_OPEN_PROTOCOL_GET_PROTOCOL
);
Status = gBS->OpenProtocol (
ControllerHandle,
&gEfiDevicePathProtocolGuid,
(VOID **)&FvDevicePath,
gImageHandle,
ControllerHandle,
EFI_OPEN_PROTOCOL_GET_PROTOCOL
);
if (!EFI_ERROR (Status)) {
//
// Iterate over device path until we find a firmware volume node
//
while (!IsDevicePathEndType (FvDevicePath)) {
if (DevicePathType (FvDevicePath) == MEDIA_DEVICE_PATH &&
DevicePathSubType (FvDevicePath) == MEDIA_PIWG_FW_VOL_DP) {
if ((DevicePathType (FvDevicePath) == MEDIA_DEVICE_PATH) &&
(DevicePathSubType (FvDevicePath) == MEDIA_PIWG_FW_VOL_DP))
{
//
// Allocate the volume label
//
@ -498,7 +499,7 @@ FvSimpleFileSystemDriverStart (
//
// Extract the FV's guid
//
FvGuid = &((MEDIA_FW_VOL_DEVICE_PATH *) FvDevicePath)->FvName;
FvGuid = &((MEDIA_FW_VOL_DEVICE_PATH *)FvDevicePath)->FvName;
//
// Build the volume label string
//
@ -510,11 +511,14 @@ FvSimpleFileSystemDriverStart (
);
ASSERT ((NumChars + 1) * sizeof (CHAR16) == FVFS_VOLUME_LABEL_SIZE);
}
break;
}
FvDevicePath = NextDevicePathNode (FvDevicePath);
}
}
//
// If we didn't decide on a volume label, set a fallback one
//
@ -545,10 +549,10 @@ FvSimpleFileSystemDriverStart (
EFI_STATUS
EFIAPI
FvSimpleFileSystemDriverStop (
IN EFI_DRIVER_BINDING_PROTOCOL *DriverBinding,
IN EFI_HANDLE ControllerHandle,
IN UINTN NumberOfChildren,
IN EFI_HANDLE *ChildHandleBuffer OPTIONAL
IN EFI_DRIVER_BINDING_PROTOCOL *DriverBinding,
IN EFI_HANDLE ControllerHandle,
IN UINTN NumberOfChildren,
IN EFI_HANDLE *ChildHandleBuffer OPTIONAL
)
{
EFI_STATUS Status;
@ -561,7 +565,7 @@ FvSimpleFileSystemDriverStop (
Status = gBS->OpenProtocol (
ControllerHandle,
&gEfiSimpleFileSystemProtocolGuid,
(VOID **) &SimpleFile,
(VOID **)&SimpleFile,
DriverBinding->DriverBindingHandle,
ControllerHandle,
EFI_OPEN_PROTOCOL_GET_PROTOCOL
@ -583,11 +587,11 @@ FvSimpleFileSystemDriverStop (
// Close and uninstall protocols.
//
Status = gBS->CloseProtocol (
ControllerHandle,
&gEfiFirmwareVolume2ProtocolGuid,
gImageHandle,
ControllerHandle
);
ControllerHandle,
&gEfiFirmwareVolume2ProtocolGuid,
gImageHandle,
ControllerHandle
);
ASSERT_EFI_ERROR (Status);
Status = gBS->UninstallProtocolInterface (
@ -604,9 +608,10 @@ FvSimpleFileSystemDriverStop (
//
// Free the Subtask list.
//
for(Entry = Instance->FileInfoHead.ForwardLink;
Entry != (&Instance->FileInfoHead);
) {
for (Entry = Instance->FileInfoHead.ForwardLink;
Entry != (&Instance->FileInfoHead);
)
{
DelEntry = Entry;
Entry = Entry->ForwardLink;
FvFileInfo = FVFS_FILE_INFO_FROM_LINK (DelEntry);
@ -623,6 +628,7 @@ FvSimpleFileSystemDriverStop (
if (Instance->Root->FvFileInfo != NULL) {
FreePool (Instance->Root->FvFileInfo);
}
FreePool (Instance->Root);
}
@ -632,6 +638,7 @@ FvSimpleFileSystemDriverStop (
if (Instance->VolumeLabel != NULL) {
FreePool (Instance->VolumeLabel);
}
FreePool (Instance);
return EFI_SUCCESS;
@ -650,11 +657,11 @@ FvSimpleFileSystemDriverStop (
EFI_STATUS
EFIAPI
FvSimpleFileSystemEntryPoint (
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{
EFI_STATUS Status;
EFI_STATUS Status;
//
// Install driver model protocol(s).

View File

@ -41,14 +41,14 @@ typedef struct _FV_FILESYSTEM_INSTANCE FV_FILESYSTEM_INSTANCE;
// these structs per FV.
//
struct _FV_FILESYSTEM_INSTANCE {
UINT32 Signature;
LIST_ENTRY FileInfoHead;
LIST_ENTRY FileHead;
EFI_DRIVER_BINDING_PROTOCOL *DriverBinding;
EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol;
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL SimpleFs;
FV_FILESYSTEM_FILE *Root;
CHAR16 *VolumeLabel;
UINT32 Signature;
LIST_ENTRY FileInfoHead;
LIST_ENTRY FileHead;
EFI_DRIVER_BINDING_PROTOCOL *DriverBinding;
EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol;
EFI_SIMPLE_FILE_SYSTEM_PROTOCOL SimpleFs;
FV_FILESYSTEM_FILE *Root;
CHAR16 *VolumeLabel;
};
//
@ -57,59 +57,58 @@ struct _FV_FILESYSTEM_INSTANCE {
// be created once for each FV.
//
struct _FV_FILESYSTEM_FILE {
UINT32 Signature;
LIST_ENTRY Link;
FV_FILESYSTEM_FILE_INFO *DirReadNext;
FV_FILESYSTEM_INSTANCE *Instance;
EFI_FILE_PROTOCOL FileProtocol;
FV_FILESYSTEM_FILE_INFO *FvFileInfo;
UINT64 Position;
UINT32 Signature;
LIST_ENTRY Link;
FV_FILESYSTEM_FILE_INFO *DirReadNext;
FV_FILESYSTEM_INSTANCE *Instance;
EFI_FILE_PROTOCOL FileProtocol;
FV_FILESYSTEM_FILE_INFO *FvFileInfo;
UINT64 Position;
};
//
// Struct representing the info of a file.
//
struct _FV_FILESYSTEM_FILE_INFO {
UINT32 Signature;
LIST_ENTRY Link;
EFI_GUID NameGuid;
EFI_FV_FILETYPE Type;
EFI_FILE_INFO FileInfo;
UINT32 Signature;
LIST_ENTRY Link;
EFI_GUID NameGuid;
EFI_FV_FILETYPE Type;
EFI_FILE_INFO FileInfo;
};
#define FVFS_FILE_SIGNATURE SIGNATURE_32 ('f', 'v', 'f', 'i')
#define FVFS_FILE_INFO_SIGNATURE SIGNATURE_32 ('f', 'v', 'i', 'n')
#define FVFS_INSTANCE_SIGNATURE SIGNATURE_32 ('f', 'v', 'f', 's')
#define FVFS_FILE_SIGNATURE SIGNATURE_32 ('f', 'v', 'f', 'i')
#define FVFS_FILE_INFO_SIGNATURE SIGNATURE_32 ('f', 'v', 'i', 'n')
#define FVFS_INSTANCE_SIGNATURE SIGNATURE_32 ('f', 'v', 'f', 's')
#define FVFS_INSTANCE_FROM_SIMPLE_FS_THIS(This) CR ( \
#define FVFS_INSTANCE_FROM_SIMPLE_FS_THIS(This) CR ( \
This, \
FV_FILESYSTEM_INSTANCE, \
SimpleFs, \
FVFS_INSTANCE_SIGNATURE \
)
#define FVFS_FILE_FROM_FILE_THIS(This) CR ( \
#define FVFS_FILE_FROM_FILE_THIS(This) CR ( \
This, \
FV_FILESYSTEM_FILE, \
FileProtocol, \
FVFS_FILE_SIGNATURE \
)
#define FVFS_FILE_INFO_FROM_LINK(This) CR ( \
#define FVFS_FILE_INFO_FROM_LINK(This) CR ( \
This, \
FV_FILESYSTEM_FILE_INFO, \
Link, \
FVFS_FILE_INFO_SIGNATURE \
)
#define FVFS_FILE_FROM_LINK(FileLink) CR (FileLink, FV_FILESYSTEM_FILE, Link, FVFS_FILE_SIGNATURE)
#define FVFS_FILE_FROM_LINK(FileLink) CR (FileLink, FV_FILESYSTEM_FILE, Link, FVFS_FILE_SIGNATURE)
#define FVFS_GET_FIRST_FILE(Instance) FVFS_FILE_FROM_LINK (GetFirstNode (&Instance->FileHead))
#define FVFS_GET_FIRST_FILE(Instance) FVFS_FILE_FROM_LINK (GetFirstNode (&Instance->FileHead))
#define FVFS_GET_FIRST_FILE_INFO(Instance) FVFS_FILE_INFO_FROM_LINK (GetFirstNode (&Instance->FileInfoHead))
#define FVFS_GET_FIRST_FILE_INFO(Instance) FVFS_FILE_INFO_FROM_LINK (GetFirstNode (&Instance->FileInfoHead))
#define FV_FILETYPE_IS_EXECUTABLE(Type) ((Type) == EFI_FV_FILETYPE_PEIM || \
#define FV_FILETYPE_IS_EXECUTABLE(Type) ((Type) == EFI_FV_FILETYPE_PEIM ||\
(Type) == EFI_FV_FILETYPE_DRIVER || \
(Type) == EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER || \
(Type) == EFI_FV_FILETYPE_APPLICATION)
@ -137,8 +136,8 @@ struct _FV_FILESYSTEM_FILE_INFO {
EFI_STATUS
EFIAPI
FvSimpleFileSystemOpenVolume (
IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **RootFile
IN EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **RootFile
);
/**
@ -201,10 +200,10 @@ FvSimpleFileSystemDriverStart (
EFI_STATUS
EFIAPI
FvSimpleFileSystemDriverStop (
IN EFI_DRIVER_BINDING_PROTOCOL *DriverBinding,
IN EFI_HANDLE ControllerHandle,
IN UINTN NumberOfChildren,
IN EFI_HANDLE *ChildHandleBuffer OPTIONAL
IN EFI_DRIVER_BINDING_PROTOCOL *DriverBinding,
IN EFI_HANDLE ControllerHandle,
IN UINTN NumberOfChildren,
IN EFI_HANDLE *ChildHandleBuffer OPTIONAL
);
/**
@ -240,11 +239,11 @@ FvSimpleFileSystemDriverStop (
EFI_STATUS
EFIAPI
FvSimpleFileSystemOpen (
IN EFI_FILE_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **NewHandle,
IN CHAR16 *FileName,
IN UINT64 OpenMode,
IN UINT64 Attributes
IN EFI_FILE_PROTOCOL *This,
OUT EFI_FILE_PROTOCOL **NewHandle,
IN CHAR16 *FileName,
IN UINT64 OpenMode,
IN UINT64 Attributes
);
/**
@ -285,9 +284,9 @@ FvSimpleFileSystemClose (
EFI_STATUS
EFIAPI
FvSimpleFileSystemRead (
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
);
/**
@ -313,9 +312,9 @@ FvSimpleFileSystemRead (
EFI_STATUS
EFIAPI
FvSimpleFileSystemWrite (
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
IN VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN OUT UINTN *BufferSize,
IN VOID *Buffer
);
/**
@ -333,8 +332,8 @@ FvSimpleFileSystemWrite (
EFI_STATUS
EFIAPI
FvSimpleFileSystemGetPosition (
IN EFI_FILE_PROTOCOL *This,
OUT UINT64 *Position
IN EFI_FILE_PROTOCOL *This,
OUT UINT64 *Position
);
/**
@ -353,8 +352,8 @@ FvSimpleFileSystemGetPosition (
EFI_STATUS
EFIAPI
FvSimpleFileSystemSetPosition (
IN EFI_FILE_PROTOCOL *This,
IN UINT64 Position
IN EFI_FILE_PROTOCOL *This,
IN UINT64 Position
);
/**
@ -391,7 +390,7 @@ FvSimpleFileSystemFlush (
EFI_STATUS
EFIAPI
FvSimpleFileSystemDelete (
IN EFI_FILE_PROTOCOL *This
IN EFI_FILE_PROTOCOL *This
);
/**
@ -417,10 +416,10 @@ FvSimpleFileSystemDelete (
EFI_STATUS
EFIAPI
FvSimpleFileSystemGetInfo (
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN OUT UINTN *BufferSize,
OUT VOID *Buffer
);
/**
@ -460,10 +459,10 @@ FvSimpleFileSystemGetInfo (
EFI_STATUS
EFIAPI
FvSimpleFileSystemSetInfo (
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN UINTN BufferSize,
IN VOID *Buffer
IN EFI_FILE_PROTOCOL *This,
IN EFI_GUID *InformationType,
IN UINTN BufferSize,
IN VOID *Buffer
);
/**
@ -479,8 +478,8 @@ FvSimpleFileSystemSetInfo (
**/
EFI_STATUS
FvFsGetFileSize (
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN OUT FV_FILESYSTEM_FILE_INFO *FvFileInfo
IN EFI_FIRMWARE_VOLUME2_PROTOCOL *FvProtocol,
IN OUT FV_FILESYSTEM_FILE_INFO *FvFileInfo
);
/**
@ -601,11 +600,11 @@ FvSimpleFileSystemComponentNameGetDriverName (
EFI_STATUS
EFIAPI
FvSimpleFileSystemComponentNameGetControllerName (
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN EFI_HANDLE ControllerHandle,
IN EFI_HANDLE ChildHandle OPTIONAL,
IN CHAR8 *Language,
OUT CHAR16 **ControllerName
IN EFI_COMPONENT_NAME_PROTOCOL *This,
IN EFI_HANDLE ControllerHandle,
IN EFI_HANDLE ChildHandle OPTIONAL,
IN CHAR8 *Language,
OUT CHAR16 **ControllerName
);
extern EFI_UNICODE_COLLATION_PROTOCOL *mUnicodeCollation;