iPXE
|
EFI chainloaded-device-only driver. More...
#include <string.h>
#include <errno.h>
#include <ipxe/init.h>
#include <ipxe/efi/efi.h>
#include <ipxe/efi/efi_driver.h>
#include <ipxe/efi/efi_utils.h>
#include <ipxe/efi/mnpnet.h>
#include <ipxe/efi/Protocol/SimpleNetwork.h>
#include <ipxe/efi/Protocol/NetworkInterfaceIdentifier.h>
#include "snpnet.h"
#include "nii.h"
Go to the source code of this file.
Data Structures | |
struct | chained_protocol |
A chainloaded protocol. More... | |
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
static void | chained_locate (struct chained_protocol *chained) |
Locate chainloaded protocol. More... | |
static int | chained_supported (EFI_HANDLE device, struct chained_protocol *chained) |
Check to see if driver supports a device. More... | |
static int | snponly_supported (EFI_HANDLE device) |
Check to see if driver supports a device. More... | |
static int | niionly_supported (EFI_HANDLE device) |
Check to see if driver supports a device. More... | |
static int | mnponly_supported (EFI_HANDLE device) |
Check to see if driver supports a device. More... | |
struct efi_driver snponly_driver | __efi_driver (EFI_DRIVER_NORMAL) |
EFI SNP chainloading-device-only driver. More... | |
static void | chained_init (void) |
Initialise EFI chainloaded-device-only driver. More... | |
struct init_fn chained_init_fn | __init_fn (INIT_LATE) |
EFI chainloaded-device-only initialisation function. More... | |
Variables | |
static struct chained_protocol | chained_snp |
Chainloaded SNP protocol. More... | |
static struct chained_protocol | chained_nii |
Chainloaded NII protocol. More... | |
static struct chained_protocol | chained_mnp |
Chainloaded MNP protocol. More... | |
EFI chainloaded-device-only driver.
Definition in file snponly.c.
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
|
static |
Locate chainloaded protocol.
chained | Chainloaded protocol |
Definition at line 88 of file snponly.c.
References EFI_SYSTEM_TABLE::BootServices, EFI_BOOT_SERVICES::CloseProtocol, DBGC, chained_protocol::device, EFI_LOADED_IMAGE_PROTOCOL::DeviceHandle, EEFI, efi_guid_ntoa(), efi_handle_name(), efi_image_handle, efi_loaded_image, efi_locate_device(), EFI_OPEN_PROTOCOL_GET_PROTOCOL, efi_systab, handle, NULL, EFI_BOOT_SERVICES::OpenProtocol, chained_protocol::protocol, rc, and strerror().
Referenced by chained_init().
|
static |
Check to see if driver supports a device.
device | EFI device handle |
chained | Chainloaded protocol |
rc | Return status code |
Definition at line 155 of file snponly.c.
References EFI_SYSTEM_TABLE::BootServices, EFI_BOOT_SERVICES::CloseProtocol, DBGC, DBGC2, DBGCP, chained_protocol::device, EEFI, efi_guid_ntoa(), efi_handle_name(), efi_image_handle, EFI_OPEN_PROTOCOL_GET_PROTOCOL, efi_systab, ENOTTY, EFI_BOOT_SERVICES::OpenProtocol, chained_protocol::protocol, and rc.
Referenced by mnponly_supported(), niionly_supported(), and snponly_supported().
|
static |
Check to see if driver supports a device.
device | EFI device handle |
rc | Return status code |
Definition at line 201 of file snponly.c.
References chained_snp, and chained_supported().
|
static |
Check to see if driver supports a device.
device | EFI device handle |
rc | Return status code |
Definition at line 212 of file snponly.c.
References chained_nii, and chained_supported().
|
static |
Check to see if driver supports a device.
device | EFI device handle |
rc | Return status code |
Definition at line 223 of file snponly.c.
References chained_mnp, and chained_supported().
struct efi_driver snponly_driver __efi_driver | ( | EFI_DRIVER_NORMAL | ) |
EFI SNP chainloading-device-only driver.
EFI MNP chainloading-device-only driver.
EFI NII chainloading-device-only driver.
|
static |
Initialise EFI chainloaded-device-only driver.
Definition at line 256 of file snponly.c.
References chained_locate(), chained_mnp, chained_nii, and chained_snp.
EFI chainloaded-device-only initialisation function.
|
static |
Chainloaded SNP protocol.
Definition at line 69 of file snponly.c.
Referenced by chained_init(), and snponly_supported().
|
static |
Chainloaded NII protocol.
Definition at line 74 of file snponly.c.
Referenced by chained_init(), and niionly_supported().
|
static |
Chainloaded MNP protocol.
Definition at line 79 of file snponly.c.
Referenced by chained_init(), and mnponly_supported().