2 Platform Configuration Database (PCD) Protocol
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
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.
20 extern EFI_GUID gPcdPpiGuid
;
22 #define PCD_PPI_GUID \
23 { 0x6e81c58, 0x4ad7, 0x44bc, { 0x83, 0x90, 0xf1, 0x2, 0x65, 0xf7, 0x24, 0x80 } }
25 #define PCD_INVALID_TOKEN_NUMBER ((UINTN) 0)
29 (EFIAPI
*PCD_PPI_SET_SKU
) (
35 (EFIAPI
*PCD_PPI_GET8
) (
41 (EFIAPI
*PCD_PPI_GET16
) (
47 (EFIAPI
*PCD_PPI_GET32
) (
53 (EFIAPI
*PCD_PPI_GET64
) (
59 (EFIAPI
*PCD_PPI_GET_POINTER
) (
65 (EFIAPI
*PCD_PPI_GET_BOOLEAN
) (
71 (EFIAPI
*PCD_PPI_GET_SIZE
) (
77 (EFIAPI
*PCD_PPI_GET_EX_8
) (
78 IN CONST EFI_GUID
*Guid
,
84 (EFIAPI
*PCD_PPI_GET_EX_16
) (
85 IN CONST EFI_GUID
*Guid
,
91 (EFIAPI
*PCD_PPI_GET_EX_32
) (
92 IN CONST EFI_GUID
*Guid
,
98 (EFIAPI
*PCD_PPI_GET_EX_64
) (
99 IN CONST EFI_GUID
*Guid
,
105 (EFIAPI
*PCD_PPI_GET_EX_POINTER
) (
106 IN CONST EFI_GUID
*Guid
,
112 (EFIAPI
*PCD_PPI_GET_EX_BOOLEAN
) (
113 IN CONST EFI_GUID
*Guid
,
119 (EFIAPI
*PCD_PPI_GET_EX_SIZE
) (
120 IN CONST EFI_GUID
*Guid
,
126 (EFIAPI
*PCD_PPI_SET8
) (
127 IN UINTN TokenNumber
,
133 (EFIAPI
*PCD_PPI_SET16
) (
134 IN UINTN TokenNumber
,
140 (EFIAPI
*PCD_PPI_SET32
) (
141 IN UINTN TokenNumber
,
147 (EFIAPI
*PCD_PPI_SET64
) (
148 IN UINTN TokenNumber
,
154 (EFIAPI
*PCD_PPI_SET_POINTER
) (
155 IN UINTN TokenNumber
,
156 IN UINTN SizeOfBuffer
,
162 (EFIAPI
*PCD_PPI_SET_BOOLEAN
) (
163 IN UINTN TokenNumber
,
169 (EFIAPI
*PCD_PPI_SET_EX_8
) (
170 IN CONST EFI_GUID
*Guid
,
171 IN UINTN TokenNumber
,
177 (EFIAPI
*PCD_PPI_SET_EX_16
) (
178 IN CONST EFI_GUID
*Guid
,
179 IN UINTN TokenNumber
,
185 (EFIAPI
*PCD_PPI_SET_EX_32
) (
186 IN CONST EFI_GUID
*Guid
,
187 IN UINTN TokenNumber
,
193 (EFIAPI
*PCD_PPI_SET_EX_64
) (
194 IN CONST EFI_GUID
*Guid
,
195 IN UINTN TokenNumber
,
201 (EFIAPI
*PCD_PPI_SET_EX_POINTER
) (
202 IN CONST EFI_GUID
*Guid
,
203 IN UINTN TokenNumber
,
204 IN UINTN SizeOfBuffer
,
210 (EFIAPI
*PCD_PPI_SET_EX_BOOLEAN
) (
211 IN CONST EFI_GUID
*Guid
,
212 IN UINTN TokenNumber
,
217 Callback on SET function prototype definition.
219 @param[in] CallBackGuid The PCD token GUID being set.
220 @param[in] CallBackToken The PCD token number being set.
221 @param[in] TokenData A pointer to the token data being set.
222 @param[in] TokenDataSize The size, in bytes, of the data being set.
229 (EFIAPI
*PCD_PPI_CALLBACK
) (
230 IN CONST EFI_GUID
*CallBackGuid
, OPTIONAL
231 IN UINTN CallBackToken
,
232 IN OUT VOID
*TokenData
,
233 IN UINTN TokenDataSize
238 (EFIAPI
*PCD_PPI_CALLBACK_ONSET
) (
239 IN UINTN TokenNumber
,
240 IN CONST EFI_GUID
*Guid
, OPTIONAL
241 IN PCD_PPI_CALLBACK CallBackFunction
246 (EFIAPI
*PCD_PPI_CANCEL_CALLBACK
) (
247 IN UINTN TokenNumber
,
248 IN CONST EFI_GUID
*Guid
, OPTIONAL
249 IN PCD_PPI_CALLBACK CallBackFunction
254 (EFIAPI
*PCD_PPI_GET_NEXT_TOKEN
) (
255 IN CONST EFI_GUID
*Guid
, OPTIONAL
256 IN OUT UINTN
*TokenNumber
261 (EFIAPI
*PCD_PPI_GET_NEXT_TOKENSPACE
) (
262 IN OUT CONST EFI_GUID
**Guid
266 PCD_PPI_SET_SKU SetSku
;
272 PCD_PPI_GET_POINTER GetPtr
;
273 PCD_PPI_GET_BOOLEAN GetBool
;
274 PCD_PPI_GET_SIZE GetSize
;
276 PCD_PPI_GET_EX_8 Get8Ex
;
277 PCD_PPI_GET_EX_16 Get16Ex
;
278 PCD_PPI_GET_EX_32 Get32Ex
;
279 PCD_PPI_GET_EX_64 Get64Ex
;
280 PCD_PPI_GET_EX_POINTER GetPtrEx
;
281 PCD_PPI_GET_EX_BOOLEAN GetBoolEx
;
282 PCD_PPI_GET_EX_SIZE GetSizeEx
;
288 PCD_PPI_SET_POINTER SetPtr
;
289 PCD_PPI_SET_BOOLEAN SetBool
;
291 PCD_PPI_SET_EX_8 Set8Ex
;
292 PCD_PPI_SET_EX_16 Set16Ex
;
293 PCD_PPI_SET_EX_32 Set32Ex
;
294 PCD_PPI_SET_EX_64 Set64Ex
;
295 PCD_PPI_SET_EX_POINTER SetPtrEx
;
296 PCD_PPI_SET_EX_BOOLEAN SetBoolEx
;
298 PCD_PPI_CALLBACK_ONSET CallbackOnSet
;
299 PCD_PPI_CANCEL_CALLBACK CancelCallback
;
300 PCD_PPI_GET_NEXT_TOKEN GetNextToken
;
301 PCD_PPI_GET_NEXT_TOKENSPACE GetNextTokenSpace
;