summaryrefslogtreecommitdiffstats
path: root/OvmfPkg/PlatformDxe
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2014-03-22 07:13:24 +0000
committerjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>2014-03-22 07:13:24 +0000
commit276a7ea1477465baab954a9c8eec7b866554b465 (patch)
treed580d3343ba5d6235b5ff313fee07a36ea6cd496 /OvmfPkg/PlatformDxe
parent877a4dbb02d5508008a7d63c05d39d82f47d449b (diff)
downloadedk2-276a7ea1477465baab954a9c8eec7b866554b465.tar.gz
edk2-276a7ea1477465baab954a9c8eec7b866554b465.tar.bz2
edk2-276a7ea1477465baab954a9c8eec7b866554b465.zip
OvmfPkg: PlatformDxe: introduce state for the main form
We'll need a C language (ie. structure) representation for the state of the visual elements on the form. We choose the Buffer Storage kind (see 29.2.5.6 "Storage" in UEFI 2.4A), because it's easy to work with. Note that the structure added in this patch has nothing to do with UEFI non-volatile variables. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15368 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'OvmfPkg/PlatformDxe')
-rw-r--r--OvmfPkg/PlatformDxe/Platform.h12
-rw-r--r--OvmfPkg/PlatformDxe/PlatformForms.vfr5
2 files changed, 17 insertions, 0 deletions
diff --git a/OvmfPkg/PlatformDxe/Platform.h b/OvmfPkg/PlatformDxe/Platform.h
index 1ee580e785..afa15db2d0 100644
--- a/OvmfPkg/PlatformDxe/Platform.h
+++ b/OvmfPkg/PlatformDxe/Platform.h
@@ -19,6 +19,18 @@
//
// Macro and type definitions that connect the form with the HII driver code.
//
+#define FORMSTATEID_MAIN_FORM 1
#define FORMID_MAIN_FORM 1
+#define MAXSIZE_RES_CUR 16
+
+//
+// This structure describes the form state. Its fields relate strictly to the
+// visual widgets on the form.
+//
+typedef struct {
+ UINT16 CurrentPreferredResolution[MAXSIZE_RES_CUR];
+ UINT32 NextPreferredResolution;
+} MAIN_FORM_STATE;
+
#endif // _PLATFORM_H_
diff --git a/OvmfPkg/PlatformDxe/PlatformForms.vfr b/OvmfPkg/PlatformDxe/PlatformForms.vfr
index e9ae0de057..c526ffac9e 100644
--- a/OvmfPkg/PlatformDxe/PlatformForms.vfr
+++ b/OvmfPkg/PlatformDxe/PlatformForms.vfr
@@ -30,6 +30,11 @@ formset
title = STRING_TOKEN(STR_FORMSET_TITLE),
help = STRING_TOKEN(STR_FORMSET_HELP),
+ varstore MAIN_FORM_STATE,
+ varid = FORMSTATEID_MAIN_FORM,
+ name = MainFormState,
+ guid = OVMF_PLATFORM_CONFIG_GUID;
+
form
formid = FORMID_MAIN_FORM,
title = STRING_TOKEN(STR_MAIN_FORM_TITLE);