]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkModulePkg/Universal/PCD/Dxe/Service.h
Refine some internal functions of PCD Driver.
[mirror_edk2.git] / EdkModulePkg / Universal / PCD / Dxe / Service.h
index 54ab1b6551667dfc4511c4eba4bd6649872dc4a3..af9fc420a3a09e74d2f8013ff2120d819fbb224e 100644 (file)
@@ -32,22 +32,30 @@ Module Name: Service.h
   #error "Please make sure the version of PCD Service DXE Driver and PCD DXE Database Generation Tool matches"\r
 #endif\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
+\r
 //\r
 // Internal Functions\r
 //\r
 \r
 EFI_STATUS\r
 SetWorker (\r
-  UINTN         TokenNumber,\r
-  VOID          *Data,\r
-  UINTN         Size,\r
-  BOOLEAN       PtrType\r
+  IN PCD_TOKEN_NUMBER          TokenNumber,\r
+  IN VOID                      *Data,\r
+  IN UINTN                     Size,\r
+  IN BOOLEAN                   PtrType\r
   )\r
 ;\r
 \r
 EFI_STATUS\r
 ExSetWorker (\r
-  IN UINT32               ExTokenNumber,\r
+  IN PCD_TOKEN_NUMBER     ExTokenNumber,\r
   IN CONST EFI_GUID       *Guid,\r
   VOID                    *Data,\r
   UINTN                   Size,\r
@@ -58,14 +66,15 @@ ExSetWorker (
 \r
 VOID *\r
 GetWorker (\r
-  UINTN  TokenNumber\r
+  PCD_TOKEN_NUMBER  TokenNumber,\r
+  UINTN             GetSize\r
   )\r
 ;\r
 \r
 VOID *\r
 ExGetWorker (\r
   IN CONST EFI_GUID         *Guid,\r
-  IN UINTN                  ExTokenNumber,\r
+  IN PCD_TOKEN_NUMBER       ExTokenNumber,\r
   IN UINTN                  GetSize\r
   ) \r
 ;\r
@@ -82,24 +91,24 @@ EFI_STATUS
 GetHiiVariable (\r
   IN  EFI_GUID      *VariableGuid,\r
   IN  UINT16        *VariableName,\r
-  OUT VOID          ** VariableData,\r
+  OUT VOID          **VariableData,\r
   OUT UINTN         *VariableSize\r
   )\r
 ;\r
 \r
 EFI_STATUS\r
 DxeRegisterCallBackWorker (\r
-  IN  UINTN        TokenNumber,\r
-  IN  CONST EFI_GUID              *Guid, OPTIONAL\r
-  IN  PCD_PROTOCOL_CALLBACK   CallBackFunction,\r
-  IN  BOOLEAN                 Reigster\r
+  IN  PCD_TOKEN_NUMBER        TokenNumber,\r
+  IN  CONST EFI_GUID          *Guid, OPTIONAL\r
+  IN  PCD_PROTOCOL_CALLBACK   CallBackFunction\r
 );\r
 \r
 EFI_STATUS\r
-DxeGetNextTokenWorker (\r
-  IN OUT UINTN *Token,\r
-  IN CONST EFI_GUID           *Guid     OPTIONAL\r
-  );\r
+DxeUnRegisterCallBackWorker (\r
+  IN  PCD_TOKEN_NUMBER        TokenNumber,\r
+  IN  CONST EFI_GUID          *Guid, OPTIONAL\r
+  IN  PCD_PROTOCOL_CALLBACK   CallBackFunction\r
+);\r
 \r
 VOID\r
 BuildPcdDxeDataBase (\r
@@ -107,21 +116,12 @@ BuildPcdDxeDataBase (
 );\r
 \r
 \r
-typedef struct {\r
-  UINTN   TokenNumber;\r
-  UINTN   Size;\r
-  UINT32  LocalTokenNumberAlias;\r
-  BOOLEAN IsPeiDb;\r
-} EX_PCD_ENTRY_ATTRIBUTE;\r
-\r
-VOID\r
-GetExPcdTokenAttributes (\r
+PCD_TOKEN_NUMBER\r
+GetExPcdTokenNumber (\r
   IN CONST EFI_GUID             *Guid,\r
-  IN UINT32                     ExTokenNumber,\r
-  OUT EX_PCD_ENTRY_ATTRIBUTE    *ExAttr\r
+  IN PCD_TOKEN_NUMBER           ExTokenNumber\r
   )\r
 ;\r
-\r
 //\r
 // Protocol Interface function declaration.\r
 //\r
@@ -363,7 +363,7 @@ DxePcdSetPtrEx (
 EFI_STATUS\r
 EFIAPI\r
 DxePcdSetBoolEx (\r
-  IN CONST EFI_GUID        *Guid,\r
+  IN CONST EFI_GUID    *Guid,\r
   IN PCD_TOKEN_NUMBER  TokenNumber,\r
   IN BOOLEAN           Value\r
   )\r
@@ -373,9 +373,9 @@ DxePcdSetBoolEx (
 \r
 EFI_STATUS\r
 EFIAPI\r
-PcdRegisterCallBackOnSet (\r
+DxeRegisterCallBackOnSet (\r
   IN  PCD_TOKEN_NUMBER        TokenNumber,\r
-  IN  CONST EFI_GUID              *Guid, OPTIONAL\r
+  IN  CONST EFI_GUID          *Guid, OPTIONAL\r
   IN  PCD_PROTOCOL_CALLBACK   CallBackFunction\r
   )\r
 ;\r
@@ -383,7 +383,7 @@ PcdRegisterCallBackOnSet (
 \r
 EFI_STATUS\r
 EFIAPI\r
-PcdUnRegisterCallBackOnSet (\r
+DxeUnRegisterCallBackOnSet (\r
   IN  PCD_TOKEN_NUMBER        TokenNumber,\r
   IN  CONST EFI_GUID          *Guid, OPTIONAL\r
   IN  PCD_PROTOCOL_CALLBACK   CallBackFunction\r
@@ -399,19 +399,20 @@ DxePcdGetNextToken (
   )\r
 ;\r
 \r
-EFI_STATUS\r
-SetWorkerByLocalTokenNumber (\r
-  UINT32        LocalTokenNumber,\r
-  VOID          *Data,\r
-  UINTN         Size,\r
-  BOOLEAN       PtrType,\r
-  BOOLEAN       IsPeiDb\r
+PCD_TOKEN_NUMBER\r
+ExGetNextTokeNumber (\r
+  IN CONST EFI_GUID    *Guid,\r
+  IN PCD_TOKEN_NUMBER  TokenNumber,\r
+  IN EFI_GUID          *GuidTable,\r
+  IN UINTN             SizeOfGuidTable,\r
+  IN DYNAMICEX_MAPPING *ExMapTable,\r
+  IN UINTN             SizeOfExMapTable\r
   )\r
 ;\r
 \r
 extern EFI_GUID gPcdDataBaseHobGuid;\r
 \r
-extern PCD_DATABASE * gPcdDatabase;\r
+extern PCD_DATABASE * mPcdDatabase;\r
 \r
 extern DXE_PCD_DATABASE_INIT gDXEPcdDbInit;\r
 \r