//\r
TokenNumber--;\r
\r
- ASSERT (TokenNumber < PEI_LOCAL_TOKEN_NUMBER);\r
+ // EBC compiler is very choosy. It may report warning about comparison\r
+ // between UINTN and 0 . So we add 1 in each size of the \r
+ // comparison.\r
+ ASSERT (TokenNumber + 1 < PEI_LOCAL_TOKEN_NUMBER + 1);\r
\r
Size = (PeiPcdDb->Init.LocalTokenNumberTable[TokenNumber] & PCD_DATUM_TYPE_ALL_SET) >> PCD_DATUM_TYPE_SHIFT;\r
\r
EFI_STATUS\r
EFIAPI\r
PeiRegisterCallBackOnSet (\r
- IN UINTN ExTokenNumber,\r
IN CONST EFI_GUID *Guid, OPTIONAL\r
+ IN UINTN ExTokenNumber,\r
IN PCD_PPI_CALLBACK CallBackFunction\r
)\r
{\r
EFI_STATUS\r
EFIAPI\r
PcdUnRegisterCallBackOnSet (\r
- IN UINTN ExTokenNumber,\r
IN CONST EFI_GUID *Guid, OPTIONAL\r
+ IN UINTN ExTokenNumber,\r
IN PCD_PPI_CALLBACK CallBackFunction\r
)\r
{\r
UINTN i;\r
BOOLEAN Found;\r
\r
+ if (!FeaturePcdGet (PcdPeiPcdDatabaseTraverseEnabled)) {\r
+ return EFI_UNSUPPORTED;\r
+ }\r
+ \r
if (Guid == NULL) {\r
if (*TokenNumber > PEI_NEX_TOKEN_NUMBER) {\r
return EFI_NOT_FOUND;\r
UINTN i;\r
BOOLEAN Found;\r
\r
+ if (!FeaturePcdGet (PcdPeiPcdDatabaseTraverseEnabled)) {\r
+ return EFI_UNSUPPORTED;\r
+ }\r
+\r
ASSERT (Guid != NULL);\r
\r
if (PEI_EXMAP_TABLE_EMPTY) {\r