Intel Extensible Firmware Interface Network Router User Manual


  Open as PDF
of 1084
 
Services — Boot Services
Version 1.10 12/01/02 5-37
Related Definitions
//*******************************************************
//EFI_HANDLE
//*******************************************************
typedef VOID *EFI_HANDLE;
//*******************************************************
//EFI_GUID
//*******************************************************
typedef struct {
UINT32 Data1;
UINT16 Data2;
UINT16 Data3;
UINT8 Data4[8];
} EFI_GUID;
//*******************************************************
//EFI_INTERFACE_TYPE
//*******************************************************
typedef enum {
EFI_NATIVE_INTERFACE
} EFI INTERFACE_TYPE;
Description
The InstallProtocolInterface() function installs a protocol interface (a GUID/Protocol
Interface structure pair) on a device handle. The same GUID cannot be installed more than once
onto the same handle. If the same GUID is installed more than once onto the same handle, then the
results are not predictable.
Installing a protocol interface allows other components to locate the Handle, and the interfaces
installed on it. A protocol interface is always installed at the head of the device handle’s queue.
When a protocol interface is installed, the firmware calls all notification functions that have
registered to wait for the installation of Protocol. For more information, see the
RegisterProtocolNotify()
function description.
Status Codes Returned
EFI_SUCCESS The protocol interface was installed.
EFI_OUT_OF_RESOURCES Space for a new handle could not be allocated.
EFI_INVALID_PARAMETER One of the parameters has an invalid value.