2.7 VFR Variable Store Definition

2.7.1 VFR Buffer Store Definition

vfrStatementVarStoreLinear ::=
"varstore"
(
StringIdentifier ","
| "UINT8" ","
| "UINT16" ","
| "UINT32" ","
| "UINT64" ","
| "EFI_HII_DATE" ","
| "EFI_HII_TIME" ","
| "EFI_HII_REF" ","
)
{ "varid" "=" Number "," }
"name" "=" StringIdentifier ","
"guid" "=" guidDefinition ";"

BEHAVIORS AND RESTRICTIONS

Note: The StringIdentifier following varstore is the referred data structure name. The StringIdentifier of name is the varstore name.
Note: name and guid are used jointly to specify the variable store.

Example

varstore MyData, name = RefName, guid = FORMSET_GUID;

2.7.2 VFR EFI Variable Store Definition

vfrStatementVarStoreEfi ::=
"efivarstore"
(
StringIdentifier ","
| "UINT8" ","
| "UINT16" ","
| "UINT32" ","
| "UINT64" ","
| "EFI_HII_DATE" ","
| "EFI_HII_TIME" ","
| "EFI_HII_REF" ","
)
{ "varid" "=" Number "," }
"attribute" "=" Number ( "|" Number )* ","
"name" "=" StringIdentifier ","
"guid" "=" guidDefinition ";"

BEHAVIORS AND RESTRICTIONS

Note: The StringIdentifier following efivarstore is the referred data structure name. The StringIdentifier of name is the varstore name.
Note: name and guid are used jointly to specify the efi variable store.

Example

efivarstore EfiDataStructure
attribute = EFI_VARIABLE_BOOTSERVICE_ACCESS,
name = EfiData,
guid = GUID;

2.7.3 VFR Variable Name Store Definition

vfrStatementVarStoreNameValue ::=
"namevaluevarstore" StringIdentifier ","
{ "varid" "=" Number "," }
( "name" "=" getStringId "," )+
"guid" "=" guidDefinition ";"

BEHAVIORS AND RESTRICTIONS

Example

namevaluevarstore NameValueVarStore,
name = STRING_TOKEN(STR_NAMEVALUE_TABLE_ITEM1),
name = STRING_TOKEN(STR_NAMEVALUE_TABLE_ITEM2),
name = STRING_TOKEN(STR_NAMEVALUE_TABLE_ITEM3),
guid = GUID;