]> git.proxmox.com Git - mirror_edk2.git/blame - IntelFrameworkModulePkg/Bus/Pci/PciBus/Dxe/PciHotPlugSupport.h
Add PciBus & IdeBus
[mirror_edk2.git] / IntelFrameworkModulePkg / Bus / Pci / PciBus / Dxe / PciHotPlugSupport.h
CommitLineData
ead42efc 1/*++\r
2\r
3Copyright (c) 2006 - 2007, 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//\r
29// stall 1 second\r
30//\r
31#define STALL_1_SECOND 1000000 \r
32\r
33typedef struct {\r
34 EFI_EVENT Event;\r
35 BOOLEAN Initialized;\r
36 VOID *Padding;\r
37} ROOT_HPC_DATA;\r
38\r
39extern EFI_PCI_HOT_PLUG_INIT_PROTOCOL *gPciHotPlugInit;\r
40extern EFI_HPC_LOCATION *gPciRootHpcPool;\r
41extern UINTN gPciRootHpcCount;\r
42extern ROOT_HPC_DATA *gPciRootHpcData;\r
43\r
44VOID\r
45EFIAPI\r
46PciHPCInitialized (\r
47 IN EFI_EVENT Event,\r
48 IN VOID *Context\r
49 )\r
50/*++\r
51\r
52Routine Description:\r
53\r
54 TODO: Add function description\r
55\r
56Arguments:\r
57\r
58 Event - TODO: add argument description\r
59 Context - TODO: add argument description\r
60\r
61Returns:\r
62\r
63 TODO: add return values\r
64\r
65--*/\r
66;\r
67\r
68BOOLEAN\r
69EfiCompareDevicePath (\r
70 IN EFI_DEVICE_PATH_PROTOCOL *DevicePath1,\r
71 IN EFI_DEVICE_PATH_PROTOCOL *DevicePath2\r
72 )\r
73/*++\r
74\r
75Routine Description:\r
76\r
77 TODO: Add function description\r
78\r
79Arguments:\r
80\r
81 DevicePath1 - TODO: add argument description\r
82 DevicePath2 - TODO: add argument description\r
83\r
84Returns:\r
85\r
86 TODO: add return values\r
87\r
88--*/\r
89;\r
90\r
91EFI_STATUS\r
92InitializeHotPlugSupport (\r
93 VOID\r
94 )\r
95/*++\r
96\r
97Routine Description:\r
98\r
99 TODO: Add function description\r
100\r
101Arguments:\r
102\r
103 None\r
104\r
105Returns:\r
106\r
107 TODO: add return values\r
108\r
109--*/\r
110;\r
111\r
112EFI_STATUS\r
113IsPciHotPlugBus (\r
114 PCI_IO_DEVICE *PciIoDevice\r
115 )\r
116/*++\r
117\r
118Routine Description:\r
119\r
120 TODO: Add function description\r
121\r
122Arguments:\r
123\r
124 PciIoDevice - TODO: add argument description\r
125\r
126Returns:\r
127\r
128 TODO: add return values\r
129\r
130--*/\r
131;\r
132\r
133BOOLEAN\r
134IsRootPciHotPlugBus (\r
135 IN EFI_DEVICE_PATH_PROTOCOL *HpbDevicePath,\r
136 OUT UINTN *HpIndex\r
137 )\r
138/*++\r
139\r
140Routine Description:\r
141\r
142 TODO: Add function description\r
143\r
144Arguments:\r
145\r
146 HpbDevicePath - TODO: add argument description\r
147 HpIndex - TODO: add argument description\r
148\r
149Returns:\r
150\r
151 TODO: add return values\r
152\r
153--*/\r
154;\r
155\r
156BOOLEAN\r
157IsRootPciHotPlugController (\r
158 IN EFI_DEVICE_PATH_PROTOCOL *HpcDevicePath,\r
159 OUT UINTN *HpIndex\r
160 )\r
161/*++\r
162\r
163Routine Description:\r
164\r
165 TODO: Add function description\r
166\r
167Arguments:\r
168\r
169 HpcDevicePath - TODO: add argument description\r
170 HpIndex - TODO: add argument description\r
171\r
172Returns:\r
173\r
174 TODO: add return values\r
175\r
176--*/\r
177;\r
178\r
179EFI_STATUS\r
180CreateEventForHpc (\r
181 IN UINTN HpIndex,\r
182 OUT EFI_EVENT *Event\r
183 )\r
184/*++\r
185\r
186Routine Description:\r
187\r
188 TODO: Add function description\r
189\r
190Arguments:\r
191\r
192 HpIndex - TODO: add argument description\r
193 Event - TODO: add argument description\r
194\r
195Returns:\r
196\r
197 TODO: add return values\r
198\r
199--*/\r
200;\r
201\r
202EFI_STATUS\r
203AllRootHPCInitialized (\r
204 IN UINTN TimeoutInMicroSeconds\r
205 )\r
206/*++\r
207\r
208Routine Description:\r
209\r
210 TODO: Add function description\r
211\r
212Arguments:\r
213 TimeoutInMicroSeconds - microseconds to wait for all root hpc's initialization\r
214\r
215Returns:\r
216 EFI_SUCCESS - All root hpc's initialization is finished before the timeout\r
217 EFI_TIMEOUT - Time out\r
218\r
219--*/\r
220;\r
221\r
222EFI_STATUS\r
223IsSHPC (\r
224 PCI_IO_DEVICE *PciIoDevice\r
225 )\r
226/*++\r
227\r
228Routine Description:\r
229\r
230 TODO: Add function description\r
231\r
232Arguments:\r
233\r
234 PciIoDevice - TODO: add argument description\r
235\r
236Returns:\r
237\r
238 TODO: add return values\r
239\r
240--*/\r
241;\r
242\r
243EFI_STATUS\r
244GetResourcePaddingForHpb (\r
245 IN PCI_IO_DEVICE *PciIoDevice\r
246 )\r
247/*++\r
248\r
249Routine Description:\r
250\r
251 TODO: Add function description\r
252\r
253Arguments:\r
254\r
255 PciIoDevice - TODO: add argument description\r
256\r
257Returns:\r
258\r
259 TODO: add return values\r
260\r
261--*/\r
262;\r
263\r
264#endif\r