Functions | |
EFI_STATUS EFIAPI | Dhcp6DriverBindingSupported (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath) |
EFI_STATUS EFIAPI | Dhcp6DriverBindingStart (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath) |
EFI_STATUS EFIAPI | Dhcp6DriverBindingStop (IN EFI_DRIVER_BINDING_PROTOCOL *This, IN EFI_HANDLE ControllerHandle, IN UINTN NumberOfChildren, IN EFI_HANDLE *ChildHandleBuffer) |
EFI_STATUS EFIAPI | Dhcp6ServiceBindingCreateChild (IN EFI_SERVICE_BINDING_PROTOCOL *This, IN OUT EFI_HANDLE *ChildHandle) |
EFI_STATUS EFIAPI | Dhcp6ServiceBindingDestroyChild (IN EFI_SERVICE_BINDING_PROTOCOL *This, IN EFI_HANDLE ChildHandle) |
Variables | |
EFI_COMPONENT_NAME_PROTOCOL | gDhcp6ComponentName |
EFI_COMPONENT_NAME2_PROTOCOL | gDhcp6ComponentName2 |
EFI_UNICODE_STRING_TABLE * | gDhcp6ControllerNameTable |
Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
EFI_STATUS EFIAPI Dhcp6DriverBindingStart | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, | |
IN EFI_HANDLE | ControllerHandle, | |||
IN EFI_DEVICE_PATH_PROTOCOL * | RemainingDevicePath | |||
) |
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. |
[in] | This | The pointer to the driver binding protocol. |
[in] | ControllerHandle | The handle of device to be started. |
[in] | RemainingDevicePath | Optional parameter use to pick a specific child device to be started. |
EFI_SUCCESS | This driver is installed to ControllerHandle. | |
EFI_ALREADY_STARTED | This driver is already running on ControllerHandle. | |
other | This driver does not support this device. |
References Dhcp6CreateService(), Dhcp6DestroyService(), and _DHCP6_SERVICE::ServiceBinding.
EFI_STATUS EFIAPI Dhcp6DriverBindingStop | ( | 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 the 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. |
[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 | |
EFI_DEVICE_ERROR | An unexpected system or network error occurred. | |
other | This driver was not removed from this device |
References _DHCP6_SERVICE::Child, DHCP6_SERVICE_FROM_THIS, Dhcp6DestroyChildEntry(), and Dhcp6DestroyService().
EFI_STATUS EFIAPI Dhcp6DriverBindingSupported | ( | IN EFI_DRIVER_BINDING_PROTOCOL * | This, | |
IN EFI_HANDLE | ControllerHandle, | |||
IN EFI_DEVICE_PATH_PROTOCOL * | RemainingDevicePath | |||
) |
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. |
[in] | This | The pointer to the driver binding protocol. |
[in] | ControllerHandle | The handle of device to be tested. |
[in] | RemainingDevicePath | Optional parameter use to pick a specific child device to be started. |
EFI_SUCCESS | This driver supports this device. | |
Others | This driver does not support this device. |
EFI_STATUS EFIAPI Dhcp6ServiceBindingCreateChild | ( | 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_SUCCES | The protocol was added to ChildHandle. | |
EFI_INVALID_PARAMETER | ChildHandle is NULL. | |
EFI_OUT_OF_RESOURCES | There are not enough resources availabe to create the child. | |
other | The child handle was not created. |
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.
[in] | This | Pointer to the EFI_SERVICE_BINDING_PROTOCOL instance. |
[in,out] | 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_SUCCES | The protocol was added to ChildHandle. | |
EFI_INVALID_PARAMETER | ChildHandle is NULL. | |
other | The child handle was not created. |
References _DHCP6_SERVICE::Child, _DHCP6_INSTANCE::Dhcp6, DHCP6_SERVICE_FROM_THIS, Dhcp6CreateInstance(), Dhcp6DestroyInstance(), gDhcp6DriverBinding, _DHCP6_INSTANCE::Handle, _DHCP6_INSTANCE::Link, _DHCP6_SERVICE::NumOfChild, _DHCP6_INSTANCE::Timer, and _DHCP6_SERVICE::UdpIo.
EFI_STATUS EFIAPI Dhcp6ServiceBindingDestroyChild | ( | 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_SUCCES | 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 |
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.
[in] | This | Pointer to the EFI_SERVICE_BINDING_PROTOCOL instance. |
[in] | ChildHandle | Handle of the child to destroy |
EFI_SUCCES | 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 |
References DHCP6_INSTANCE_FROM_THIS, DHCP6_SERVICE_FROM_THIS, Dhcp6DestroyInstance(), gDhcp6DriverBinding, _DHCP6_INSTANCE::InDestroy, _DHCP6_INSTANCE::Link, _DHCP6_SERVICE::NumOfChild, _DHCP6_INSTANCE::Service, and _DHCP6_SERVICE::UdpIo.
EFI_COMPONENT_NAME_PROTOCOL gDhcp6ComponentName |
EFI_COMPONENT_NAME2_PROTOCOL gDhcp6ComponentName2 |
Referenced by Dhcp6DriverEntryPoint(), and UpdateName().
EFI_UNICODE_STRING_TABLE* gDhcp6ControllerNameTable |
Referenced by Dhcp6ComponentNameGetControllerName(), and UpdateName().