blob: 7fbe4bb476dcdf0ef2fd70173a72da67305eabf0 [file] [log] [blame]
Vishal Bhoj82c80712015-12-15 21:13:33 +05301/*++
2
3Copyright (c) 2005 - 2006, Intel Corporation. All rights reserved.<BR>
4This program and the accompanying materials
5are licensed and made available under the terms and conditions of the BSD License
6which accompanies this distribution. The full text of the license may be found at
7http://opensource.org/licenses/bsd-license.php
8
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12Module Name:
13
14 PciDeviceSupport.h
15
16Abstract:
17
18
19
20Revision History
21
22--*/
23
24#ifndef _EFI_PCI_DEVICE_SUPPORT_H
25#define _EFI_PCI_DEVICE_SUPPORT_H
26
27EFI_STATUS
28InitializePciDevicePool (
29 VOID
30 )
31/*++
32
33Routine Description:
34
35 TODO: Add function description
36
37Arguments:
38
39 None
40
41Returns:
42
43 TODO: add return values
44
45--*/
46;
47
48EFI_STATUS
49InsertPciDevice (
50 PCI_IO_DEVICE *Bridge,
51 PCI_IO_DEVICE *PciDeviceNode
52 )
53/*++
54
55Routine Description:
56
57 TODO: Add function description
58
59Arguments:
60
61 Bridge - TODO: add argument description
62 PciDeviceNode - TODO: add argument description
63
64Returns:
65
66 TODO: add return values
67
68--*/
69;
70
71EFI_STATUS
72DestroyPciDeviceTree (
73 IN PCI_IO_DEVICE *Bridge
74 )
75/*++
76
77Routine Description:
78
79 TODO: Add function description
80
81Arguments:
82
83 Bridge - TODO: add argument description
84
85Returns:
86
87 TODO: add return values
88
89--*/
90;
91
92EFI_STATUS
93DestroyRootBridgeByHandle (
94 EFI_HANDLE Controller
95 )
96/*++
97
98Routine Description:
99
100 TODO: Add function description
101
102Arguments:
103
104 Controller - TODO: add argument description
105
106Returns:
107
108 TODO: add return values
109
110--*/
111;
112
113EFI_STATUS
114RegisterPciDevice (
115 IN EFI_HANDLE Controller,
116 IN PCI_IO_DEVICE *PciIoDevice,
117 OUT EFI_HANDLE *Handle OPTIONAL
118 )
119/*++
120
121Routine Description:
122
123 This function registers the PCI IO device. It creates a handle for this PCI IO device
124 (if the handle does not exist), attaches appropriate protocols onto the handle, does
125 necessary initialization, and sets up parent/child relationship with its bus controller.
126
127Arguments:
128
129 Controller - An EFI handle for the PCI bus controller.
130 PciIoDevice - A PCI_IO_DEVICE pointer to the PCI IO device to be registered.
131 Handle - A pointer to hold the EFI handle for the PCI IO device.
132
133Returns:
134
135 EFI_SUCCESS - The PCI device is successfully registered.
136 Others - An error occurred when registering the PCI device.
137
138--*/
139;
140
141EFI_STATUS
142DeRegisterPciDevice (
143 IN EFI_HANDLE Controller,
144 IN EFI_HANDLE Handle
145 )
146/*++
147
148Routine Description:
149
150 TODO: Add function description
151
152Arguments:
153
154 Controller - TODO: add argument description
155 Handle - TODO: add argument description
156
157Returns:
158
159 TODO: add return values
160
161--*/
162;
163
164EFI_STATUS
165StartPciDevices (
166 IN EFI_HANDLE Controller,
167 IN EFI_DEVICE_PATH_PROTOCOL *RemainingDevicePath
168 )
169/*++
170
171Routine Description:
172
173 TODO: Add function description
174
175Arguments:
176
177 Controller - TODO: add argument description
178 RemainingDevicePath - TODO: add argument description
179
180Returns:
181
182 TODO: add return values
183
184--*/
185;
186
187PCI_IO_DEVICE *
188CreateRootBridge (
189 IN EFI_HANDLE RootBridgeHandle
190 )
191/*++
192
193Routine Description:
194
195 TODO: Add function description
196
197Arguments:
198
199 RootBridgeHandle - TODO: add argument description
200
201Returns:
202
203 TODO: add return values
204
205--*/
206;
207
208PCI_IO_DEVICE *
209GetRootBridgeByHandle (
210 EFI_HANDLE RootBridgeHandle
211 )
212/*++
213
214Routine Description:
215
216 TODO: Add function description
217
218Arguments:
219
220 RootBridgeHandle - TODO: add argument description
221
222Returns:
223
224 TODO: add return values
225
226--*/
227;
228
229EFI_STATUS
230InsertRootBridge (
231 PCI_IO_DEVICE *RootBridge
232);
233
234EFI_STATUS
235DestroyRootBridge (
236 IN PCI_IO_DEVICE *RootBridge
237);
238
239BOOLEAN
240RootBridgeExisted (
241 IN EFI_HANDLE RootBridgeHandle
242 )
243/*++
244
245Routine Description:
246
247 TODO: Add function description
248
249Arguments:
250
251 RootBridgeHandle - TODO: add argument description
252
253Returns:
254
255 TODO: add return values
256
257--*/
258;
259
260BOOLEAN
261PciDeviceExisted (
262 IN PCI_IO_DEVICE *Bridge,
263 IN PCI_IO_DEVICE *PciIoDevice
264 )
265/*++
266
267Routine Description:
268
269 TODO: Add function description
270
271Arguments:
272
273 Bridge - TODO: add argument description
274 PciIoDevice - TODO: add argument description
275
276Returns:
277
278 TODO: add return values
279
280--*/
281;
282
283PCI_IO_DEVICE *
284ActiveVGADeviceOnTheSameSegment (
285 IN PCI_IO_DEVICE *VgaDevice
286 )
287/*++
288
289Routine Description:
290
291 TODO: Add function description
292
293Arguments:
294
295 VgaDevice - TODO: add argument description
296
297Returns:
298
299 TODO: add return values
300
301--*/
302;
303
304PCI_IO_DEVICE *
305ActiveVGADeviceOnTheRootBridge (
306 IN PCI_IO_DEVICE *RootBridge
307 )
308/*++
309
310Routine Description:
311
312 TODO: Add function description
313
314Arguments:
315
316 RootBridge - TODO: add argument description
317
318Returns:
319
320 TODO: add return values
321
322--*/
323;
324#endif