iPXE
Data Structures | Macros | Typedefs | Functions | Variables
LoadFile.h File Reference

Load File protocol as defined in the UEFI 2.0 specification. More...

Go to the source code of this file.

Data Structures

struct  _EFI_LOAD_FILE_PROTOCOL
 The EFI_LOAD_FILE_PROTOCOL is a simple protocol used to obtain files from arbitrary devices. More...
 

Macros

#define EFI_LOAD_FILE_PROTOCOL_GUID
 
#define LOAD_FILE_PROTOCOL   EFI_LOAD_FILE_PROTOCOL_GUID
 Protocol Guid defined by EFI1.1. More...
 

Typedefs

typedef struct _EFI_LOAD_FILE_PROTOCOL EFI_LOAD_FILE_PROTOCOL
 
typedef EFI_LOAD_FILE_PROTOCOL EFI_LOAD_FILE_INTERFACE
 Backward-compatible with EFI1.1. More...
 
typedef EFI_STATUS(EFIAPIEFI_LOAD_FILE) (IN EFI_LOAD_FILE_PROTOCOL *This, IN EFI_DEVICE_PATH_PROTOCOL *FilePath, IN BOOLEAN BootPolicy, IN OUT UINTN *BufferSize, IN VOID *Buffer OPTIONAL)
 Causes the driver to load a specified file. More...
 

Functions

 FILE_LICENCE (BSD2_PATENT)
 

Variables

EFI_GUID gEfiLoadFileProtocolGuid
 

Detailed Description

Load File protocol as defined in the UEFI 2.0 specification.

The load file protocol exists to supports the addition of new boot devices, and to support booting from devices that do not map well to file system. Network boot is done via a LoadFile protocol.

UEFI 2.0 can boot from any device that produces a LoadFile protocol.

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file LoadFile.h.

Macro Definition Documentation

◆ EFI_LOAD_FILE_PROTOCOL_GUID

#define EFI_LOAD_FILE_PROTOCOL_GUID
Value:
{ \
0x56EC3091, 0x954C, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B } \
}

Definition at line 20 of file LoadFile.h.

◆ LOAD_FILE_PROTOCOL

#define LOAD_FILE_PROTOCOL   EFI_LOAD_FILE_PROTOCOL_GUID

Protocol Guid defined by EFI1.1.

Definition at line 28 of file LoadFile.h.

Typedef Documentation

◆ EFI_LOAD_FILE_PROTOCOL

Definition at line 30 of file LoadFile.h.

◆ EFI_LOAD_FILE_INTERFACE

Backward-compatible with EFI1.1.

Definition at line 35 of file LoadFile.h.

◆ EFI_LOAD_FILE

typedef EFI_STATUS(EFIAPI * EFI_LOAD_FILE) (IN EFI_LOAD_FILE_PROTOCOL *This, IN EFI_DEVICE_PATH_PROTOCOL *FilePath, IN BOOLEAN BootPolicy, IN OUT UINTN *BufferSize, IN VOID *Buffer OPTIONAL)

Causes the driver to load a specified file.

Parameters
ThisProtocol instance pointer.
FilePathThe device specific path of the file to load.
BootPolicyIf TRUE, indicates that the request originates from the boot manager is attempting to load FilePath as a boot selection. If FALSE, then FilePath must match as exact file to be loaded.
BufferSizeOn input the size of Buffer in bytes. On output with a return code of EFI_SUCCESS, the amount of data transferred to Buffer. On output with a return code of EFI_BUFFER_TOO_SMALL, the size of Buffer required to retrieve the requested file.
BufferThe memory buffer to transfer the file to. IF Buffer is NULL, then the size of the requested file is returned in BufferSize.
Return values
EFI_SUCCESSThe file was loaded.
EFI_UNSUPPORTEDThe device does not support the provided BootPolicy
EFI_INVALID_PARAMETERFilePath is not a valid device path, or BufferSize is NULL.
EFI_NO_MEDIANo medium was present to load the file.
EFI_DEVICE_ERRORThe file was not loaded due to a device error.
EFI_NO_RESPONSEThe remote system did not respond.
EFI_NOT_FOUNDThe file was not found.
EFI_ABORTEDThe file load process was manually cancelled.
EFI_WARN_FILE_SYSTEMThe resulting Buffer contains UEFI-compliant file system.

Definition at line 67 of file LoadFile.h.

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( BSD2_PATENT  )

Variable Documentation

◆ gEfiLoadFileProtocolGuid

EFI_GUID gEfiLoadFileProtocolGuid