]> git.proxmox.com Git - mirror_edk2.git/blobdiff - PcAtChipsetPkg/IsaAcpiDxe/PcatIsaAcpi.c
PcAtChipsetPkg: Remove framework modules
[mirror_edk2.git] / PcAtChipsetPkg / IsaAcpiDxe / PcatIsaAcpi.c
diff --git a/PcAtChipsetPkg/IsaAcpiDxe/PcatIsaAcpi.c b/PcAtChipsetPkg/IsaAcpiDxe/PcatIsaAcpi.c
deleted file mode 100644 (file)
index 035bfaf..0000000
+++ /dev/null
@@ -1,386 +0,0 @@
-/** @file\r
-  EFI PCAT ISA ACPI Driver for a Generic PC Platform\r
-\r
-Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
-SPDX-License-Identifier: BSD-2-Clause-Patent\r
-\r
-**/\r
-\r
-#include "PcatIsaAcpi.h"\r
-\r
-//\r
-//  PcatIsaAcpi Driver Binding Protocol\r
-//\r
-EFI_DRIVER_BINDING_PROTOCOL gPcatIsaAcpiDriverBinding = {\r
-  PcatIsaAcpiDriverBindingSupported,\r
-  PcatIsaAcpiDriverBindingStart,\r
-  PcatIsaAcpiDriverBindingStop,\r
-  0xa,\r
-  NULL,\r
-  NULL\r
-};\r
-\r
-/**\r
-  the entry point of the PcatIsaAcpi driver.\r
-\r
-  @param ImageHandle     Handle for driver image\r
-  @param SystemTable     Point to EFI_SYSTEM_TABLE\r
-\r
-  @return Success or not for installing driver binding protocol\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PcatIsaAcpiDriverEntryPoint (\r
-  IN EFI_HANDLE        ImageHandle,\r
-  IN EFI_SYSTEM_TABLE  *SystemTable\r
-  )\r
-{\r
-  return EfiLibInstallDriverBindingComponentName2 (\r
-           ImageHandle,\r
-           SystemTable,\r
-           &gPcatIsaAcpiDriverBinding,\r
-           ImageHandle,\r
-           &gPcatIsaAcpiComponentName,\r
-           &gPcatIsaAcpiComponentName2\r
-           );\r
-}\r
-\r
-/**\r
-  ControllerDriver Protocol Method\r
-\r
-  @param This                 Driver Binding protocol instance pointer.\r
-  @param Controller           Handle of device to test.\r
-  @param RemainingDevicePath  Optional parameter use to pick a specific child\r
-                              device to start.\r
-  @retval EFI_SUCCESS         This driver supports this device.\r
-  @retval other               This driver does not support this device.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PcatIsaAcpiDriverBindingSupported (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
-  IN EFI_HANDLE                   Controller,\r
-  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
-  )\r
-{\r
-  EFI_STATUS           Status;\r
-  EFI_PCI_IO_PROTOCOL  *PciIo;\r
-  PCI_TYPE00           Pci;\r
-  UINTN                SegmentNumber;\r
-  UINTN                BusNumber;\r
-  UINTN                DeviceNumber;\r
-  UINTN                FunctionNumber;\r
-\r
-  //\r
-  // Get PciIo protocol instance\r
-  //\r
-  Status = gBS->OpenProtocol (\r
-                  Controller,\r
-                  &gEfiPciIoProtocolGuid,\r
-                  (VOID**)&PciIo,\r
-                  This->DriverBindingHandle,\r
-                  Controller,\r
-                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
-                  );\r
-  if (EFI_ERROR(Status)) {\r
-    return Status;\r
-  }\r
-\r
-  Status = PciIo->Pci.Read (\r
-                    PciIo,\r
-                    EfiPciIoWidthUint32,\r
-                    0,\r
-                    sizeof(Pci) / sizeof(UINT32),\r
-                    &Pci);\r
-\r
-  if (!EFI_ERROR (Status)) {\r
-    Status = EFI_UNSUPPORTED;\r
-    if ((Pci.Hdr.Command & 0x03) == 0x03) {\r
-      if (Pci.Hdr.ClassCode[2] == PCI_CLASS_BRIDGE) {\r
-        //\r
-        // See if this is a standard PCI to ISA Bridge from the Base Code and Class Code\r
-        //\r
-        if (Pci.Hdr.ClassCode[1] == PCI_CLASS_BRIDGE_ISA) {\r
-          Status = EFI_SUCCESS;\r
-        }\r
-\r
-        //\r
-        // See if this is an Intel PCI to ISA bridge in Positive Decode Mode\r
-        //\r
-        if (Pci.Hdr.ClassCode[1] == PCI_CLASS_BRIDGE_ISA_PDECODE &&\r
-            Pci.Hdr.VendorId     == 0x8086                          ) {\r
-          //\r
-          // See if this is on Function #0 to avoid false positives on\r
-          // PCI_CLASS_BRIDGE_OTHER that has the same value as\r
-          // PCI_CLASS_BRIDGE_ISA_PDECODE\r
-          //\r
-          Status = PciIo->GetLocation (\r
-                            PciIo,\r
-                            &SegmentNumber,\r
-                            &BusNumber,\r
-                            &DeviceNumber,\r
-                            &FunctionNumber\r
-                            );\r
-          if (!EFI_ERROR (Status) && FunctionNumber == 0) {\r
-            Status = EFI_SUCCESS;\r
-          } else {\r
-            Status = EFI_UNSUPPORTED;\r
-          }\r
-        }\r
-      }\r
-    }\r
-  }\r
-\r
-  gBS->CloseProtocol (\r
-         Controller,\r
-         &gEfiPciIoProtocolGuid,\r
-         This->DriverBindingHandle,\r
-         Controller\r
-         );\r
-\r
-  return Status;\r
-}\r
-\r
-/**\r
-  Install EFI_ISA_ACPI_PROTOCOL.\r
-\r
-  @param  This                 Driver Binding protocol instance pointer.\r
-  @param  ControllerHandle     Handle of device to bind driver to.\r
-  @param  RemainingDevicePath  Optional parameter use to pick a specific child\r
-                               device to start.\r
-\r
-  @retval EFI_SUCCESS          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
-EFI_STATUS\r
-EFIAPI\r
-PcatIsaAcpiDriverBindingStart (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
-  IN EFI_HANDLE                   Controller,\r
-  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath\r
-  )\r
-{\r
-  EFI_STATUS           Status;\r
-  EFI_PCI_IO_PROTOCOL  *PciIo;\r
-  PCAT_ISA_ACPI_DEV    *PcatIsaAcpiDev;\r
-  UINT64               Supports;\r
-  UINT64               OriginalAttributes;\r
-  BOOLEAN              Enabled;\r
-\r
-  Enabled = FALSE;\r
-  Supports = 0;\r
-  PcatIsaAcpiDev = NULL;\r
-  OriginalAttributes = 0;\r
-  //\r
-  // Open the PCI I/O Protocol Interface\r
-  //\r
-  PciIo = NULL;\r
-  Status = gBS->OpenProtocol (\r
-                  Controller,\r
-                  &gEfiPciIoProtocolGuid,\r
-                  (VOID**)&PciIo,\r
-                  This->DriverBindingHandle,\r
-                  Controller,\r
-                  EFI_OPEN_PROTOCOL_BY_DRIVER\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    goto Done;\r
-  }\r
-\r
-  //\r
-  // Get supported PCI attributes\r
-  //\r
-  Status = PciIo->Attributes (\r
-                    PciIo,\r
-                    EfiPciIoAttributeOperationSupported,\r
-                    0,\r
-                    &Supports\r
-                    );\r
-  if (EFI_ERROR (Status)) {\r
-    goto Done;\r
-  }\r
-\r
-  Supports &= (UINT64) (EFI_PCI_IO_ATTRIBUTE_ISA_IO | EFI_PCI_IO_ATTRIBUTE_ISA_IO_16);\r
-  if (Supports == 0 || Supports == (EFI_PCI_IO_ATTRIBUTE_ISA_IO | EFI_PCI_IO_ATTRIBUTE_ISA_IO_16)) {\r
-    Status = EFI_UNSUPPORTED;\r
-    goto Done;\r
-  }\r
-\r
-  Status = PciIo->Attributes (\r
-                    PciIo,\r
-                    EfiPciIoAttributeOperationGet,\r
-                    0,\r
-                    &OriginalAttributes\r
-                    );\r
-  if (EFI_ERROR (Status)) {\r
-    goto Done;\r
-  }\r
-\r
-  Status = PciIo->Attributes (\r
-                    PciIo,\r
-                    EfiPciIoAttributeOperationEnable,\r
-                    EFI_PCI_DEVICE_ENABLE | Supports | EFI_PCI_IO_ATTRIBUTE_ISA_MOTHERBOARD_IO,\r
-                    NULL\r
-                    );\r
-  if (EFI_ERROR (Status)) {\r
-    goto Done;\r
-  }\r
-\r
-  Enabled = TRUE;\r
-  //\r
-  // Allocate memory for the PCAT ISA ACPI Device structure\r
-  //\r
-  PcatIsaAcpiDev = NULL;\r
-  Status = gBS->AllocatePool (\r
-                  EfiBootServicesData,\r
-                  sizeof(PCAT_ISA_ACPI_DEV),\r
-                  (VOID**)&PcatIsaAcpiDev\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    goto Done;\r
-  }\r
-\r
-  //\r
-  // Initialize the PCAT ISA ACPI Device structure\r
-  //\r
-  PcatIsaAcpiDev->Signature          = PCAT_ISA_ACPI_DEV_SIGNATURE;\r
-  PcatIsaAcpiDev->Handle             = Controller;\r
-  PcatIsaAcpiDev->PciIo              = PciIo;\r
-  PcatIsaAcpiDev->OriginalAttributes = OriginalAttributes;\r
-\r
-  //\r
-  // Initialize PcatIsaAcpiDeviceList\r
-  //\r
-  InitializePcatIsaAcpiDeviceList ();\r
-\r
-  //\r
-  // IsaAcpi interface\r
-  //\r
-  (PcatIsaAcpiDev->IsaAcpi).DeviceEnumerate  = IsaDeviceEnumerate;\r
-  (PcatIsaAcpiDev->IsaAcpi).SetPower         = IsaDeviceSetPower;\r
-  (PcatIsaAcpiDev->IsaAcpi).GetCurResource   = IsaGetCurrentResource;\r
-  (PcatIsaAcpiDev->IsaAcpi).GetPosResource   = IsaGetPossibleResource;\r
-  (PcatIsaAcpiDev->IsaAcpi).SetResource      = IsaSetResource;\r
-  (PcatIsaAcpiDev->IsaAcpi).EnableDevice     = IsaEnableDevice;\r
-  (PcatIsaAcpiDev->IsaAcpi).InitDevice       = IsaInitDevice;\r
-  (PcatIsaAcpiDev->IsaAcpi).InterfaceInit    = IsaInterfaceInit;\r
-\r
-  //\r
-  // Install the ISA ACPI Protocol interface\r
-  //\r
-  Status = gBS->InstallMultipleProtocolInterfaces (\r
-                  &Controller,\r
-                  &gEfiIsaAcpiProtocolGuid, &PcatIsaAcpiDev->IsaAcpi,\r
-                  NULL\r
-                  );\r
-\r
-Done:\r
-  if (EFI_ERROR (Status)) {\r
-    if (PciIo != NULL && Enabled) {\r
-      PciIo->Attributes (\r
-               PciIo,\r
-               EfiPciIoAttributeOperationSet,\r
-               OriginalAttributes,\r
-               NULL\r
-               );\r
-    }\r
-    gBS->CloseProtocol (\r
-           Controller,\r
-           &gEfiPciIoProtocolGuid,\r
-           This->DriverBindingHandle,\r
-           Controller\r
-           );\r
-    if (PcatIsaAcpiDev != NULL) {\r
-      gBS->FreePool (PcatIsaAcpiDev);\r
-    }\r
-    return Status;\r
-  }\r
-\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-\r
-/**\r
-  Stop this driver on ControllerHandle. Support stopping any child handles\r
-  created by this driver.\r
-\r
-  @param  This              Protocol instance pointer.\r
-  @param  ControllerHandle  Handle of device to stop driver on\r
-  @param  NumberOfChildren  Number of Handles in ChildHandleBuffer. If number of\r
-                            children is zero stop the entire bus driver.\r
-  @param  ChildHandleBuffer List of Child Handles to Stop.\r
-\r
-  @retval EFI_SUCCESS       This driver is removed ControllerHandle\r
-  @retval other             This driver was not removed from this device\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PcatIsaAcpiDriverBindingStop (\r
-  IN EFI_DRIVER_BINDING_PROTOCOL  *This,\r
-  IN EFI_HANDLE                   Controller,\r
-  IN UINTN                        NumberOfChildren,\r
-  IN EFI_HANDLE                   *ChildHandleBuffer\r
-  )\r
-{\r
-  EFI_STATUS             Status;\r
-  EFI_ISA_ACPI_PROTOCOL  *IsaAcpi;\r
-  PCAT_ISA_ACPI_DEV      *PcatIsaAcpiDev;\r
-\r
-  //\r
-  // Get the ISA ACPI Protocol Interface\r
-  //\r
-  Status = gBS->OpenProtocol (\r
-                  Controller,\r
-                  &gEfiIsaAcpiProtocolGuid,\r
-                  (VOID**)&IsaAcpi,\r
-                  This->DriverBindingHandle,\r
-                  Controller,\r
-                  EFI_OPEN_PROTOCOL_GET_PROTOCOL\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  //\r
-  // Get the PCAT ISA ACPI Device structure from the ISA ACPI Protocol\r
-  //\r
-  PcatIsaAcpiDev = PCAT_ISA_ACPI_DEV_FROM_THIS (IsaAcpi);\r
-\r
-  //\r
-  // Restore PCI attributes\r
-  //\r
-  Status = PcatIsaAcpiDev->PciIo->Attributes (\r
-                                    PcatIsaAcpiDev->PciIo,\r
-                                    EfiPciIoAttributeOperationSet,\r
-                                    PcatIsaAcpiDev->OriginalAttributes,\r
-                                    NULL\r
-                                    );\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  //\r
-  // Uninstall protocol interface: EFI_ISA_ACPI_PROTOCOL\r
-  //\r
-  Status = gBS->UninstallProtocolInterface (\r
-                  Controller,\r
-                  &gEfiIsaAcpiProtocolGuid, &PcatIsaAcpiDev->IsaAcpi\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  gBS->CloseProtocol (\r
-         Controller,\r
-         &gEfiPciIoProtocolGuid,\r
-         This->DriverBindingHandle,\r
-         Controller\r
-         );\r
-\r
-  gBS->FreePool (PcatIsaAcpiDev);\r
-\r
-  return EFI_SUCCESS;\r
-}\r