• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*++
2 
3 Copyright (c) 2005 - 2006, Intel Corporation. All rights reserved.<BR>
4 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   PciDeviceSupport.h
15 
16 Abstract:
17 
18 
19 
20 Revision History
21 
22 --*/
23 
24 #ifndef _EFI_PCI_DEVICE_SUPPORT_H
25 #define _EFI_PCI_DEVICE_SUPPORT_H
26 
27 EFI_STATUS
28 InitializePciDevicePool (
29   VOID
30   )
31 /*++
32 
33 Routine Description:
34 
35   TODO: Add function description
36 
37 Arguments:
38 
39   None
40 
41 Returns:
42 
43   TODO: add return values
44 
45 --*/
46 ;
47 
48 EFI_STATUS
49 InsertPciDevice (
50   PCI_IO_DEVICE *Bridge,
51   PCI_IO_DEVICE *PciDeviceNode
52   )
53 /*++
54 
55 Routine Description:
56 
57   TODO: Add function description
58 
59 Arguments:
60 
61   Bridge        - TODO: add argument description
62   PciDeviceNode - TODO: add argument description
63 
64 Returns:
65 
66   TODO: add return values
67 
68 --*/
69 ;
70 
71 EFI_STATUS
72 DestroyPciDeviceTree (
73   IN PCI_IO_DEVICE *Bridge
74   )
75 /*++
76 
77 Routine Description:
78 
79   TODO: Add function description
80 
81 Arguments:
82 
83   Bridge  - TODO: add argument description
84 
85 Returns:
86 
87   TODO: add return values
88 
89 --*/
90 ;
91 
92 EFI_STATUS
93 DestroyRootBridgeByHandle (
94   EFI_HANDLE Controller
95   )
96 /*++
97 
98 Routine Description:
99 
100   TODO: Add function description
101 
102 Arguments:
103 
104   Controller  - TODO: add argument description
105 
106 Returns:
107 
108   TODO: add return values
109 
110 --*/
111 ;
112 
113 EFI_STATUS
114 RegisterPciDevice (
115   IN  EFI_HANDLE                     Controller,
116   IN  PCI_IO_DEVICE                  *PciIoDevice,
117   OUT EFI_HANDLE                     *Handle OPTIONAL
118   )
119 /*++
120 
121 Routine 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 
127 Arguments:
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 
133 Returns:
134 
135   EFI_SUCCESS   - The PCI device is successfully registered.
136   Others        - An error occurred when registering the PCI device.
137 
138 --*/
139 ;
140 
141 EFI_STATUS
142 DeRegisterPciDevice (
143   IN  EFI_HANDLE                     Controller,
144   IN  EFI_HANDLE                     Handle
145   )
146 /*++
147 
148 Routine Description:
149 
150   TODO: Add function description
151 
152 Arguments:
153 
154   Controller  - TODO: add argument description
155   Handle      - TODO: add argument description
156 
157 Returns:
158 
159   TODO: add return values
160 
161 --*/
162 ;
163 
164 EFI_STATUS
165 StartPciDevices (
166   IN EFI_HANDLE                         Controller,
167   IN EFI_DEVICE_PATH_PROTOCOL           *RemainingDevicePath
168   )
169 /*++
170 
171 Routine Description:
172 
173   TODO: Add function description
174 
175 Arguments:
176 
177   Controller          - TODO: add argument description
178   RemainingDevicePath - TODO: add argument description
179 
180 Returns:
181 
182   TODO: add return values
183 
184 --*/
185 ;
186 
187 PCI_IO_DEVICE *
188 CreateRootBridge (
189   IN EFI_HANDLE RootBridgeHandle
190   )
191 /*++
192 
193 Routine Description:
194 
195   TODO: Add function description
196 
197 Arguments:
198 
199   RootBridgeHandle  - TODO: add argument description
200 
201 Returns:
202 
203   TODO: add return values
204 
205 --*/
206 ;
207 
208 PCI_IO_DEVICE *
209 GetRootBridgeByHandle (
210   EFI_HANDLE RootBridgeHandle
211   )
212 /*++
213 
214 Routine Description:
215 
216   TODO: Add function description
217 
218 Arguments:
219 
220   RootBridgeHandle  - TODO: add argument description
221 
222 Returns:
223 
224   TODO: add return values
225 
226 --*/
227 ;
228 
229 EFI_STATUS
230 InsertRootBridge (
231   PCI_IO_DEVICE *RootBridge
232 );
233 
234 EFI_STATUS
235 DestroyRootBridge (
236    IN PCI_IO_DEVICE *RootBridge
237 );
238 
239 BOOLEAN
240 RootBridgeExisted (
241   IN EFI_HANDLE RootBridgeHandle
242   )
243 /*++
244 
245 Routine Description:
246 
247   TODO: Add function description
248 
249 Arguments:
250 
251   RootBridgeHandle  - TODO: add argument description
252 
253 Returns:
254 
255   TODO: add return values
256 
257 --*/
258 ;
259 
260 BOOLEAN
261 PciDeviceExisted (
262   IN PCI_IO_DEVICE    *Bridge,
263   IN PCI_IO_DEVICE    *PciIoDevice
264   )
265 /*++
266 
267 Routine Description:
268 
269   TODO: Add function description
270 
271 Arguments:
272 
273   Bridge      - TODO: add argument description
274   PciIoDevice - TODO: add argument description
275 
276 Returns:
277 
278   TODO: add return values
279 
280 --*/
281 ;
282 
283 PCI_IO_DEVICE *
284 ActiveVGADeviceOnTheSameSegment (
285   IN PCI_IO_DEVICE        *VgaDevice
286   )
287 /*++
288 
289 Routine Description:
290 
291   TODO: Add function description
292 
293 Arguments:
294 
295   VgaDevice - TODO: add argument description
296 
297 Returns:
298 
299   TODO: add return values
300 
301 --*/
302 ;
303 
304 PCI_IO_DEVICE *
305 ActiveVGADeviceOnTheRootBridge (
306   IN PCI_IO_DEVICE        *RootBridge
307   )
308 /*++
309 
310 Routine Description:
311 
312   TODO: Add function description
313 
314 Arguments:
315 
316   RootBridge  - TODO: add argument description
317 
318 Returns:
319 
320   TODO: add return values
321 
322 --*/
323 ;
324 #endif
325