Add the support of GUID opcode which enable SetupBrowser to support IFR generated by a VFR compiler in Framework VFR compatible mode.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5667 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
qwang12 2008-08-18 08:16:40 +00:00
parent 41ad45c2b2
commit f2a05cc2b0
1 changed files with 23 additions and 2 deletions

View File

@ -49,7 +49,6 @@ typedef struct {
#define EFI_IFR_TIANO_GUID \
{ 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce} }
#pragma pack(1)
#define EFI_IFR_EXTEND_OP_LABEL 0x0
@ -59,6 +58,7 @@ typedef struct {
#define EFI_IFR_EXTEND_OP_SUBCLASS 0x4
#define EFI_IFR_EXTEND_OP_OPTIONKEY 0x5
typedef struct _EFI_IFR_GUID_LABEL {
EFI_IFR_OP_HEADER Header;
EFI_GUID Guid;
@ -113,6 +113,15 @@ typedef struct _EFI_IFR_GUID_SUBCLASS {
UINT16 SubClass;
} EFI_IFR_GUID_SUBCLASS;
//
// GUIDed opcodes defined for Tiano
//
#define EFI_IFR_FRAMEWORK_GUID \
{ 0x31ca5d1a, 0xd511, 0x4931, { 0xb7, 0x82, 0xae, 0x6b, 0x2b, 0x17, 0x8c, 0xd7 } }
#define EFI_IFR_EXTEND_OP_OPTIONKEY 0x0
#define EFI_IFR_EXTEND_OP_VAREQNAME 0x1
//
// Store the framework vfr option key value
//
@ -122,9 +131,21 @@ typedef struct _EFI_IFR_GUID_OPTIONKEY {
UINT8 ExtendOpCode;
EFI_QUESTION_ID QuestionId;
EFI_IFR_TYPE_VALUE OptionValue;
EFI_QUESTION_ID KeyValue;
UINT16 KeyValue;
} EFI_IFR_GUID_OPTIONKEY;
//
// Store the framework vfr vareqval name number
//
typedef struct _EFI_IFR_GUID_VAREQNAME {
EFI_IFR_OP_HEADER Header;
EFI_GUID Guid;
UINT8 ExtendOpCode;
EFI_QUESTION_ID QuestionId;
EFI_STRING_ID NameId;
} EFI_IFR_GUID_VAREQNAME;
#pragma pack()
#endif