]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciHotPlugSupport.h
Add PciBus & IdeBus
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Pci / PciBus / Dxe / PciHotPlugSupport.h
diff --git a/IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciHotPlugSupport.h b/IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciHotPlugSupport.h
new file mode 100644 (file)
index 0000000..7b15a3c
--- /dev/null
@@ -0,0 +1,264 @@
+/*++\r
+\r
+Copyright (c) 2006 - 2007, Intel Corporation                                                         \r
+All rights reserved. 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
+\r
+Module Name:\r
+\r
+  PciHotPlugSupport.h\r
+  \r
+Abstract:\r
+\r
+  \r
+\r
+Revision History\r
+\r
+--*/\r
+\r
+#ifndef _EFI_PCI_HOT_PLUG_SUPPORT_H\r
+#define _EFI_PCI_HOT_PLUG_SUPPORT_H\r
+\r
+\r
+//\r
+// stall 1 second\r
+//\r
+#define STALL_1_SECOND        1000000 \r
+\r
+typedef struct {\r
+  EFI_EVENT Event;\r
+  BOOLEAN   Initialized;\r
+  VOID      *Padding;\r
+} ROOT_HPC_DATA;\r
+\r
+extern EFI_PCI_HOT_PLUG_INIT_PROTOCOL *gPciHotPlugInit;\r
+extern EFI_HPC_LOCATION               *gPciRootHpcPool;\r
+extern UINTN                          gPciRootHpcCount;\r
+extern ROOT_HPC_DATA                  *gPciRootHpcData;\r
+\r
+VOID\r
+EFIAPI\r
+PciHPCInitialized (\r
+  IN EFI_EVENT    Event,\r
+  IN VOID         *Context\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  Event   - TODO: add argument description\r
+  Context - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+BOOLEAN\r
+EfiCompareDevicePath (\r
+  IN EFI_DEVICE_PATH_PROTOCOL *DevicePath1,\r
+  IN EFI_DEVICE_PATH_PROTOCOL *DevicePath2\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  DevicePath1 - TODO: add argument description\r
+  DevicePath2 - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+EFI_STATUS\r
+InitializeHotPlugSupport (\r
+  VOID\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  None\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+EFI_STATUS\r
+IsPciHotPlugBus (\r
+  PCI_IO_DEVICE                       *PciIoDevice\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  PciIoDevice - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+BOOLEAN\r
+IsRootPciHotPlugBus (\r
+  IN EFI_DEVICE_PATH_PROTOCOL         *HpbDevicePath,\r
+  OUT UINTN                           *HpIndex\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  HpbDevicePath - TODO: add argument description\r
+  HpIndex       - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+BOOLEAN\r
+IsRootPciHotPlugController (\r
+  IN EFI_DEVICE_PATH_PROTOCOL         *HpcDevicePath,\r
+  OUT UINTN                           *HpIndex\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  HpcDevicePath - TODO: add argument description\r
+  HpIndex       - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+EFI_STATUS\r
+CreateEventForHpc (\r
+  IN UINTN       HpIndex,\r
+  OUT EFI_EVENT  *Event\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  HpIndex - TODO: add argument description\r
+  Event   - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+EFI_STATUS\r
+AllRootHPCInitialized (\r
+  IN  UINTN           TimeoutInMicroSeconds\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+  TimeoutInMicroSeconds - microseconds to wait for all root hpc's initialization\r
+\r
+Returns:\r
+  EFI_SUCCESS - All root hpc's initialization is finished before the timeout\r
+  EFI_TIMEOUT - Time out\r
+\r
+--*/\r
+;\r
+\r
+EFI_STATUS\r
+IsSHPC (\r
+  PCI_IO_DEVICE                       *PciIoDevice\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  PciIoDevice - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+EFI_STATUS\r
+GetResourcePaddingForHpb (\r
+  IN PCI_IO_DEVICE *PciIoDevice\r
+  )\r
+/*++\r
+\r
+Routine Description:\r
+\r
+  TODO: Add function description\r
+\r
+Arguments:\r
+\r
+  PciIoDevice - TODO: add argument description\r
+\r
+Returns:\r
+\r
+  TODO: add return values\r
+\r
+--*/\r
+;\r
+\r
+#endif\r