2 Private functions used by PCD PEIM.
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.
14 Module Name: Service.h
22 // Offset of StateByte
24 #define PCD_STATEBYTE_HIIENABLE 0x01
25 #define PCD_STATEBYTE_SKUENABLE 0x02
26 #define PCD_STATEBYTE_VPDENABLE 0x04
27 #define PCD_STATEBYTE_SKUDATAARRAYENABLE 0x08
28 #define PCD_STATEBYTE_DATUMTYPE 0x70
29 #define PCD_STATEBYTE_EXTENDEDGUIDPRESENT 0x80
31 #define PCD_DATUMTYPE_OFFSET 4
34 // The definitions for interpreting DatumType
36 #define PCD_BYTE8 (0x00 << PCD_DATUMTYPE_OFFSET)
37 #define PCD_BYTE16 (0x01 << PCD_DATUMTYPE_OFFSET)
38 #define PCD_BYTE32 (0x02 << PCD_DATUMTYPE_OFFSET)
39 #define PCD_BYTE64 (0x03 << PCD_DATUMTYPE_OFFSET)
40 #define PCD_POINTER (0x04 << PCD_DATUMTYPE_OFFSET)
41 #define PCD_BOOLEAN (0x05 << PCD_DATUMTYPE_OFFSET)
43 extern GUID gEfiPcdImageHobGuid
;
45 /* Internal Function definitions */
48 PeiGetPcdEntryWorker (
50 IN CONST GUID
*Guid
, OPTIONAL
51 IN PCD_DATA_TYPE Type
,
56 PeiSetPcdEntryWorker (
58 IN CONST GUID
*Guid
, OPTIONAL
59 IN PCD_DATA_TYPE Type
,
64 PeiGetPcdEntrySizeWorker (
66 IN CONST GUID
*Guid OPTIONAL
70 PeiRegisterCallBackWorker (
72 IN CONST GUID
*Guid
, OPTIONAL
73 IN PCD_PPI_CALLBACK CallBackFunction
,
83 PeiGetNextTokenWorker (
85 IN CONST GUID
*Guid OPTIONAL
95 UINT8
*PcdImageOnFlash
100 extern EFI_GUID gPcdImageFileGuid
;
103 // PPI Interface Implementation Declaration.
172 IN CONST EFI_GUID
*Guid
,
181 IN CONST EFI_GUID
*Guid
,
189 IN CONST EFI_GUID
*Guid
,
198 IN CONST EFI_GUID
*Guid
,
207 IN CONST EFI_GUID
*Guid
,
216 IN CONST EFI_GUID
*Guid
,
225 IN CONST EFI_GUID
*Guid
,
234 IN UINTN TokenNumber
,
243 IN UINTN TokenNumber
,
252 IN UINTN TokenNumber
,
261 IN UINTN TokenNumber
,
269 IN UINTN TokenNumber
,
278 IN UINTN TokenNumber
,
287 IN CONST EFI_GUID
*Guid
,
288 IN UINTN TokenNumber
,
296 IN CONST EFI_GUID
*Guid
,
297 IN UINTN TokenNumber
,
306 IN CONST EFI_GUID
*Guid
,
307 IN UINTN TokenNumber
,
316 IN CONST EFI_GUID
*Guid
,
317 IN UINTN TokenNumber
,
326 IN CONST EFI_GUID
*Guid
,
327 IN UINTN TokenNumber
,
336 IN CONST EFI_GUID
*Guid
,
337 IN UINTN TokenNumber
,
346 PcdRegisterCallBackOnSet (
347 IN UINTN TokenNumber
,
348 IN CONST EFI_GUID
*Guid
, OPTIONAL
349 IN PCD_PPI_CALLBACK CallBackFunction
356 PcdUnRegisterCallBackOnSet (
357 IN UINTN TokenNumber
,
358 IN CONST EFI_GUID
*Guid
, OPTIONAL
359 IN PCD_PPI_CALLBACK CallBackFunction
367 IN CONST EFI_GUID
*Guid
, OPTIONAL
368 IN OUT UINTN
*TokenNumber