]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EdkModulePkg/Universal/Variable/RuntimeDxe/Variable.h
1) Change the alignment from 1 to 2 for IA32 and X64 arch.
[mirror_edk2.git] / EdkModulePkg / Universal / Variable / RuntimeDxe / Variable.h
index d1fd5e271ee8ce2c755c0afd09cec9933213523e..51090abb53510221880116c32c4a292636c5cc08 100644 (file)
@@ -1,18 +1,18 @@
 /*++\r
 \r
-Copyright (c) 2006, Intel Corporation                                                         \r
-All rights reserved. This program and the accompanying materials                          \r
-are licensed and made available under the terms and conditions of the BSD License         \r
-which accompanies this distribution.  The full text of the license may be found at        \r
-http://opensource.org/licenses/bsd-license.php                                            \r
-                                                                                          \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+Copyright (c) 2006 - 2007, Intel Corporation\r
+All rights reserved. This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution.  The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
 \r
 Module Name:\r
 \r
   Variable.h\r
-  \r
+\r
 Abstract:\r
 \r
 --*/\r
@@ -26,15 +26,10 @@ Abstract:
 \r
 //\r
 // BugBug: We need relcate the head file.\r
-// \r
+//\r
 #include <Common/Variable.h>\r
 \r
-#if defined (MDE_CPU_IPF)\r
-#define ALIGNMENT  8\r
-#else\r
-#define ALIGNMENT  1\r
-#endif\r
-\r
+#define VARIABLE_RECLAIM_THRESHOLD (1024)\r
 \r
 #define VARIABLE_STORE_SIZE (64 * 1024)\r
 #define SCRATCH_SIZE        (4 * 1024)\r
@@ -65,15 +60,18 @@ typedef struct {
 typedef struct {\r
   EFI_PHYSICAL_ADDRESS  VolatileVariableBase;\r
   EFI_PHYSICAL_ADDRESS  NonVolatileVariableBase;\r
+  EFI_LOCK              VariableServicesLock;\r
 } VARIABLE_GLOBAL;\r
 \r
 typedef struct {\r
-  VARIABLE_GLOBAL VariableBase[2];\r
+  VARIABLE_GLOBAL VariableGlobal[2];\r
   UINTN           VolatileLastVariableOffset;\r
   UINTN           NonVolatileLastVariableOffset;\r
   UINT32          FvbInstance;\r
 } ESAL_VARIABLE_GLOBAL;\r
 \r
+extern ESAL_VARIABLE_GLOBAL *mVariableModuleGlobal;\r
+\r
 //\r
 // Functions\r
 //\r
@@ -140,4 +138,16 @@ SetVariable (
   )\r
 ;\r
 \r
+EFI_STATUS\r
+EFIAPI\r
+QueryVariableInfo (\r
+  IN  UINT32                 Attributes,\r
+  OUT UINT64                 *MaximumVariableStorageSize,\r
+  OUT UINT64                 *RemainingVariableStorageSize,\r
+  OUT UINT64                 *MaximumVariableSize,\r
+  IN  VARIABLE_GLOBAL        *Global,\r
+  IN  UINT32                 Instance\r
+  )\r
+;\r
+\r
 #endif\r