TianoCore EDK2 master
Loading...
Searching...
No Matches
PciHotPlugSupport.h
Go to the documentation of this file.
1
9#ifndef _EFI_PCI_HOT_PLUG_SUPPORT_H_
10#define _EFI_PCI_HOT_PLUG_SUPPORT_H_
11
12//
13// stall 1 second, its unit is 100ns
14//
15#define STALL_1_SECOND 1000000
16
17//
18// PCI Hot Plug controller private data
19//
20typedef struct {
21 EFI_EVENT Event;
22 BOOLEAN Found;
23 BOOLEAN Initialized;
24 VOID *Padding;
26
27//
28// Reference of some global variables
29//
30extern EFI_PCI_HOT_PLUG_INIT_PROTOCOL *gPciHotPlugInit;
31extern EFI_HPC_LOCATION *gPciRootHpcPool;
32extern ROOT_HPC_DATA *gPciRootHpcData;
33
41VOID
42EFIAPI
44 IN EFI_EVENT Event,
45 IN VOID *Context
46 );
47
58BOOLEAN
60 IN EFI_DEVICE_PATH_PROTOCOL *DevicePath1,
61 IN EFI_DEVICE_PATH_PROTOCOL *DevicePath2
62 );
63
79 VOID
80 );
81
91BOOLEAN
93 PCI_IO_DEVICE *PciIoDevice
94 );
95
107BOOLEAN
109 IN EFI_DEVICE_PATH_PROTOCOL *HpbDevicePath,
110 OUT UINTN *HpIndex OPTIONAL
111 );
112
124BOOLEAN
126 IN EFI_DEVICE_PATH_PROTOCOL *HpcDevicePath,
127 OUT UINTN *HpIndex
128 );
129
141 IN UINTN HpIndex,
142 OUT EFI_EVENT *Event
143 );
144
156 IN UINTN TimeoutInMicroSeconds
157 );
158
168BOOLEAN
169IsSHPC (
170 IN PCI_IO_DEVICE *PciIoDevice
171 );
172
189BOOLEAN
191 IN PCI_IO_DEVICE *PciIoDevice
192 );
193
200VOID
202 IN PCI_IO_DEVICE *PciIoDevice
203 );
204
205#endif
UINT64 UINTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
EFI_STATUS CreateEventForHpc(IN UINTN HpIndex, OUT EFI_EVENT *Event)
BOOLEAN SupportsPcieHotplug(IN PCI_IO_DEVICE *PciIoDevice)
BOOLEAN IsRootPciHotPlugController(IN EFI_DEVICE_PATH_PROTOCOL *HpcDevicePath, OUT UINTN *HpIndex)
BOOLEAN IsRootPciHotPlugBus(IN EFI_DEVICE_PATH_PROTOCOL *HpbDevicePath, OUT UINTN *HpIndex OPTIONAL)
VOID GetResourcePaddingForHpb(IN PCI_IO_DEVICE *PciIoDevice)
BOOLEAN EfiCompareDevicePath(IN EFI_DEVICE_PATH_PROTOCOL *DevicePath1, IN EFI_DEVICE_PATH_PROTOCOL *DevicePath2)
BOOLEAN IsSHPC(IN PCI_IO_DEVICE *PciIoDevice)
BOOLEAN IsPciHotPlugBus(PCI_IO_DEVICE *PciIoDevice)
VOID EFIAPI PciHPCInitialized(IN EFI_EVENT Event, IN VOID *Context)
EFI_STATUS AllRootHPCInitialized(IN UINTN TimeoutInMicroSeconds)
EFI_STATUS InitializeHotPlugSupport(VOID)
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
VOID * EFI_EVENT
Definition: UefiBaseType.h:37