]> git.proxmox.com Git - mirror_edk2.git/blobdiff - NetworkPkg/TcpDxe/TcpDriver.h
NetworkPkg: Add PcdTftpBlockSize in NetworkPkg.dec
[mirror_edk2.git] / NetworkPkg / TcpDxe / TcpDriver.h
index 9de4be617d8ceb2eded8e7664768a90f6d931c45..1ac412be6386b2a08a44eefed1c537f5d5e864de 100644 (file)
@@ -1,15 +1,9 @@
 /** @file\r
   The prototype of driver binding and service binding protocol for TCP driver.\r
 \r
-  Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2009 - 2016, Intel Corporation. All rights reserved.<BR>\r
 \r
-  This program and the accompanying materials\r
-  are licensed and made available under the terms and conditions of the BSD License\r
-  which accompanies this distribution.  The full text of the license may be found at\r
-  http://opensource.org/licenses/bsd-license.php.\r
-\r
-  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+  SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
@@ -33,7 +27,6 @@ typedef struct _TCP_SERVICE_DATA {
   UINT8                         IpVersion;\r
   IP_IO                         *IpIo;\r
   EFI_SERVICE_BINDING_PROTOCOL  ServiceBinding;\r
-  CHAR16                        *MacString;\r
   LIST_ENTRY                    SocketList;\r
 } TCP_SERVICE_DATA;\r
 \r
@@ -90,7 +83,74 @@ TcpDriverEntryPoint (
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-TcpDriverBindingSupported (\r
+Tcp4DriverBindingSupported (\r
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN EFI_HANDLE                   ControllerHandle,\r
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath OPTIONAL\r
+  );\r
+\r
+/**\r
+  Start this driver on ControllerHandle.\r
+\r
+  @param[in]  This                   Protocol instance pointer.\r
+  @param[in]  ControllerHandle       Handle of device to bind driver to.\r
+  @param[in]  RemainingDevicePath    Optional parameter use to pick a specific child\r
+                                     device to start.\r
+\r
+  @retval EFI_SUCCESS            The driver was added to ControllerHandle.\r
+  @retval EFI_OUT_OF_RESOURCES   There are not enough resources to start the\r
+                                 driver.\r
+  @retval other                  The driver cannot be added to ControllerHandle.\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+Tcp4DriverBindingStart (\r
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN EFI_HANDLE                   ControllerHandle,\r
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath OPTIONAL\r
+  );\r
+\r
+/**\r
+  Stop this driver on ControllerHandle.\r
+\r
+  @param[in]  This              A pointer to the EFI_DRIVER_BINDING_PROTOCOL instance.\r
+  @param[in]  ControllerHandle  A handle to the device being stopped. The handle must\r
+                                support a bus specific I/O protocol for the driver\r
+                                to use to stop the device.\r
+  @param[in]  NumberOfChildren  The number of child device handles in ChildHandleBuffer.\r
+  @param[in]  ChildHandleBuffer An array of child handles to be freed. May be NULL\r
+                                if NumberOfChildren is 0.\r
+\r
+  @retval EFI_SUCCESS           The device was stopped.\r
+  @retval EFI_DEVICE_ERROR      The device could not be stopped due to a device error.\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+Tcp4DriverBindingStop (\r
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
+  IN  EFI_HANDLE                   ControllerHandle,\r
+  IN  UINTN                        NumberOfChildren,\r
+  IN  EFI_HANDLE                   *ChildHandleBuffer OPTIONAL\r
+  );\r
+\r
+/**\r
+  Test to see if this driver supports ControllerHandle.\r
+\r
+  @param[in]  This                Protocol instance pointer.\r
+  @param[in]  ControllerHandle    Handle of the device to test.\r
+  @param[in]  RemainingDevicePath Optional parameter use to pick a specific\r
+                                  child device to start.\r
+\r
+  @retval EFI_SUCCESS             This driver supports this device.\r
+  @retval EFI_ALREADY_STARTED     This driver is already running on this device.\r
+  @retval other                   This driver does not support this device.\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+Tcp6DriverBindingSupported (\r
   IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
   IN EFI_HANDLE                   ControllerHandle,\r
   IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath OPTIONAL\r
@@ -112,7 +172,7 @@ TcpDriverBindingSupported (
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-TcpDriverBindingStart (\r
+Tcp6DriverBindingStart (\r
   IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
   IN EFI_HANDLE                   ControllerHandle,\r
   IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath OPTIONAL\r
@@ -135,7 +195,7 @@ TcpDriverBindingStart (
 **/\r
 EFI_STATUS\r
 EFIAPI\r
-TcpDriverBindingStop (\r
+Tcp6DriverBindingStop (\r
   IN  EFI_DRIVER_BINDING_PROTOCOL  *This,\r
   IN  EFI_HANDLE                   ControllerHandle,\r
   IN  UINTN                        NumberOfChildren,\r
@@ -172,7 +232,7 @@ TcpDestroySocketCallback (
   );\r
 \r
 //\r
-// Function ptototypes for the ServiceBinding Prococol\r
+// Function prototypes for the ServiceBinding Protocol\r
 //\r
 \r
 /**\r
@@ -214,7 +274,7 @@ TcpServiceBindingCreateChild (
 \r
   @retval EFI_SUCCES            The protocol was removed from ChildHandle.\r
   @retval EFI_UNSUPPORTED       ChildHandle does not support the protocol that is being removed.\r
-  @retval EFI_INVALID_PARAMETER The child handle is not a valid UEFI Handle.\r
+  @retval EFI_INVALID_PARAMETER The child handle is NULL.\r
   @retval EFI_ACCESS_DENIED     The protocol could not be removed from the ChildHandle\r
                                 because its services are being used.\r
   @retval other                 The child handle was not destroyed.\r