]> git.proxmox.com Git - mirror_edk2.git/blobdiff - DuetPkg/FSVariable/FSVariable.c
1. delete Include/Guid/VariableInfo.h
[mirror_edk2.git] / DuetPkg / FSVariable / FSVariable.c
index 1ec2e56d3e49d0d96a98763342481696575ec1d5..d20b3a78e3ed4598c9ed2500b67c792b57c2767e 100644 (file)
@@ -22,7 +22,7 @@ Abstract:
 #include "FSVariable.h"\r
 \r
 VARIABLE_STORE_HEADER mStoreHeaderTemplate = {\r
-  VARIABLE_STORE_SIGNATURE,\r
+  gEfiVariableGuid,\r
   VOLATILE_VARIABLE_STORE_SIZE,\r
   VARIABLE_STORE_FORMATTED,\r
   VARIABLE_STORE_HEALTHY,\r
@@ -35,15 +35,13 @@ VARIABLE_STORE_HEADER mStoreHeaderTemplate = {
 //\r
 VARIABLE_GLOBAL  *mGlobal;\r
 \r
-STATIC\r
 VOID\r
 EFIAPI\r
-OnVirtualAddressChange (\r
+OnVirtualAddressChangeFsv (\r
   IN EFI_EVENT        Event,\r
   IN VOID             *Context\r
   );\r
 \r
-STATIC\r
 VOID\r
 EFIAPI\r
 OnSimpleFileSystemInstall (\r
@@ -51,7 +49,6 @@ OnSimpleFileSystemInstall (
   IN VOID             *Context\r
   );\r
 \r
-STATIC\r
 BOOLEAN\r
 IsValidVariableHeader (\r
   IN  VARIABLE_HEADER   *Variable\r
@@ -73,7 +70,7 @@ Returns:
 {\r
   if (Variable == NULL ||\r
       Variable->StartId != VARIABLE_DATA ||\r
-      (sizeof (VARIABLE_HEADER) + Variable->NameSize + Variable->DataSize) > MAX_VARIABLE_SIZE\r
+      (sizeof (VARIABLE_HEADER) + Variable->NameSize + Variable->DataSize) > FixedPcdGet32(PcdMaxVariableSize)\r
       ) {\r
     return FALSE;\r
   }\r
@@ -81,7 +78,6 @@ Returns:
   return TRUE;\r
 }\r
 \r
-STATIC\r
 VARIABLE_STORE_STATUS\r
 GetVariableStoreStatus (\r
   IN VARIABLE_STORE_HEADER *VarStoreHeader\r
@@ -104,15 +100,18 @@ Returns:
 \r
 --*/\r
 {\r
-  if ((VarStoreHeader->Signature == mStoreHeaderTemplate.Signature) &&\r
+  if (CompareGuid (&VarStoreHeader->Signature, &mStoreHeaderTemplate.Signature) &&\r
       (VarStoreHeader->Format == mStoreHeaderTemplate.Format) &&\r
       (VarStoreHeader->State == mStoreHeaderTemplate.State)\r
      ) {\r
     return EfiValid;\r
-  } else if (VarStoreHeader->Signature == VAR_DEFAULT_VALUE_32 &&\r
-           VarStoreHeader->Size == VAR_DEFAULT_VALUE_32 &&\r
-           VarStoreHeader->Format == VAR_DEFAULT_VALUE &&\r
-           VarStoreHeader->State == VAR_DEFAULT_VALUE\r
+  } else if (((UINT32 *)(&VarStoreHeader->Signature))[0] == VAR_DEFAULT_VALUE_32 &&\r
+             ((UINT32 *)(&VarStoreHeader->Signature))[1] == VAR_DEFAULT_VALUE_32 &&\r
+             ((UINT32 *)(&VarStoreHeader->Signature))[2] == VAR_DEFAULT_VALUE_32 &&\r
+             ((UINT32 *)(&VarStoreHeader->Signature))[3] == VAR_DEFAULT_VALUE_32 &&\r
+             VarStoreHeader->Size == VAR_DEFAULT_VALUE_32 &&\r
+             VarStoreHeader->Format == VAR_DEFAULT_VALUE &&\r
+             VarStoreHeader->State == VAR_DEFAULT_VALUE\r
           ) {\r
 \r
     return EfiRaw;\r
@@ -121,7 +120,6 @@ Returns:
   }\r
 }\r
 \r
-STATIC\r
 UINT8 *\r
 GetVariableDataPtr (\r
   IN  VARIABLE_HEADER   *Variable\r
@@ -148,7 +146,6 @@ Returns:
   return (UINT8 *) ((UINTN) GET_VARIABLE_NAME_PTR (Variable) + Variable->NameSize + GET_PAD_SIZE (Variable->NameSize));\r
 }\r
 \r
-STATIC\r
 VARIABLE_HEADER *\r
 GetNextVariablePtr (\r
   IN  VARIABLE_HEADER   *Variable\r
@@ -178,7 +175,6 @@ Returns:
   return (VARIABLE_HEADER *) ((UINTN) GetVariableDataPtr (Variable) + Variable->DataSize + GET_PAD_SIZE (Variable->DataSize));\r
 }\r
 \r
-STATIC\r
 VARIABLE_HEADER *\r
 GetEndPointer (\r
   IN VARIABLE_STORE_HEADER       *VarStoreHeader\r
@@ -250,7 +246,6 @@ Returns:
   return FALSE;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 Reclaim (\r
   IN  VARIABLE_STORAGE_TYPE StorageType,\r
@@ -300,7 +295,7 @@ Returns:
   Status = gBS->AllocatePool (\r
                   EfiBootServicesData,\r
                   ValidBufferSize,\r
-                  &ValidBuffer\r
+                  (VOID**) &ValidBuffer\r
                   );\r
   if (EFI_ERROR (Status)) {\r
     return Status;\r
@@ -374,7 +369,6 @@ Returns:
   return Status;\r
 }\r
 \r
-STATIC\r
 EFI_STATUS\r
 FindVariable (\r
   IN  CHAR16                  *VariableName,\r
@@ -676,8 +670,6 @@ Returns:
 \r
     Variable.CurrPtr = GetNextVariablePtr (Variable.CurrPtr);\r
   }\r
-\r
-  return EFI_NOT_FOUND;\r
 }\r
 \r
 EFI_STATUS\r
@@ -745,17 +737,17 @@ Returns:
   \r
   //\r
   //  The size of the VariableName, including the Unicode Null in bytes plus\r
-  //  the DataSize is limited to maximum size of MAX_HARDWARE_ERROR_VARIABLE_SIZE (32K)\r
-  //  bytes for HwErrRec, and MAX_VARIABLE_SIZE (1024) bytes for the others.\r
+  //  the DataSize is limited to maximum size of FixedPcdGet32(PcdMaxHardwareErrorVariableSize)\r
+  //  bytes for HwErrRec, and FixedPcdGet32(PcdMaxVariableSize) bytes for the others.\r
   //\r
   if ((Attributes & EFI_VARIABLE_HARDWARE_ERROR_RECORD) == EFI_VARIABLE_HARDWARE_ERROR_RECORD) {\r
-    if ((DataSize > MAX_HARDWARE_ERROR_VARIABLE_SIZE) ||                                                       \r
-        (sizeof (VARIABLE_HEADER) + StrSize (VariableName) + DataSize > MAX_HARDWARE_ERROR_VARIABLE_SIZE)) {\r
+    if ((DataSize > FixedPcdGet32(PcdMaxHardwareErrorVariableSize)) ||                                                       \r
+        (sizeof (VARIABLE_HEADER) + StrSize (VariableName) + DataSize > FixedPcdGet32(PcdMaxHardwareErrorVariableSize))) {\r
       return EFI_INVALID_PARAMETER;\r
     }    \r
   } else {\r
-    if ((DataSize > MAX_VARIABLE_SIZE) ||\r
-        (sizeof (VARIABLE_HEADER) + StrSize (VariableName) + DataSize > MAX_VARIABLE_SIZE)) {\r
+    if ((DataSize > FixedPcdGet32(PcdMaxVariableSize)) ||\r
+        (sizeof (VARIABLE_HEADER) + StrSize (VariableName) + DataSize > FixedPcdGet32(PcdMaxVariableSize))) {\r
       return EFI_INVALID_PARAMETER;\r
     }  \r
   }  \r
@@ -1046,15 +1038,15 @@ Returns:
   *RemainingVariableStorageSize = VariableStoreHeader->Size - sizeof (VARIABLE_STORE_HEADER);\r
 \r
   //\r
-  // Let *MaximumVariableSize be MAX_VARIABLE_SIZE with the exception of the variable header size.\r
+  // Let *MaximumVariableSize be FixedPcdGet32(PcdMaxVariableSize) with the exception of the variable header size.\r
   //\r
-  *MaximumVariableSize = MAX_VARIABLE_SIZE - sizeof (VARIABLE_HEADER);\r
+  *MaximumVariableSize = FixedPcdGet32(PcdMaxVariableSize) - sizeof (VARIABLE_HEADER);\r
 \r
   //\r
   // Harware error record variable needs larger size.\r
   //\r
   if ((Attributes & EFI_VARIABLE_HARDWARE_ERROR_RECORD) == EFI_VARIABLE_HARDWARE_ERROR_RECORD) {\r
-    *MaximumVariableSize = MAX_HARDWARE_ERROR_VARIABLE_SIZE - sizeof (VARIABLE_HEADER);\r
+    *MaximumVariableSize = FixedPcdGet32(PcdMaxHardwareErrorVariableSize) - sizeof (VARIABLE_HEADER);\r
   }\r
   \r
   //\r
@@ -1143,7 +1135,7 @@ Returns:
   Status = gBS->AllocatePool (\r
                   EfiRuntimeServicesData,\r
                   (UINTN) sizeof (VARIABLE_GLOBAL),\r
-                  &mGlobal\r
+                  (VOID**) &mGlobal\r
                   );\r
   if (EFI_ERROR (Status)) {\r
     return Status;\r
@@ -1191,7 +1183,7 @@ Returns:
     Status = EFI_UNSUPPORTED;\r
     return Status;\r
   }\r
-  \r
+\r
   Status = FileStorageConstructor (\r
              &mGlobal->VariableStore[NonVolatile], \r
              &mGlobal->GoVirtualChildEvent[NonVolatile],\r
@@ -1305,10 +1297,9 @@ Returns:
 \r
 \r
 \r
-STATIC\r
 VOID\r
 EFIAPI\r
-OnVirtualAddressChange (\r
+OnVirtualAddressChangeFsv (\r
   IN EFI_EVENT        Event,\r
   IN VOID             *Context\r
   )\r
@@ -1317,9 +1308,9 @@ OnVirtualAddressChange (
 \r
   for (Index = 0; Index < MaxType; Index++) {\r
     mGlobal->GoVirtualChildEvent[Index] (Event, mGlobal->VariableStore[Index]);\r
-    EfiConvertPointer (0, &mGlobal->VariableStore[Index]);\r
+    EfiConvertPointer (0, (VOID**) &mGlobal->VariableStore[Index]);\r
     EfiConvertPointer (0, &mGlobal->VariableBase[Index]);\r
   }\r
   EfiConvertPointer (0, &mGlobal->Scratch);\r
-  EfiConvertPointer (0, &mGlobal);\r
+  EfiConvertPointer (0, (VOID**) &mGlobal);\r
 }\r