TianoCore EDK2 master
|
#include "Ip4Impl.h"
Go to the source code of this file.
Variables | |
EFI_DRIVER_BINDING_PROTOCOL | gIp4DriverBinding |
BOOLEAN | mIpSec2Installed = FALSE |
The driver binding and service binding protocol for IP4 driver.
Copyright (c) 2005 - 2019, Intel Corporation. All rights reserved.
Copyright (c) Microsoft Corporation (C) Copyright 2015 Hewlett-Packard Development Company, L.P.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file Ip4Driver.c.
EFI_STATUS Ip4CleanService | ( | IN IP4_SERVICE * | IpSb | ) |
Clean up a IP4 service binding instance. It will release all the resource allocated by the instance. The instance may be partly initialized, or partly destroyed. If a resource is destroyed, it is marked as that in case the destroy failed and being called again later.
[in] | IpSb | The IP4 service binding instance to clean up |
EFI_SUCCESS | The resource used by the instance are cleaned up |
other | Failed to clean up some of the resources. |
Definition at line 406 of file Ip4Driver.c.
EFI_STATUS Ip4CreateService | ( | IN EFI_HANDLE | Controller, |
IN EFI_HANDLE | ImageHandle, | ||
OUT IP4_SERVICE ** | Service | ||
) |
Create a new IP4 driver service binding private instance.
Controller | The controller that has MNP service binding installed |
ImageHandle | The IP4 driver's image handle |
Service | The variable to receive the newly created IP4 service. |
EFI_OUT_OF_RESOURCES | Failed to allocate some resource |
EFI_SUCCESS | A new IP4 service binding private is created. |
other | Other error occurs. |
Definition at line 190 of file Ip4Driver.c.
EFI_STATUS EFIAPI Ip4DestroyChildEntryInHandleBuffer | ( | IN LIST_ENTRY * | Entry, |
IN VOID * | Context | ||
) |
Callback function which provided by user to remove one node in NetDestroyLinkList process.
[in] | Entry | The entry to be removed. |
[in] | Context | Pointer to the callback context corresponds to the Context in NetDestroyLinkList. |
EFI_SUCCESS | The entry has been removed successfully. |
Others | Fail to remove the entry. |
Definition at line 496 of file Ip4Driver.c.
EFI_STATUS EFIAPI Ip4DriverBindingStart | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle, | ||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath | OPTIONAL | ||
) |
Start this driver on ControllerHandle. This service is called by the EFI boot service ConnectController(). In order to make drivers as small as possible, there are a few calling restrictions for this service. ConnectController() must follow these calling restrictions. If any other agent wishes to call Start() it must also follow these calling restrictions.
[in] | This | Protocol instance pointer. |
[in] | ControllerHandle | Handle of device to bind driver to |
[in] | RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | This driver is added to ControllerHandle |
EFI_ALREADY_STARTED | This driver is already running on ControllerHandle |
other | This driver does not support this device |
Definition at line 542 of file Ip4Driver.c.
EFI_STATUS EFIAPI Ip4DriverBindingStop | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle, | ||
IN UINTN | NumberOfChildren, | ||
IN EFI_HANDLE * | ChildHandleBuffer | ||
) |
Stop this driver on ControllerHandle. This service is called by the EFI boot service DisconnectController(). In order to make drivers as small as possible, there are a few calling restrictions for this service. DisconnectController() must follow these calling restrictions. If any other agent wishes to call Stop() it must also follow these calling restrictions.
[in] | This | Protocol instance pointer. |
[in] | ControllerHandle | Handle of device to stop driver on |
[in] | NumberOfChildren | Number of Handles in ChildHandleBuffer. If number of children is zero stop the entire bus driver. |
[in] | ChildHandleBuffer | List of Child Handles to Stop. |
EFI_SUCCESS | This driver is removed ControllerHandle |
other | This driver was not removed from this device |
Definition at line 704 of file Ip4Driver.c.
EFI_STATUS EFIAPI Ip4DriverBindingSupported | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ControllerHandle, | ||
IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath | OPTIONAL | ||
) |
Test to see if this driver supports ControllerHandle. This service is called by the EFI boot service ConnectController(). In order to make drivers as small as possible, there are a few calling restrictions for this service. ConnectController() must follow these calling restrictions. If any other agent wishes to call Supported() it must also follow these calling restrictions.
[in] | This | Protocol instance pointer. |
[in] | ControllerHandle | Handle of device to test |
[in] | RemainingDevicePath | Optional parameter use to pick a specific child device to start. |
EFI_SUCCESS | This driver supports this device |
EFI_ALREADY_STARTED | This driver is already running on this device |
other | This driver does not support this device |
Definition at line 118 of file Ip4Driver.c.
EFI_STATUS EFIAPI Ip4DriverEntryPoint | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_SYSTEM_TABLE * | SystemTable | ||
) |
This is the declaration of an EFI image entry point. This entry point is the same for UEFI Applications, UEFI OS Loaders, and UEFI Drivers including both device drivers and bus drivers.
The entry point for IP4 driver which install the driver binding and component name protocol on its image.
[in] | ImageHandle | The firmware allocated handle for the UEFI image. |
[in] | SystemTable | A pointer to the EFI System Table. |
EFI_SUCCESS | The operation completed successfully. |
EFI_OUT_OF_RESOURCES | The request could not be completed due to a lack of resources. |
Definition at line 73 of file Ip4Driver.c.
EFI_STATUS EFIAPI Ip4ServiceBindingCreateChild | ( | IN EFI_SERVICE_BINDING_PROTOCOL * | This, |
IN OUT EFI_HANDLE * | ChildHandle | ||
) |
Creates a child handle and installs a protocol.
The CreateChild() function installs a protocol on ChildHandle. If ChildHandle is a pointer to NULL, then a new handle is created and returned in ChildHandle. If ChildHandle is not a pointer to NULL, then the protocol installs on the existing ChildHandle.
This | Pointer to the EFI_SERVICE_BINDING_PROTOCOL instance. |
ChildHandle | Pointer to the handle of the child to create. If it is NULL, then a new handle is created. If it is a pointer to an existing UEFI handle, then the protocol is added to the existing UEFI handle. |
EFI_SUCCESS | The protocol was added to ChildHandle. |
EFI_INVALID_PARAMETER | ChildHandle is NULL. |
EFI_OUT_OF_RESOURCES | There are not enough resources available to create the child |
other | The child handle was not created |
Definition at line 847 of file Ip4Driver.c.
EFI_STATUS EFIAPI Ip4ServiceBindingDestroyChild | ( | IN EFI_SERVICE_BINDING_PROTOCOL * | This, |
IN EFI_HANDLE | ChildHandle | ||
) |
Destroys a child handle with a protocol installed on it.
The DestroyChild() function does the opposite of CreateChild(). It removes a protocol that was installed by CreateChild() from ChildHandle. If the removed protocol is the last protocol on ChildHandle, then ChildHandle is destroyed.
This | Pointer to the EFI_SERVICE_BINDING_PROTOCOL instance. |
ChildHandle | Handle of the child to destroy |
EFI_SUCCESS | The protocol was removed from ChildHandle. |
EFI_UNSUPPORTED | ChildHandle does not support the protocol that is being removed. |
EFI_INVALID_PARAMETER | Child handle is NULL. |
EFI_ACCESS_DENIED | The protocol could not be removed from the ChildHandle because its services are being used. |
other | The child handle was not destroyed |
Definition at line 950 of file Ip4Driver.c.
Callback function for IpSec2 Protocol install.
[in] | Event | Event whose notification function is being invoked |
[in] | Context | Pointer to the notification function's context |
Definition at line 34 of file Ip4Driver.c.
EFI_DRIVER_BINDING_PROTOCOL gIp4DriverBinding |
Definition at line 14 of file Ip4Driver.c.
BOOLEAN mIpSec2Installed = FALSE |
Definition at line 23 of file Ip4Driver.c.