/** @file \r
-PCD PEIM produces PCD database to manage all dynamic PCD in PEI phase and install Pcd Ppi.\r
+ All Pcd Ppi services are implemented here.\r
\r
Copyright (c) 2006 - 2008, Intel Corporation \r
All rights reserved. This program and the accompanying materials \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
UINTN Size;\r
UINTN MaxSize;\r
\r
- //\r
- // If DebugAssertEnabled is TRUE, we still need to provide the GET size\r
- // function as GetWorker and SetWoker need this function to do ASSERT.\r
- //\r
- if ((!FeaturePcdGet(PcdPeiPcdDatabaseGetSizeEnabled)) &&\r
- (!DebugAssertEnabled ())) {\r
- return 0;\r
- }\r
-\r
PeiPcdDb = GetPcdDatabase ();\r
//\r
// TokenNumber Zero is reserved as PCD_INVALID_TOKEN_NUMBER.\r
@param[in] Guid The token space for the token number.\r
@param[in] ExTokenNumber 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
IN UINTN ExTokenNumber\r
)\r
{\r
- if ((!FeaturePcdGet (PcdPeiPcdDatabaseGetSizeEnabled)) || !FeaturePcdGet (PcdPeiPcdDatabaseExEnabled)) {\r
- return 0;\r
- }\r
-\r
return PeiPcdGetSize (GetExPcdTokenNumber (Guid, ExTokenNumber));\r
}\r
\r
IN PCD_PPI_CALLBACK CallBackFunction\r
)\r
{\r
- if (!FeaturePcdGet(PcdPeiPcdDatabaseCallbackOnSetEnabled)) {\r
+ if (!FeaturePcdGet(PcdPeiFullPcdDatabaseEnable)) {\r
return EFI_UNSUPPORTED;\r
}\r
\r
- ASSERT (CallBackFunction != NULL);\r
- \r
+ if (CallBackFunction == NULL) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
+\r
return PeiRegisterCallBackWorker (ExTokenNumber, Guid, CallBackFunction, TRUE);\r
}\r
\r
IN PCD_PPI_CALLBACK CallBackFunction\r
)\r
{\r
- if (!FeaturePcdGet(PcdPeiPcdDatabaseCallbackOnSetEnabled)) {\r
+ if (!FeaturePcdGet(PcdPeiFullPcdDatabaseEnable)) {\r
return EFI_UNSUPPORTED;\r
}\r
\r
- ASSERT (CallBackFunction != NULL);\r
- \r
+ if (CallBackFunction == NULL) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
+\r
return PeiRegisterCallBackWorker (ExTokenNumber, Guid, CallBackFunction, FALSE);\r
}\r
\r
BOOLEAN Found;\r
BOOLEAN PeiExMapTableEmpty;\r
\r
- if (!FeaturePcdGet (PcdPeiPcdDatabaseTraverseEnabled)) {\r
+ if (!FeaturePcdGet (PcdPeiFullPcdDatabaseEnable)) {\r
return EFI_UNSUPPORTED;\r
}\r
\r
BOOLEAN Found;\r
BOOLEAN PeiExMapTableEmpty;\r
\r
- if (!FeaturePcdGet (PcdPeiPcdDatabaseTraverseEnabled)) {\r
+ if (!FeaturePcdGet (PcdPeiFullPcdDatabaseEnable)) {\r
return EFI_UNSUPPORTED;\r
}\r
\r
The max size of this PCD's value is described in PCD's definition in DEC file.\r
\r
@param LocalTokenNumberTableIdx Index of PCD token number in PCD token table\r
- @param MaxSize Maxmium size of PCD's value\r
+ @param MaxSize Maximum size of PCD's value\r
@param Database Pcd database in PEI phase.\r
\r
@return PCD value's size for POINTER type PCD.\r
The max size of this PCD's value is described in PCD's definition in DEC file.\r
\r
@param LocalTokenNumberTableIdx Index of PCD token number in PCD token table\r
- @param CurrentSize Maxmium size of PCD's value\r
+ @param CurrentSize Maximum size of PCD's value\r
@param Database Pcd database in PEI phase.\r
\r
- @retval TRUE Success to set PCD's value size, which is not exceed maxmium size\r
- @retval FALSE Fail to set PCD's value size, which maybe exceed maxmium size\r
+ @retval TRUE Success to set PCD's value size, which is not exceed maximum size\r
+ @retval FALSE Fail to set PCD's value size, which maybe exceed maximum size\r
\r
**/\r
BOOLEAN\r
(*CurrentSize == MAX_ADDRESS)) {\r
*CurrentSize = MaxSize;\r
return FALSE;\r
- } \r
+ }\r
\r
if ((LocalTokenNumber & PCD_TYPE_SKU_ENABLED) == 0) {\r
//\r