THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
-\r
-Module Name: Service.h\r
-\r
**/\r
\r
#ifndef _PCD_DXE_SERVICE_H_\r
#include <Library/BaseMemoryLib.h>\r
#include <Library/UefiRuntimeServicesTableLib.h>\r
\r
-//\r
-// Please make sure the PCD Serivce PEIM Version is consistent with\r
-// the version of PCD Database generation tool\r
-//\r
-#define PCD_SERVICE_DXE_DRIVER_VERSION 2\r
-\r
-//\r
-// PCD_DXE_DATABASE_GENTOOL_VERSION is defined in Autogen.h\r
-// and generated by PCD Database generation tool.\r
-//\r
-//#if (PCD_SERVICE_DXE_DRIVER_VERSION != PCD_DXE_SERVICE_DRIVER_AUTOGEN_VERSION)\r
-// #error "Please make sure the version of PCD Service DXE Driver and PCD DXE Database Generation Tool matches"\r
-//#endif\r
-\r
//\r
// Protocol Interface function declaration.\r
//\r
@param[in] SkuId The SKU value that will be used when the PCD service will retrieve and \r
set values associated with a PCD token.\r
\r
- @retval VOID\r
-\r
**/\r
VOID\r
EFIAPI\r
DxePcdSetSku (\r
IN UINTN SkuId\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 8-bit value for a given PCD token.\r
EFIAPI\r
DxePcdGet8 (\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 16-bit value for a given PCD token.\r
EFIAPI\r
DxePcdGet16 (\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 32-bit value for a given PCD token.\r
EFIAPI\r
DxePcdGet32 (\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 64-bit value for a given PCD token.\r
EFIAPI\r
DxePcdGet64 (\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves a pointer to a value for a given PCD token.\r
\r
@param[in] TokenNumber The PCD token number. \r
\r
- @return The pointer to the buffer to be retrived.\r
+ @return The pointer to the buffer to be retrieved.\r
\r
**/\r
VOID *\r
EFIAPI\r
DxePcdGetPtr (\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves a Boolean value for a given PCD token.\r
EFIAPI\r
DxePcdGetBool (\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves the size of the value for a given PCD token.\r
EFIAPI\r
DxePcdGetSize (\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 8-bit value for a given PCD token.\r
DxePcdGet8Ex (\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 16-bit value for a given PCD token.\r
DxePcdGet16Ex (\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 32-bit value for a given PCD token.\r
DxePcdGet32Ex (\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an 64-bit value for a given PCD token.\r
DxePcdGet64Ex (\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves a pointer to a value for a given PCD token.\r
@param[in] Guid The token space for the token number.\r
@param[in] TokenNumber The PCD token number. \r
\r
- @return The pointer to the buffer to be retrived.\r
+ @return The pointer to the buffer to be retrieved.\r
\r
**/\r
VOID *\r
DxePcdGetPtrEx (\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves an Boolean value for a given PCD token.\r
DxePcdGetBoolEx (\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves the size of the value for a given PCD token.\r
DxePcdGetSizeEx (\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an 8-bit value for a given PCD token.\r
DxePcdSet8 (\r
IN UINTN TokenNumber,\r
IN UINT8 Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an 16-bit value for a given PCD token.\r
DxePcdSet16 (\r
IN UINTN TokenNumber,\r
IN UINT16 Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an 32-bit value for a given PCD token.\r
DxePcdSet32 (\r
IN UINTN TokenNumber,\r
IN UINT32 Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an 64-bit value for a given PCD token.\r
DxePcdSet64 (\r
IN UINTN TokenNumber,\r
IN UINT64 Value\r
- )\r
-;\r
+ );\r
\r
\r
/**\r
IN UINTN TokenNumber,\r
IN OUT UINTN *SizeOfBuffer,\r
IN VOID *Buffer\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an Boolean value for a given PCD token.\r
DxePcdSetBool (\r
IN UINTN TokenNumber,\r
IN BOOLEAN Value\r
- )\r
-;\r
+ );\r
\r
\r
/**\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber,\r
IN UINT8 Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an 16-bit value for a given PCD token.\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber,\r
IN UINT16 Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an 32-bit value for a given PCD token.\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber,\r
IN UINT32 Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an 64-bit value for a given PCD token.\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber,\r
IN UINT64 Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets a value of a specified size for a given PCD token.\r
IN UINTN TokenNumber,\r
IN OUT UINTN *SizeOfBuffer,\r
IN VOID *Buffer\r
- )\r
-;\r
+ );\r
\r
/**\r
Sets an Boolean value for a given PCD token.\r
IN CONST EFI_GUID *Guid,\r
IN UINTN TokenNumber,\r
IN BOOLEAN Value\r
- )\r
-;\r
+ );\r
\r
/**\r
Specifies a function to be called anytime the value of a designated token is changed.\r
IN CONST EFI_GUID *Guid, OPTIONAL\r
IN UINTN TokenNumber,\r
IN PCD_PROTOCOL_CALLBACK CallBackFunction\r
- )\r
-;\r
+ );\r
\r
/**\r
Cancels a previously set callback function for a particular PCD token number.\r
IN CONST EFI_GUID *Guid, OPTIONAL\r
IN UINTN TokenNumber,\r
IN PCD_PROTOCOL_CALLBACK CallBackFunction\r
- )\r
-;\r
+ );\r
\r
/**\r
Retrieves the next valid PCD token for a given namespace.\r
DxePcdGetNextToken (\r
IN CONST EFI_GUID *Guid, OPTIONAL\r
IN OUT UINTN *TokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Get next token space in PCD database according to given token space guid.\r
EFIAPI\r
DxePcdGetNextTokenSpace (\r
IN OUT CONST EFI_GUID **Guid\r
- )\r
-;\r
+ );\r
\r
typedef struct {\r
LIST_ENTRY Node;\r
PCD_PROTOCOL_CALLBACK CallbackFn;\r
} CALLBACK_FN_ENTRY;\r
\r
-#define CR_FNENTRY_FROM_LISTNODE(Record, Type, Field) _CR(Record, Type, Field)\r
+#define CR_FNENTRY_FROM_LISTNODE(Record, Type, Field) BASE_CR(Record, Type, Field)\r
\r
//\r
// Internal Functions\r
IN UINTN TokenNumber,\r
IN VOID *Data,\r
IN UINTN Size\r
- )\r
-;\r
+ );\r
\r
/**\r
Set value for an PCD entry\r
IN VOID *Data,\r
IN OUT UINTN *Size,\r
IN BOOLEAN PtrType\r
- )\r
-;\r
+ );\r
\r
/**\r
Wrapper function for set PCD value for non-Pointer type dynamic-ex PCD.\r
IN CONST EFI_GUID *Guid,\r
IN VOID *Data,\r
IN UINTN SetSize\r
- )\r
-;\r
+ );\r
\r
/**\r
Set value for a dynamic PCD entry.\r
IN VOID *Data,\r
IN OUT UINTN *Size,\r
IN BOOLEAN PtrType\r
- )\r
-;\r
+ );\r
\r
/**\r
Get the PCD entry pointer in PCD database.\r
GetWorker (\r
IN UINTN TokenNumber,\r
IN UINTN GetSize\r
- )\r
-;\r
+ );\r
\r
/**\r
Wrapper function for get PCD value for dynamic-ex PCD.\r
\r
@param Guid Token space guid for dynamic-ex PCD.\r
- @param ExTokenNumber Token number for dyanmic-ex PCD.\r
+ @param ExTokenNumber Token number for dynamic-ex PCD.\r
@param GetSize The size of dynamic-ex PCD value.\r
\r
@return PCD entry in PCD database.\r
IN CONST EFI_GUID *Guid,\r
IN UINTN ExTokenNumber,\r
IN UINTN GetSize\r
- )\r
-;\r
+ );\r
\r
/**\r
Find the local token number according to system SKU ID.\r
UINT32 LocalTokenNumber,\r
UINTN Size,\r
BOOLEAN IsPeiDb\r
- )\r
-;\r
+ );\r
\r
/**\r
Get Variable which contains HII type PCD entry.\r
IN UINT16 *VariableName,\r
OUT UINT8 **VariableData,\r
OUT UINTN *VariableSize\r
- )\r
-;\r
+ );\r
\r
/**\r
Set value for HII-type PCD.\r
IN CONST VOID *Data,\r
IN UINTN DataSize,\r
IN UINTN Offset\r
- )\r
-;\r
+ );\r
\r
/**\r
Register the callback function for a PCD entry.\r
IN UINTN TokenNumber,\r
IN CONST EFI_GUID *Guid, OPTIONAL\r
IN PCD_PROTOCOL_CALLBACK CallBackFunction\r
- )\r
-;\r
+ );\r
\r
/**\r
UnRegister the callback function for a PCD entry.\r
IN UINTN TokenNumber,\r
IN CONST EFI_GUID *Guid, OPTIONAL\r
IN PCD_PROTOCOL_CALLBACK CallBackFunction\r
- )\r
-;\r
+ );\r
\r
/**\r
Initialize the PCD database in DXE phase.\r
VOID\r
BuildPcdDxeDataBase (\r
VOID\r
- )\r
-;\r
+ );\r
\r
/**\r
Get local token number according to dynamic-ex PCD's {token space guid:token number}\r
space guid: token number} to local token number.\r
\r
@param Guid Token space guid for dynamic-ex PCD entry.\r
- @param ExTokenNumber EDES_TODO: Add parameter description\r
+ @param ExTokenNumber Dynamic-ex PCD token number.\r
\r
@return local token number for dynamic-ex PCD.\r
\r
GetExPcdTokenNumber (\r
IN CONST EFI_GUID *Guid,\r
IN UINT32 ExTokenNumber\r
- )\r
-;\r
+ );\r
\r
/**\r
Get next token number in given token space.\r
IN UINTN SizeOfGuidTable,\r
IN DYNAMICEX_MAPPING *ExMapTable,\r
IN UINTN SizeOfExMapTable\r
- )\r
-;\r
+ );\r
\r
/**\r
Get size of POINTER type PCD value.\r
\r
@param LocalTokenNumberTableIdx Index of local token number in local token number table.\r
- @param MaxSize Maxmium size of POINTER type PCD value.\r
+ @param MaxSize Maximum size of POINTER type PCD value.\r
\r
@return size of POINTER type PCD value.\r
\r
GetPtrTypeSize (\r
IN UINTN LocalTokenNumberTableIdx,\r
OUT UINTN *MaxSize\r
- )\r
-;\r
+ );\r
\r
/**\r
- Set size of POINTER type PCD value. The size should not exceed the maxmium size\r
+ Set size of POINTER type PCD value. The size should not exceed the maximum size\r
of this PCD value.\r
\r
@param LocalTokenNumberTableIdx Index of local token number in local token number table.\r
SetPtrTypeSize (\r
IN UINTN LocalTokenNumberTableIdx,\r
IN OUT UINTN *CurrentSize\r
- )\r
-;\r
+ );\r
\r
extern EFI_GUID gPcdDataBaseHobGuid;\r
\r