#include <Guid/EventGroup.h>\r
#include <Guid/VariableFormat.h>\r
#include <Guid/SystemNvDataGuid.h>\r
+#include <Guid/FaultTolerantWrite.h>\r
#include <Guid/HardwareErrorVariable.h>\r
\r
-#define VARIABLE_RECLAIM_THRESHOLD (1024)\r
+#define VARIABLE_ATTRIBUTE_BS_RT (EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS)\r
+#define VARIABLE_ATTRIBUTE_NV_BS_RT (VARIABLE_ATTRIBUTE_BS_RT | EFI_VARIABLE_NON_VOLATILE)\r
+#define VARIABLE_ATTRIBUTE_NV_BS_RT_AT (VARIABLE_ATTRIBUTE_NV_BS_RT | EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS)\r
+\r
+typedef struct {\r
+ CHAR16 *Name;\r
+ UINT32 Attributes;\r
+} GLOBAL_VARIABLE_ENTRY;\r
\r
///\r
/// The size of a 3 character ISO639 language code.\r
VariableBase. Fault Tolerant Write protocol is used for writing.\r
\r
@param VariableBase Base address of the variable to write.\r
- @param Buffer Point to the data buffer.\r
- @param BufferSize The number of bytes of the data Buffer.\r
+ @param VariableBuffer Point to the variable data buffer.\r
\r
@retval EFI_SUCCESS The function completed successfully.\r
@retval EFI_NOT_FOUND Fail to locate Fault Tolerant Write protocol.\r
EFI_STATUS\r
FtwVariableSpace (\r
IN EFI_PHYSICAL_ADDRESS VariableBase,\r
- IN UINT8 *Buffer,\r
- IN UINTN BufferSize\r
+ IN VARIABLE_STORE_HEADER *VariableBuffer\r
);\r
\r
\r