]> git.proxmox.com Git - mirror_edk2.git/blame_incremental - EdkModulePkg/Universal/PCD/Pei/Service.h
1. Rename PeiCoreLib to PeiServicesLib and rename all the interfaces from PeiCoreXXX...
[mirror_edk2.git] / EdkModulePkg / Universal / PCD / Pei / Service.h
... / ...
CommitLineData
1/** @file\r
2Private functions used by PCD PEIM.\r
3\r
4Copyright (c) 2006, Intel Corporation \r
5All rights reserved. This program and the accompanying materials \r
6are licensed and made available under the terms and conditions of the BSD License \r
7which accompanies this distribution. The full text of the license may be found at \r
8http://opensource.org/licenses/bsd-license.php \r
9 \r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
12\r
13\r
14Module Name: Service.h\r
15\r
16**/\r
17\r
18#ifndef _SERVICE_H\r
19#define _SERVICE_H\r
20\r
21//\r
22// Please make sure the PCD Serivce PEIM Version is consistent with\r
23// the version of PCD Database generation tool\r
24//\r
25#define PCD_PEI_SERVICE_DRIVER_VERSION 1\r
26\r
27//\r
28// PCD_PEI_DATABASE_GENTOOL_VERSION is defined in Autogen.h\r
29// and generated by PCD Database generation tool.\r
30//\r
31#if (PCD_PEI_SERVICE_PEIM_VERSION != PCD_PEI_DATABASE_GENTOOL_VERSION)\r
32 #error "Please make sure the version of PCD Service PEIM and PCD PEI Database Generation Tool matches"\r
33#endif\r
34\r
35/* Internal Function definitions */\r
36\r
37PEI_PCD_DATABASE *\r
38GetPcdDatabase (\r
39 VOID\r
40 )\r
41;\r
42\r
43EFI_STATUS\r
44SetWorker (\r
45 IN UINTN TokenNumber,\r
46 IN VOID *Data,\r
47 IN UINTN Size,\r
48 IN BOOLEAN PtrType\r
49 )\r
50;\r
51\r
52EFI_STATUS\r
53ExSetWorker (\r
54 IN UINTN ExTokenNumber,\r
55 IN CONST EFI_GUID *Guid,\r
56 IN VOID *Data,\r
57 IN UINTN Size,\r
58 IN BOOLEAN PtrType\r
59 )\r
60;\r
61\r
62VOID *\r
63GetWorker (\r
64 IN UINTN TokenNumber,\r
65 IN UINTN GetSize\r
66 )\r
67;\r
68\r
69VOID *\r
70ExGetWorker (\r
71 IN CONST EFI_GUID *Guid,\r
72 IN UINTN ExTokenNumber,\r
73 IN UINTN GetSize\r
74 )\r
75;\r
76\r
77typedef struct {\r
78 UINTN TokenNumber;\r
79 UINTN Size;\r
80 UINT32 LocalTokenNumberAlias;\r
81} EX_PCD_ENTRY_ATTRIBUTE;\r
82\r
83\r
84UINTN \r
85GetExPcdTokenNumber (\r
86 IN CONST EFI_GUID *Guid,\r
87 IN UINTN ExTokenNumber\r
88 )\r
89;\r
90\r
91\r
92\r
93\r
94EFI_STATUS\r
95PeiRegisterCallBackWorker (\r
96 IN UINTN TokenNumber,\r
97 IN CONST GUID *Guid, OPTIONAL\r
98 IN PCD_PPI_CALLBACK CallBackFunction,\r
99 IN BOOLEAN Register\r
100);\r
101\r
102\r
103\r
104\r
105VOID\r
106BuildPcdDatabase (\r
107 VOID\r
108 )\r
109;\r
110\r
111\r
112//\r
113// PPI Interface Implementation Declaration.\r
114//\r
115VOID\r
116EFIAPI\r
117PeiPcdSetSku (\r
118 IN UINTN SkuId\r
119 )\r
120;\r
121\r
122\r
123UINT8\r
124EFIAPI\r
125PeiPcdGet8 (\r
126 IN UINTN TokenNumber\r
127 )\r
128;\r
129\r
130\r
131UINT16\r
132EFIAPI\r
133PeiPcdGet16 (\r
134 IN UINTN TokenNumber\r
135 )\r
136;\r
137\r
138\r
139UINT32\r
140EFIAPI\r
141PeiPcdGet32 (\r
142 IN UINTN TokenNumber\r
143 )\r
144;\r
145\r
146\r
147UINT64\r
148EFIAPI\r
149PeiPcdGet64 (\r
150 IN UINTN TokenNumber\r
151 )\r
152;\r
153\r
154\r
155VOID *\r
156EFIAPI\r
157PeiPcdGetPtr (\r
158 IN UINTN TokenNumber\r
159 )\r
160;\r
161\r
162\r
163BOOLEAN\r
164EFIAPI\r
165PeiPcdGetBool (\r
166 IN UINTN TokenNumber\r
167 )\r
168;\r
169\r
170\r
171UINTN\r
172EFIAPI\r
173PeiPcdGetSize (\r
174 IN UINTN TokenNumber\r
175 )\r
176;\r
177\r
178\r
179UINT8\r
180EFIAPI\r
181PeiPcdGet8Ex (\r
182 IN CONST EFI_GUID *Guid,\r
183 IN UINTN TokenNumber\r
184 )\r
185;\r
186\r
187\r
188UINT16\r
189EFIAPI\r
190PeiPcdGet16Ex (\r
191 IN CONST EFI_GUID *Guid,\r
192 IN UINTN TokenNumber\r
193 )\r
194;\r
195\r
196UINT32\r
197EFIAPI\r
198PeiPcdGet32Ex (\r
199 IN CONST EFI_GUID *Guid,\r
200 IN UINTN TokenNumber\r
201 )\r
202;\r
203\r
204\r
205UINT64\r
206EFIAPI\r
207PeiPcdGet64Ex (\r
208 IN CONST EFI_GUID *Guid,\r
209 IN UINTN TokenNumber\r
210 )\r
211;\r
212\r
213\r
214VOID *\r
215EFIAPI\r
216PeiPcdGetPtrEx (\r
217 IN CONST EFI_GUID *Guid,\r
218 IN UINTN TokenNumber\r
219 )\r
220;\r
221\r
222\r
223BOOLEAN\r
224EFIAPI\r
225PeiPcdGetBoolEx (\r
226 IN CONST EFI_GUID *Guid,\r
227 IN UINTN TokenNumber\r
228 )\r
229;\r
230\r
231\r
232UINTN\r
233EFIAPI\r
234PeiPcdGetSizeEx (\r
235 IN CONST EFI_GUID *Guid,\r
236 IN UINTN TokenNumber\r
237 )\r
238;\r
239\r
240\r
241EFI_STATUS\r
242EFIAPI\r
243PeiPcdSet8 (\r
244 IN UINTN TokenNumber,\r
245 IN UINT8 Value\r
246 )\r
247;\r
248\r
249\r
250EFI_STATUS\r
251EFIAPI\r
252PeiPcdSet16 (\r
253 IN UINTN TokenNumber,\r
254 IN UINT16 Value\r
255 )\r
256;\r
257\r
258\r
259EFI_STATUS\r
260EFIAPI\r
261PeiPcdSet32 (\r
262 IN UINTN TokenNumber,\r
263 IN UINT32 Value\r
264 )\r
265;\r
266\r
267\r
268EFI_STATUS\r
269EFIAPI\r
270PeiPcdSet64 (\r
271 IN UINTN TokenNumber,\r
272 IN UINT64 Value\r
273 )\r
274;\r
275\r
276EFI_STATUS\r
277EFIAPI\r
278PeiPcdSetPtr (\r
279 IN UINTN TokenNumber,\r
280 IN UINTN SizeOfBuffer,\r
281 IN VOID *Buffer\r
282 )\r
283;\r
284\r
285\r
286EFI_STATUS\r
287EFIAPI\r
288PeiPcdSetBool (\r
289 IN UINTN TokenNumber,\r
290 IN BOOLEAN Value\r
291 )\r
292;\r
293\r
294\r
295EFI_STATUS\r
296EFIAPI\r
297PeiPcdSet8Ex (\r
298 IN CONST EFI_GUID *Guid,\r
299 IN UINTN TokenNumber,\r
300 IN UINT8 Value\r
301 )\r
302;\r
303\r
304EFI_STATUS\r
305EFIAPI\r
306PeiPcdSet16Ex (\r
307 IN CONST EFI_GUID *Guid,\r
308 IN UINTN TokenNumber,\r
309 IN UINT16 Value\r
310 )\r
311;\r
312\r
313\r
314EFI_STATUS\r
315EFIAPI\r
316PeiPcdSet32Ex (\r
317 IN CONST EFI_GUID *Guid,\r
318 IN UINTN TokenNumber,\r
319 IN UINT32 Value\r
320 )\r
321;\r
322\r
323\r
324EFI_STATUS\r
325EFIAPI\r
326PeiPcdSet64Ex (\r
327 IN CONST EFI_GUID *Guid,\r
328 IN UINTN TokenNumber,\r
329 IN UINT64 Value\r
330 )\r
331;\r
332\r
333\r
334EFI_STATUS\r
335EFIAPI\r
336PeiPcdSetPtrEx (\r
337 IN CONST EFI_GUID *Guid,\r
338 IN UINTN TokenNumber,\r
339 IN UINTN SizeOfBuffer,\r
340 IN VOID *Buffer\r
341 )\r
342;\r
343\r
344\r
345EFI_STATUS\r
346EFIAPI\r
347PeiPcdSetBoolEx (\r
348 IN CONST EFI_GUID *Guid,\r
349 IN UINTN TokenNumber,\r
350 IN BOOLEAN Value\r
351 )\r
352;\r
353\r
354\r
355\r
356EFI_STATUS\r
357EFIAPI\r
358PeiRegisterCallBackOnSet (\r
359 IN UINTN TokenNumber,\r
360 IN CONST EFI_GUID *Guid, OPTIONAL\r
361 IN PCD_PPI_CALLBACK CallBackFunction\r
362 )\r
363;\r
364\r
365\r
366EFI_STATUS\r
367EFIAPI\r
368PcdUnRegisterCallBackOnSet (\r
369 IN UINTN TokenNumber,\r
370 IN CONST EFI_GUID *Guid, OPTIONAL\r
371 IN PCD_PPI_CALLBACK CallBackFunction\r
372 )\r
373;\r
374\r
375\r
376EFI_STATUS\r
377EFIAPI\r
378PeiPcdGetNextToken (\r
379 IN CONST EFI_GUID *Guid, OPTIONAL\r
380 IN OUT UINTN *TokenNumber\r
381 )\r
382;\r
383\r
384extern EFI_GUID gPcdDataBaseHobGuid;\r
385\r
386extern EFI_GUID gPcdPeiCallbackFnTableHobGuid;\r
387\r
388extern PEI_PCD_DATABASE_INIT gPEIPcdDbInit;\r
389\r
390#endif\r