]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDriver.c
NetworkPkg: Move Network library and drivers from MdeModulePkg to NetworkPkg
[mirror_edk2.git] / MdeModulePkg / Universal / Network / VlanConfigDxe / VlanConfigDriver.c
diff --git a/MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDriver.c b/MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDriver.c
deleted file mode 100644 (file)
index c717d9e..0000000
+++ /dev/null
@@ -1,299 +0,0 @@
-/** @file\r
-  The driver binding for VLAN configuration module.\r
-\r
-Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
-SPDX-License-Identifier: BSD-2-Clause-Patent\r
-\r
-**/\r
-\r
-#include "VlanConfigImpl.h"\r
-\r
-EFI_DRIVER_BINDING_PROTOCOL gVlanConfigDriverBinding = {\r
-  VlanConfigDriverBindingSupported,\r
-  VlanConfigDriverBindingStart,\r
-  VlanConfigDriverBindingStop,\r
-  0xa,\r
-  NULL,\r
-  NULL\r
-};\r
-\r
-/**\r
-  The entry point for IP4 config driver which install the driver\r
-  binding and component name protocol on its image.\r
-\r
-  @param[in]  ImageHandle        The image handle of the driver.\r
-  @param[in]  SystemTable        The system table.\r
-\r
-  @retval EFI_SUCCES             All the related protocols are installed on the driver.\r
-  @retval Others                 Failed to install protocols.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-VlanConfigDriverEntryPoint (\r
-  IN EFI_HANDLE          ImageHandle,\r
-  IN EFI_SYSTEM_TABLE    *SystemTable\r
-  )\r
-{\r
-  return EfiLibInstallDriverBindingComponentName2 (\r
-           ImageHandle,\r
-           SystemTable,\r
-           &gVlanConfigDriverBinding,\r
-           ImageHandle,\r
-           &gVlanConfigComponentName,\r
-           &gVlanConfigComponentName2\r
-           );\r
-}\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 device to test\r
-  @param[in]  RemainingDevicePath  Optional parameter use to pick a specific child\r
-                                   device to start.\r
-\r
-  @retval EFI_SUCCES           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
-VlanConfigDriverBindingSupported (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN EFI_HANDLE                      ControllerHandle,\r
-  IN EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath OPTIONAL\r
-  )\r
-{\r
-  EFI_STATUS                Status;\r
-  EFI_VLAN_CONFIG_PROTOCOL  *VlanConfig;\r
-\r
-  Status = gBS->OpenProtocol (\r
-                  ControllerHandle,\r
-                  &gEfiVlanConfigProtocolGuid,\r
-                  (VOID **) &VlanConfig,\r
-                  This->DriverBindingHandle,\r
-                  ControllerHandle,\r
-                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  //\r
-  // Close the VlanConfig protocol opened for supported test\r
-  //\r
-  gBS->CloseProtocol (\r
-         ControllerHandle,\r
-         &gEfiVlanConfigProtocolGuid,\r
-         This->DriverBindingHandle,\r
-         ControllerHandle\r
-         );\r
-\r
-  return Status;\r
-}\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_SUCCES           This driver is added to ControllerHandle\r
-  @retval EFI_ALREADY_STARTED  This driver is already running on ControllerHandle\r
-  @retval other                This driver does not support this device\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-VlanConfigDriverBindingStart (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN EFI_HANDLE                      ControllerHandle,\r
-  IN EFI_DEVICE_PATH_PROTOCOL        *RemainingDevicePath OPTIONAL\r
-  )\r
-{\r
-  EFI_STATUS                Status;\r
-  EFI_VLAN_CONFIG_PROTOCOL  *VlanConfig;\r
-  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;\r
-  VLAN_CONFIG_PRIVATE_DATA  *PrivateData;\r
-\r
-  //\r
-  // Check for multiple start\r
-  //\r
-  Status = gBS->OpenProtocol (\r
-                  ControllerHandle,\r
-                  &gEfiCallerIdGuid,\r
-                  (VOID **) &PrivateData,\r
-                  This->DriverBindingHandle,\r
-                  ControllerHandle,\r
-                  EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
-                  );\r
-  if (!EFI_ERROR (Status)) {\r
-    return EFI_ALREADY_STARTED;\r
-  }\r
-\r
-  //\r
-  // Open VlanConfig protocol by driver\r
-  //\r
-  Status = gBS->OpenProtocol (\r
-                  ControllerHandle,\r
-                  &gEfiVlanConfigProtocolGuid,\r
-                  (VOID **) &VlanConfig,\r
-                  This->DriverBindingHandle,\r
-                  ControllerHandle,\r
-                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  //\r
-  // Get parent device path\r
-  //\r
-  Status = gBS->OpenProtocol (\r
-                  ControllerHandle,\r
-                  &gEfiDevicePathProtocolGuid,\r
-                  (VOID **) &DevicePath,\r
-                  This->DriverBindingHandle,\r
-                  ControllerHandle,\r
-                  EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    goto ErrorExit;\r
-  }\r
-\r
-  //\r
-  // Create a private data for this network device\r
-  //\r
-  PrivateData = AllocateCopyPool (sizeof (VLAN_CONFIG_PRIVATE_DATA), &mVlanConfigPrivateDateTemplate);\r
-  if (PrivateData == NULL) {\r
-    Status = EFI_OUT_OF_RESOURCES;\r
-    goto ErrorExit;\r
-  }\r
-\r
-  PrivateData->ImageHandle = This->DriverBindingHandle;\r
-  PrivateData->ControllerHandle = ControllerHandle;\r
-  PrivateData->VlanConfig = VlanConfig;\r
-  PrivateData->ParentDevicePath = DevicePath;\r
-\r
-  //\r
-  // Install VLAN configuration form\r
-  //\r
-  Status = InstallVlanConfigForm (PrivateData);\r
-  if (EFI_ERROR (Status)) {\r
-    goto ErrorExit;\r
-  }\r
-\r
-  //\r
-  // Install private GUID\r
-  //\r
-  Status = gBS->InstallMultipleProtocolInterfaces (\r
-                  &ControllerHandle,\r
-                  &gEfiCallerIdGuid,\r
-                  PrivateData,\r
-                  NULL\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    goto ErrorExit;\r
-  }\r
-  return Status;\r
-\r
-ErrorExit:\r
-  gBS->CloseProtocol (\r
-         ControllerHandle,\r
-         &gEfiVlanConfigProtocolGuid,\r
-         This->DriverBindingHandle,\r
-         ControllerHandle\r
-         );\r
-\r
-  gBS->CloseProtocol (\r
-         ControllerHandle,\r
-         &gEfiDevicePathProtocolGuid,\r
-         This->DriverBindingHandle,\r
-         ControllerHandle\r
-         );\r
-\r
-  if (PrivateData != NULL) {\r
-    UninstallVlanConfigForm (PrivateData);\r
-    FreePool (PrivateData);\r
-  }\r
-\r
-  return Status;\r
-}\r
-\r
-\r
-/**\r
-  Stop this driver on ControllerHandle.\r
-\r
-  @param[in]  This                 Protocol instance pointer.\r
-  @param[in]  ControllerHandle     Handle of device to stop driver on\r
-  @param[in]  NumberOfChildren     Number of Handles in ChildHandleBuffer. If number\r
-                                   of children is zero stop the entire bus driver.\r
-  @param[in]  ChildHandleBuffer    List of Child Handles to Stop.\r
-\r
-  @retval EFI_SUCCES           This driver is removed ControllerHandle\r
-  @retval other                This driver was not removed from this device\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-VlanConfigDriverBindingStop (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL     *This,\r
-  IN EFI_HANDLE                      ControllerHandle,\r
-  IN UINTN                           NumberOfChildren,\r
-  IN EFI_HANDLE                      *ChildHandleBuffer\r
-  )\r
-{\r
-  EFI_STATUS                Status;\r
-  VLAN_CONFIG_PRIVATE_DATA  *PrivateData;\r
-\r
-  //\r
-  // Retrieve the PrivateData from ControllerHandle\r
-  //\r
-  Status = gBS->OpenProtocol (\r
-                  ControllerHandle,\r
-                  &gEfiCallerIdGuid,\r
-                  (VOID **) &PrivateData,\r
-                  This->DriverBindingHandle,\r
-                  ControllerHandle,\r
-                  EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-  ASSERT (PrivateData->Signature == VLAN_CONFIG_PRIVATE_DATA_SIGNATURE);\r
-\r
-  if (NumberOfChildren != 0) {\r
-    if (NumberOfChildren != 1 || ChildHandleBuffer[0] != PrivateData->DriverHandle) {\r
-      return EFI_DEVICE_ERROR;\r
-    }\r
-\r
-    return UninstallVlanConfigForm (PrivateData);\r
-  }\r
-\r
-  //\r
-  // Uninstall the private GUID\r
-  //\r
-  Status = gBS->UninstallMultipleProtocolInterfaces (\r
-                  ControllerHandle,\r
-                  &gEfiCallerIdGuid,\r
-                  PrivateData,\r
-                  NULL\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  Status = gBS->CloseProtocol (\r
-                  ControllerHandle,\r
-                  &gEfiVlanConfigProtocolGuid,\r
-                  This->DriverBindingHandle,\r
-                  ControllerHandle\r
-                  );\r
-  return Status;\r
-}\r