summaryrefslogtreecommitdiffstats
path: root/EmbeddedPkg/Include/Library/EfiFileLib.h
diff options
context:
space:
mode:
Diffstat (limited to 'EmbeddedPkg/Include/Library/EfiFileLib.h')
-rw-r--r--EmbeddedPkg/Include/Library/EfiFileLib.h122
1 files changed, 55 insertions, 67 deletions
diff --git a/EmbeddedPkg/Include/Library/EfiFileLib.h b/EmbeddedPkg/Include/Library/EfiFileLib.h
index 0544b6e200..bae19ec78a 100644
--- a/EmbeddedPkg/Include/Library/EfiFileLib.h
+++ b/EmbeddedPkg/Include/Library/EfiFileLib.h
@@ -42,7 +42,7 @@
#include <Guid/FileInfo.h>
#include <Guid/FileSystemInfo.h>
-#define MAX_PATHNAME 0x200
+#define MAX_PATHNAME 0x200
/// Type of the file that has been opened
typedef enum {
@@ -55,52 +55,49 @@ typedef enum {
EfiOpenMaxValue
} EFI_OPEN_FILE_TYPE;
-
/// Public information about the open file
typedef struct {
- UINTN Version; // Common information
- EFI_OPEN_FILE_TYPE Type;
- EFI_DEVICE_PATH_PROTOCOL *DevicePath;
- EFI_STATUS LastError;
- EFI_HANDLE EfiHandle;
- CHAR8 *DeviceName;
- CHAR8 *FileName;
-
- UINT64 CurrentPosition; // Information for Seek
- UINT64 MaxPosition;
+ UINTN Version; // Common information
+ EFI_OPEN_FILE_TYPE Type;
+ EFI_DEVICE_PATH_PROTOCOL *DevicePath;
+ EFI_STATUS LastError;
+ EFI_HANDLE EfiHandle;
+ CHAR8 *DeviceName;
+ CHAR8 *FileName;
- UINTN BaseOffset; // Base offset for hexdump command
+ UINT64 CurrentPosition; // Information for Seek
+ UINT64 MaxPosition;
- UINTN Size; // Valid for all types other than l#:
- UINT8 *Buffer; // Information valid for A#:
+ UINTN BaseOffset; // Base offset for hexdump command
- EFI_FIRMWARE_VOLUME2_PROTOCOL *Fv; // Information valid for Fv#:
- EFI_GUID FvNameGuid;
- EFI_SECTION_TYPE FvSectionType;
- EFI_FV_FILETYPE FvType;
- EFI_FV_FILE_ATTRIBUTES FvAttributes;
+ UINTN Size; // Valid for all types other than l#:
+ UINT8 *Buffer; // Information valid for A#:
- EFI_PHYSICAL_ADDRESS FvStart;
- UINTN FvSize;
- UINTN FvHeaderSize;
+ EFI_FIRMWARE_VOLUME2_PROTOCOL *Fv; // Information valid for Fv#:
+ EFI_GUID FvNameGuid;
+ EFI_SECTION_TYPE FvSectionType;
+ EFI_FV_FILETYPE FvType;
+ EFI_FV_FILE_ATTRIBUTES FvAttributes;
- EFI_FILE *FsFileHandle; // Information valid for Fs#:
- EFI_FILE_SYSTEM_INFO *FsInfo;
- EFI_FILE_INFO *FsFileInfo;
- EFI_BLOCK_IO_MEDIA *FsBlockIoMedia; // Information valid for Fs#: or B#:
- EFI_BLOCK_IO_PROTOCOL *FsBlockIo; // Information valid for Fs#: or B#:
+ EFI_PHYSICAL_ADDRESS FvStart;
+ UINTN FvSize;
+ UINTN FvHeaderSize;
- UINTN DiskOffset; // Information valid for B#:
+ EFI_FILE *FsFileHandle; // Information valid for Fs#:
+ EFI_FILE_SYSTEM_INFO *FsInfo;
+ EFI_FILE_INFO *FsFileInfo;
+ EFI_BLOCK_IO_MEDIA *FsBlockIoMedia; // Information valid for Fs#: or B#:
+ EFI_BLOCK_IO_PROTOCOL *FsBlockIo; // Information valid for Fs#: or B#:
- EFI_LOAD_FILE_PROTOCOL *LoadFile; // Information valid for l#:
+ UINTN DiskOffset; // Information valid for B#:
- EFI_IP_ADDRESS ServerIp; // Information valid for t:
- BOOLEAN IsDirty;
- BOOLEAN IsBufferValid;
+ EFI_LOAD_FILE_PROTOCOL *LoadFile; // Information valid for l#:
+ EFI_IP_ADDRESS ServerIp; // Information valid for t:
+ BOOLEAN IsDirty;
+ BOOLEAN IsBufferValid;
} EFI_OPEN_FILE;
-
/// Type of Seek to perform
typedef enum {
EfiSeekStart,
@@ -109,7 +106,6 @@ typedef enum {
EfiSeekMax
} EFI_SEEK_TYPE;
-
/**
Open a device named by PathName. The PathName includes a device name and
path separated by a :. See file header for more details on the PathName
@@ -131,15 +127,15 @@ typedef enum {
**/
EFI_OPEN_FILE *
EfiOpen (
- IN CHAR8 *PathName,
- IN CONST UINT64 OpenMode,
- IN CONST EFI_SECTION_TYPE SectionType
+ IN CHAR8 *PathName,
+ IN CONST UINT64 OpenMode,
+ IN CONST EFI_SECTION_TYPE SectionType
);
EFI_STATUS
EfiCopyFile (
- IN CHAR8 *DestinationFile,
- IN CHAR8 *SourceFile
+ IN CHAR8 *DestinationFile,
+ IN CHAR8 *SourceFile
);
/**
@@ -154,11 +150,10 @@ EfiCopyFile (
**/
EFI_OPEN_FILE *
EfiDeviceOpenByType (
- IN EFI_OPEN_FILE_TYPE DeviceType,
- IN UINTN Index
+ IN EFI_OPEN_FILE_TYPE DeviceType,
+ IN UINTN Index
);
-
/**
Close a file handle opened by EfiOpen() and free all resources allocated by
EfiOpen().
@@ -171,10 +166,9 @@ EfiDeviceOpenByType (
**/
EFI_STATUS
EfiClose (
- IN EFI_OPEN_FILE *Stream
+ IN EFI_OPEN_FILE *Stream
);
-
/**
Return the size of the file represented by Stream. Also return the current
Seek position. Opening a file will enable a valid file size to be returned.
@@ -187,11 +181,10 @@ EfiClose (
**/
UINTN
EfiTell (
- IN EFI_OPEN_FILE *Stream,
- OUT UINT64 *CurrentPosition OPTIONAL
+ IN EFI_OPEN_FILE *Stream,
+ OUT UINT64 *CurrentPosition OPTIONAL
);
-
/**
Seek to the Offset location in the file. LoadFile and FV device types do
not support EfiSeek(). It is not possible to grow the file size using
@@ -215,12 +208,11 @@ EfiTell (
**/
EFI_STATUS
EfiSeek (
- IN EFI_OPEN_FILE *Stream,
- IN EFI_LBA Offset,
- IN EFI_SEEK_TYPE SeekType
+ IN EFI_OPEN_FILE *Stream,
+ IN EFI_LBA Offset,
+ IN EFI_SEEK_TYPE SeekType
);
-
/**
Read BufferSize bytes from the current location in the file. For load file
and FV case you must read the entire file.
@@ -239,12 +231,11 @@ EfiSeek (
**/
EFI_STATUS
EfiRead (
- IN EFI_OPEN_FILE *Stream,
- OUT VOID *Buffer,
- OUT UINTN *BufferSize
+ IN EFI_OPEN_FILE *Stream,
+ OUT VOID *Buffer,
+ OUT UINTN *BufferSize
);
-
/**
Read the entire file into a buffer. This routine allocates the buffer and
returns it to the user full of the read data.
@@ -266,12 +257,11 @@ EfiRead (
**/
EFI_STATUS
EfiReadAllocatePool (
- IN EFI_OPEN_FILE *Stream,
- OUT VOID **Buffer,
- OUT UINTN *BufferSize
+ IN EFI_OPEN_FILE *Stream,
+ OUT VOID **Buffer,
+ OUT UINTN *BufferSize
);
-
/**
Write data back to the file.
@@ -289,12 +279,11 @@ EfiReadAllocatePool (
**/
EFI_STATUS
EfiWrite (
- IN EFI_OPEN_FILE *Stream,
- OUT VOID *Buffer,
- OUT UINTN *BufferSize
+ IN EFI_OPEN_FILE *Stream,
+ OUT VOID *Buffer,
+ OUT UINTN *BufferSize
);
-
/**
Return the number of devices of the current type active in the system
@@ -305,10 +294,9 @@ EfiWrite (
**/
UINTN
EfiGetDeviceCounts (
- IN EFI_OPEN_FILE_TYPE Type
+ IN EFI_OPEN_FILE_TYPE Type
);
-
/**
Set the Current Working Directory (CWD). If a call is made to EfiOpen () and
the path does not contain a device name, The CWD is prepended to the path.
@@ -322,7 +310,7 @@ EfiGetDeviceCounts (
**/
EFI_STATUS
EfiSetCwd (
- IN CHAR8 *Cwd
+ IN CHAR8 *Cwd
);
/**