]> git.proxmox.com Git - mirror_edk2.git/blame - EdkModulePkg/Bus/Pci/PciBus/Dxe/PciHotPlugSupport.h
1) Use FeatureFlag PcdPciBusHotplugDeviceSupport to merge LightPciLib.c with PcdLib.c.
[mirror_edk2.git] / EdkModulePkg / Bus / Pci / PciBus / Dxe / PciHotPlugSupport.h
CommitLineData
878ddf1f 1/*++\r
2\r
3Copyright (c) 2006, Intel Corporation \r
4All rights reserved. This program and the accompanying materials \r
5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name:\r
13\r
14 PciHotPlugSupport.h\r
15 \r
16Abstract:\r
17\r
18 \r
19\r
20Revision History\r
21\r
22--*/\r
23\r
24#ifndef _EFI_PCI_HOT_PLUG_SUPPORT_H\r
25#define _EFI_PCI_HOT_PLUG_SUPPORT_H\r
26\r
27//\r
28// stall 1 ms\r
29//\r
30#define STALL_1_MILLI_SECOND 1000 \r
31\r
32//\r
33// stall 1 second\r
34//\r
35#define STALL_1_SECOND 1000000 \r
36\r
37typedef struct {\r
38 EFI_EVENT Event;\r
39 BOOLEAN Initialized;\r
40 VOID *Padding;\r
41} ROOT_HPC_DATA;\r
42\r
43extern EFI_PCI_HOT_PLUG_INIT_PROTOCOL *gPciHotPlugInit;\r
44extern EFI_HPC_LOCATION *gPciRootHpcPool;\r
45extern UINTN gPciRootHpcCount;\r
46extern ROOT_HPC_DATA *gPciRootHpcData;\r
47\r
48VOID\r
49EFIAPI\r
50PciHPCInitialized (\r
51 IN EFI_EVENT Event,\r
52 IN VOID *Context\r
53 )\r
54/*++\r
55\r
56Routine Description:\r
57\r
58 TODO: Add function description\r
59\r
60Arguments:\r
61\r
62 Event - TODO: add argument description\r
63 Context - TODO: add argument description\r
64\r
65Returns:\r
66\r
67 TODO: add return values\r
68\r
69--*/\r
70;\r
71\r
72BOOLEAN\r
73EfiCompareDevicePath (\r
74 IN EFI_DEVICE_PATH_PROTOCOL *DevicePath1,\r
75 IN EFI_DEVICE_PATH_PROTOCOL *DevicePath2\r
76 )\r
77/*++\r
78\r
79Routine Description:\r
80\r
81 TODO: Add function description\r
82\r
83Arguments:\r
84\r
85 DevicePath1 - TODO: add argument description\r
86 DevicePath2 - TODO: add argument description\r
87\r
88Returns:\r
89\r
90 TODO: add return values\r
91\r
92--*/\r
93;\r
94\r
95EFI_STATUS\r
96InitializeHotPlugSupport (\r
97 VOID\r
98 )\r
99/*++\r
100\r
101Routine Description:\r
102\r
103 TODO: Add function description\r
104\r
105Arguments:\r
106\r
107 None\r
108\r
109Returns:\r
110\r
111 TODO: add return values\r
112\r
113--*/\r
114;\r
115\r
116EFI_STATUS\r
117IsPciHotPlugBus (\r
118 PCI_IO_DEVICE *PciIoDevice\r
119 )\r
120/*++\r
121\r
122Routine Description:\r
123\r
124 TODO: Add function description\r
125\r
126Arguments:\r
127\r
128 PciIoDevice - TODO: add argument description\r
129\r
130Returns:\r
131\r
132 TODO: add return values\r
133\r
134--*/\r
135;\r
136\r
137BOOLEAN\r
138IsRootPciHotPlugBus (\r
139 IN EFI_DEVICE_PATH_PROTOCOL *HpbDevicePath,\r
140 OUT UINTN *HpIndex\r
141 )\r
142/*++\r
143\r
144Routine Description:\r
145\r
146 TODO: Add function description\r
147\r
148Arguments:\r
149\r
150 HpbDevicePath - TODO: add argument description\r
151 HpIndex - TODO: add argument description\r
152\r
153Returns:\r
154\r
155 TODO: add return values\r
156\r
157--*/\r
158;\r
159\r
160BOOLEAN\r
161IsRootPciHotPlugController (\r
162 IN EFI_DEVICE_PATH_PROTOCOL *HpcDevicePath,\r
163 OUT UINTN *HpIndex\r
164 )\r
165/*++\r
166\r
167Routine Description:\r
168\r
169 TODO: Add function description\r
170\r
171Arguments:\r
172\r
173 HpcDevicePath - TODO: add argument description\r
174 HpIndex - TODO: add argument description\r
175\r
176Returns:\r
177\r
178 TODO: add return values\r
179\r
180--*/\r
181;\r
182\r
183EFI_STATUS\r
184CreateEventForHpc (\r
185 IN UINTN HpIndex,\r
186 OUT EFI_EVENT *Event\r
187 )\r
188/*++\r
189\r
190Routine Description:\r
191\r
192 TODO: Add function description\r
193\r
194Arguments:\r
195\r
196 HpIndex - TODO: add argument description\r
197 Event - TODO: add argument description\r
198\r
199Returns:\r
200\r
201 TODO: add return values\r
202\r
203--*/\r
204;\r
205\r
206EFI_STATUS\r
207AllRootHPCInitialized (\r
208 IN UINTN TimeoutInMilliSeconds\r
209 )\r
210/*++\r
211\r
212Routine Description:\r
213\r
214 TODO: Add function description\r
215\r
216Arguments:\r
217\r
218 TimeoutInMilliSeconds - TODO: add argument description\r
219\r
220Returns:\r
221\r
222 TODO: add return values\r
223\r
224--*/\r
225;\r
226\r
227EFI_STATUS\r
228IsSHPC (\r
229 PCI_IO_DEVICE *PciIoDevice\r
230 )\r
231/*++\r
232\r
233Routine Description:\r
234\r
235 TODO: Add function description\r
236\r
237Arguments:\r
238\r
239 PciIoDevice - TODO: add argument description\r
240\r
241Returns:\r
242\r
243 TODO: add return values\r
244\r
245--*/\r
246;\r
247\r
248EFI_STATUS\r
249GetResourcePaddingForHpb (\r
250 IN PCI_IO_DEVICE *PciIoDevice\r
251 )\r
252/*++\r
253\r
254Routine Description:\r
255\r
256 TODO: Add function description\r
257\r
258Arguments:\r
259\r
260 PciIoDevice - TODO: add argument description\r
261\r
262Returns:\r
263\r
264 TODO: add return values\r
265\r
266--*/\r
267;\r
268\r
269#endif\r