]> git.proxmox.com Git - mirror_edk2.git/blob - EdkModulePkg/Universal/PCD/Dxe/Service.h
1) remove some dead code from WinNtBusDriver.c
[mirror_edk2.git] / EdkModulePkg / Universal / PCD / Dxe / Service.h
1 /** @file
2 Private functions used by PCD DXE driver.
3
4 Copyright (c) 2006, Intel Corporation
5 All rights reserved. This program and the accompanying materials
6 are licensed and made available under the terms and conditions of the BSD License
7 which accompanies this distribution. The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php
9
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12
13
14 Module Name: Service.h
15
16 **/
17
18 #ifndef _SERVICE_H
19 #define _SERVICE_H
20
21 //
22 // Please make sure the PCD Serivce PEIM Version is consistent with
23 // the version of PCD Database generation tool
24 //
25 #define PCD_DXE_SERVICE_DRIVER_VERSION 2
26
27 //
28 // PCD_DXE_DATABASE_GENTOOL_VERSION is defined in Autogen.h
29 // and generated by PCD Database generation tool.
30 //
31 #if (PCD_DXE_SERVICE_PEIM_VERSION != PCD_DXE_DATABASE_GENTOOL_VERSION)
32 #error "Please make sure the version of PCD Service DXE Driver and PCD DXE Database Generation Tool matches"
33 #endif
34
35
36 typedef struct {
37 LIST_ENTRY Node;
38 PCD_PROTOCOL_CALLBACK CallbackFn;
39 } CALLBACK_FN_ENTRY;
40
41 #define CR_FNENTRY_FROM_LISTNODE(Record, Type, Field) _CR(Record, Type, Field)
42
43 //
44 // Internal Functions
45 //
46
47 EFI_STATUS
48 SetWorker (
49 IN UINTN TokenNumber,
50 IN VOID *Data,
51 IN UINTN Size,
52 IN BOOLEAN PtrType
53 )
54 ;
55
56 EFI_STATUS
57 ExSetWorker (
58 IN UINTN ExTokenNumber,
59 IN CONST EFI_GUID *Guid,
60 VOID *Data,
61 UINTN Size,
62 BOOLEAN PtrType
63 )
64 ;
65
66
67 VOID *
68 GetWorker (
69 UINTN TokenNumber,
70 UINTN GetSize
71 )
72 ;
73
74 VOID *
75 ExGetWorker (
76 IN CONST EFI_GUID *Guid,
77 IN UINTN ExTokenNumber,
78 IN UINTN GetSize
79 )
80 ;
81
82 UINT32
83 GetSkuEnabledTokenNumber (
84 UINT32 LocalTokenNumber,
85 UINTN Size,
86 BOOLEAN IsPeiDb
87 )
88 ;
89
90 EFI_STATUS
91 GetHiiVariable (
92 IN EFI_GUID *VariableGuid,
93 IN UINT16 *VariableName,
94 OUT VOID **VariableData,
95 OUT UINTN *VariableSize
96 )
97 ;
98
99 EFI_STATUS
100 SetHiiVariable (
101 IN EFI_GUID *VariableGuid,
102 IN UINT16 *VariableName,
103 IN CONST VOID *Data,
104 IN UINTN DataSize,
105 IN UINTN Offset
106 )
107 ;
108
109 EFI_STATUS
110 DxeRegisterCallBackWorker (
111 IN UINTN TokenNumber,
112 IN CONST EFI_GUID *Guid, OPTIONAL
113 IN PCD_PROTOCOL_CALLBACK CallBackFunction
114 );
115
116 EFI_STATUS
117 DxeUnRegisterCallBackWorker (
118 IN UINTN TokenNumber,
119 IN CONST EFI_GUID *Guid, OPTIONAL
120 IN PCD_PROTOCOL_CALLBACK CallBackFunction
121 );
122
123 VOID
124 BuildPcdDxeDataBase (
125 VOID
126 );
127
128
129 UINTN
130 GetExPcdTokenNumber (
131 IN CONST EFI_GUID *Guid,
132 IN UINT32 ExTokenNumber
133 )
134 ;
135 //
136 // Protocol Interface function declaration.
137 //
138 VOID
139 EFIAPI
140 DxePcdSetSku (
141 IN UINTN SkuId
142 )
143 ;
144
145
146 UINT8
147 EFIAPI
148 DxePcdGet8 (
149 IN UINTN TokenNumber
150 )
151 ;
152
153
154 UINT16
155 EFIAPI
156 DxePcdGet16 (
157 IN UINTN TokenNumber
158 )
159 ;
160
161
162 UINT32
163 EFIAPI
164 DxePcdGet32 (
165 IN UINTN TokenNumber
166 )
167 ;
168
169
170 UINT64
171 EFIAPI
172 DxePcdGet64 (
173 IN UINTN TokenNumber
174 )
175 ;
176
177
178 VOID *
179 EFIAPI
180 DxePcdGetPtr (
181 IN UINTN TokenNumber
182 )
183 ;
184
185
186 BOOLEAN
187 EFIAPI
188 DxePcdGetBool (
189 IN UINTN TokenNumber
190 )
191 ;
192
193
194 UINTN
195 EFIAPI
196 DxePcdGetSize (
197 IN UINTN TokenNumber
198 )
199 ;
200
201
202 UINT8
203 EFIAPI
204 DxePcdGet8Ex (
205 IN CONST EFI_GUID *Guid,
206 IN UINTN TokenNumber
207 )
208 ;
209
210
211 UINT16
212 EFIAPI
213 DxePcdGet16Ex (
214 IN CONST EFI_GUID *Guid,
215 IN UINTN TokenNumber
216 )
217 ;
218
219
220 UINT32
221 EFIAPI
222 DxePcdGet32Ex (
223 IN CONST EFI_GUID *Guid,
224 IN UINTN TokenNumber
225 )
226 ;
227
228
229
230 UINT64
231 EFIAPI
232 DxePcdGet64Ex (
233 IN CONST EFI_GUID *Guid,
234 IN UINTN TokenNumber
235 )
236 ;
237
238
239
240 VOID *
241 EFIAPI
242 DxePcdGetPtrEx (
243 IN CONST EFI_GUID *Guid,
244 IN UINTN TokenNumber
245 )
246 ;
247
248
249 BOOLEAN
250 EFIAPI
251 DxePcdGetBoolEx (
252 IN CONST EFI_GUID *Guid,
253 IN UINTN TokenNumber
254 )
255 ;
256
257
258 UINTN
259 EFIAPI
260 DxePcdGetSizeEx (
261 IN CONST EFI_GUID *Guid,
262 IN UINTN TokenNumber
263 )
264 ;
265
266
267 EFI_STATUS
268 EFIAPI
269 DxePcdSet8 (
270 IN UINTN TokenNumber,
271 IN UINT8 Value
272 )
273 ;
274
275
276 EFI_STATUS
277 EFIAPI
278 DxePcdSet16 (
279 IN UINTN TokenNumber,
280 IN UINT16 Value
281 )
282 ;
283
284
285 EFI_STATUS
286 EFIAPI
287 DxePcdSet32 (
288 IN UINTN TokenNumber,
289 IN UINT32 Value
290 )
291 ;
292
293
294 EFI_STATUS
295 EFIAPI
296 DxePcdSet64 (
297 IN UINTN TokenNumber,
298 IN UINT64 Value
299 )
300 ;
301
302
303 EFI_STATUS
304 EFIAPI
305 DxePcdSetPtr (
306 IN UINTN TokenNumber,
307 IN UINTN SizeOfBuffer,
308 IN VOID *Buffer
309 )
310 ;
311
312
313 EFI_STATUS
314 EFIAPI
315 DxePcdSetBool (
316 IN UINTN TokenNumber,
317 IN BOOLEAN Value
318 )
319 ;
320
321
322 EFI_STATUS
323 EFIAPI
324 DxePcdSet8Ex (
325 IN CONST EFI_GUID *Guid,
326 IN UINTN TokenNumber,
327 IN UINT8 Value
328 )
329 ;
330
331
332 EFI_STATUS
333 EFIAPI
334 DxePcdSet16Ex (
335 IN CONST EFI_GUID *Guid,
336 IN UINTN TokenNumber,
337 IN UINT16 Value
338 )
339 ;
340
341
342 EFI_STATUS
343 EFIAPI
344 DxePcdSet32Ex (
345 IN CONST EFI_GUID *Guid,
346 IN UINTN TokenNumber,
347 IN UINT32 Value
348 )
349 ;
350
351
352 EFI_STATUS
353 EFIAPI
354 DxePcdSet64Ex (
355 IN CONST EFI_GUID *Guid,
356 IN UINTN TokenNumber,
357 IN UINT64 Value
358 )
359 ;
360
361
362 EFI_STATUS
363 EFIAPI
364 DxePcdSetPtrEx (
365 IN CONST EFI_GUID *Guid,
366 IN UINTN TokenNumber,
367 IN UINTN SizeOfBuffer,
368 IN VOID *Buffer
369 )
370 ;
371
372
373 EFI_STATUS
374 EFIAPI
375 DxePcdSetBoolEx (
376 IN CONST EFI_GUID *Guid,
377 IN UINTN TokenNumber,
378 IN BOOLEAN Value
379 )
380 ;
381
382
383
384 EFI_STATUS
385 EFIAPI
386 DxeRegisterCallBackOnSet (
387 IN UINTN TokenNumber,
388 IN CONST EFI_GUID *Guid, OPTIONAL
389 IN PCD_PROTOCOL_CALLBACK CallBackFunction
390 )
391 ;
392
393
394 EFI_STATUS
395 EFIAPI
396 DxeUnRegisterCallBackOnSet (
397 IN UINTN TokenNumber,
398 IN CONST EFI_GUID *Guid, OPTIONAL
399 IN PCD_PROTOCOL_CALLBACK CallBackFunction
400 )
401 ;
402
403
404 EFI_STATUS
405 EFIAPI
406 DxePcdGetNextToken (
407 IN CONST EFI_GUID *Guid, OPTIONAL
408 IN OUT UINTN *TokenNumber
409 )
410 ;
411
412 UINTN
413 ExGetNextTokeNumber (
414 IN CONST EFI_GUID *Guid,
415 IN UINTN TokenNumber,
416 IN EFI_GUID *GuidTable,
417 IN UINTN SizeOfGuidTable,
418 IN DYNAMICEX_MAPPING *ExMapTable,
419 IN UINTN SizeOfExMapTable
420 )
421 ;
422
423 extern EFI_GUID gPcdDataBaseHobGuid;
424
425 extern PCD_DATABASE * mPcdDatabase;
426
427 extern DXE_PCD_DATABASE_INIT gDXEPcdDbInit;
428
429 #endif