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