]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkModulePkg/Universal/PCD/Pei/Pcd.c
Add in support for GetNextTokenNumber API.
[mirror_edk2.git] / EdkModulePkg / Universal / PCD / Pei / Pcd.c
index 974095f2841e462f9bc5a1d320e6b15e0fafc57f..f084475335416276c7d9d6e19863310599731ec6 100644 (file)
@@ -50,7 +50,7 @@ PCD_PPI mPcdPpiInstance = {
   PeiPcdSetPtrEx,         \r
   PeiPcdSetBoolEx,\r
 \r
-  PcdRegisterCallBackOnSet,\r
+  PeiRegisterCallBackOnSet,\r
   PcdUnRegisterCallBackOnSet,\r
   PeiPcdGetNextToken\r
 };\r
@@ -454,12 +454,14 @@ PeiPcdSetBoolEx (
 \r
 EFI_STATUS\r
 EFIAPI\r
-PcdRegisterCallBackOnSet (\r
+PeiRegisterCallBackOnSet (\r
   IN  PCD_TOKEN_NUMBER            ExTokenNumber,\r
   IN  CONST EFI_GUID              *Guid, OPTIONAL\r
   IN  PCD_PPI_CALLBACK            CallBackFunction\r
   )\r
 {\r
+  ASSERT (CallBackFunction != NULL);\r
+  \r
   return PeiRegisterCallBackWorker (ExTokenNumber, Guid, CallBackFunction, TRUE);\r
 }\r
 \r
@@ -473,6 +475,8 @@ PcdUnRegisterCallBackOnSet (
   IN  PCD_PPI_CALLBACK            CallBackFunction\r
   )\r
 {\r
+  ASSERT (CallBackFunction != NULL);\r
+  \r
   return PeiRegisterCallBackWorker (ExTokenNumber, Guid, CallBackFunction, FALSE);\r
 }\r
 \r
@@ -482,7 +486,7 @@ EFI_STATUS
 EFIAPI\r
 PeiPcdGetNextToken (\r
   IN CONST EFI_GUID               *Guid, OPTIONAL\r
-  IN OUT  PCD_TOKEN_NUMBER                   *TokenNumber\r
+  IN OUT  PCD_TOKEN_NUMBER        *TokenNumber\r
   )\r
 {\r
   UINTN               GuidTableIdx;\r
@@ -493,16 +497,16 @@ PeiPcdGetNextToken (
   BOOLEAN             Found;\r
     \r
   if (Guid == NULL) {\r
-    *TokenNumber++;\r
+    (*TokenNumber)++;\r
 \r
     if (*TokenNumber >= PEI_NEX_TOKEN_NUMBER) {\r
-      *TokenNumber = 0;\r
+      *TokenNumber = PCD_INVALID_TOKEN_NUMBER;\r
     }\r
     \r
   } else {\r
 \r
     if (PEI_EXMAP_TABLE_EMPTY) {\r
-      *TokenNumber = (UINTN) PCD_INVALID_TOKEN_NUMBER;\r
+      *TokenNumber = PCD_INVALID_TOKEN_NUMBER;\r
       return EFI_NOT_FOUND;\r
     }\r
     \r