iPXE
|
MNP NIC driver. More...
Go to the source code of this file.
Functions | |
FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
int | mnpnet_start (struct efi_device *efidev) |
Attach driver to device. More... | |
void | mnpnet_stop (struct efi_device *efidev) |
Detach driver from device. More... | |
int | mnptemp_create (EFI_HANDLE handle, struct net_device **netdev) |
Create temporary MNP network device. More... | |
void | mnptemp_destroy (struct net_device *netdev) |
Destroy temporary MNP network device. More... | |
MNP NIC driver.
Definition in file mnpnet.h.
FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
int mnpnet_start | ( | struct efi_device * | efidev | ) |
Attach driver to device.
efidev | EFI device |
rc | Return status code |
Definition at line 369 of file mnpnet.c.
References alloc_etherdev(), EFI_SYSTEM_TABLE::BootServices, efi_device::child, device::children, EFI_BOOT_SERVICES::CloseProtocol, EFI_SIMPLE_NETWORK_MODE::CurrentAddress, DBGC, efi_device::dev, net_device::dev, efi_device::device, EEFI, efi_device_info(), efi_handle_name(), efi_image_handle, efi_managed_network_protocol_guid, efi_managed_network_service_binding_protocol_guid, EFI_NOT_STARTED, EFI_OPEN_PROTOCOL_BY_DRIVER, EFI_OPEN_PROTOCOL_EXCLUSIVE, efi_service_add(), efi_service_del(), efi_systab, mnp_nic::efidev, efidev_set_drvdata(), ENOMEM, ENOTSUP, _EFI_MANAGED_NETWORK_PROTOCOL::GetModeData, net_device::hw_addr, ll_protocol::hw_addr_len, EFI_SIMPLE_NETWORK_MODE::HwAddressSize, INIT_LIST_HEAD, list_add, list_del, net_device::ll_addr, ll_protocol::ll_addr_len, net_device::ll_protocol, memcpy(), mnp_nic::mnp, mnpnet_operations, net_device::name, netdev, netdev_init(), netdev_link_up(), netdev_nullify(), netdev_put(), NULL, EFI_BOOT_SERVICES::OpenProtocol, EFI_SIMPLE_NETWORK_MODE::PermanentAddress, net_device::priv, rc, register_netdev(), strerror(), u, and unregister_netdev().
Referenced by mnptemp_create().
void mnpnet_stop | ( | struct efi_device * | efidev | ) |
Detach driver from device.
efidev | EFI device |
Definition at line 484 of file mnpnet.c.
References EFI_SYSTEM_TABLE::BootServices, efi_device::child, EFI_BOOT_SERVICES::CloseProtocol, efi_device::device, efi_image_handle, efi_managed_network_protocol_guid, efi_managed_network_service_binding_protocol_guid, efi_service_del(), efi_shutdown_in_progress, efi_systab, mnp_nic::efidev, efidev_get_drvdata(), list_del, mnp_nic::mnp, netdev, netdev_nullify(), netdev_put(), net_device::priv, and unregister_netdev().
Referenced by mnptemp_create(), and mnptemp_destroy().
int mnptemp_create | ( | EFI_HANDLE | handle, |
struct net_device ** | netdev | ||
) |
Create temporary MNP network device.
handle | MNP service binding handle |
netdev | Network device to fill in |
rc | Return status code |
Definition at line 514 of file mnpnet.c.
References DBGC, efi_handle_name(), efidev_alloc(), efidev_free(), efidev_get_drvdata(), ENOMEM, handle, mnpnet_start(), mnpnet_stop(), netdev, rc, and strerror().
Referenced by efi_autoexec_network().
void mnptemp_destroy | ( | struct net_device * | netdev | ) |
Destroy temporary MNP network device.
netdev | Network device |
Definition at line 551 of file mnpnet.c.
References cachedhcp_recycle(), mnp_nic::efidev, efidev_free(), mnp_nic::mnp, mnpnet_stop(), netdev, and net_device::priv.
Referenced by efi_autoexec_network().