From PhoenixWiki

Jump to: navigation, search

Creates a variable storage short-cut for linear buffer storage.


#define EFI_IFR_VARSTORE_OP 0x24
typedef struct {
  EFI_GUID          Guid;
  UINT16            Size;
//UINT8             Name[];


Member Description
Header The byte sequence that defines the type of opcode as well as the length of the opcode being defined. For this tag, Header.OpCode = EFI_IFR_VARSTORE_OP.
Guid The variable’s GUID definition. This field comprises one half of the variable name, with the other half being the human-readable aspect of the name, which is represented by the string immediately following the Size field.
VarStoreId The variable store identifier, which is unique within the current form set.. This field is the value that uniquely identify this instance from others. Question headers refer to

this value to designate which is the active variable that is being used. A value of zero is invalid.

Size The size of the variable store.
Name This field is actually not defined in the structure but is included here to illustrate the content of the encoding for this opcode. Because this field is variable in length, the

string is a NULL-terminated string and the overall size will be reflected in the opcode’s Header field.


This opcode describes a Buffer Storage Variable Store within a form set. A question can select this variable store by setting the VarStoreId field in its opcode header.

An EFI_IFR_VARSTORE with a specified VarStoreId must appear in the IFR before it can be referenced by a question.

Copyright (C) 2008 Phoenix Technologies Ltd. All Rights Reserved. Portions copyright (C) 2008 UEFI Forum, Inc. Used with permission

Personal tools