summaryrefslogtreecommitdiff
path: root/inc/efiui.h
diff options
context:
space:
mode:
authorNigel Croxon <nigel.croxon@hp.com>2014-11-25 10:09:50 -0500
committerNigel Croxon <nigel.croxon@hp.com>2014-11-25 10:09:50 -0500
commit530d68ba191850edafc6da22cb2df55bec0c5fa5 (patch)
tree6752986507d3fc8ffc65085deedf11e7887a3d2a /inc/efiui.h
parent00bd66ef46b59a1623a293491a8b2c65a6d61975 (diff)
downloadgnu-efi-530d68ba191850edafc6da22cb2df55bec0c5fa5.tar.gz
The gnu-efi-3.0 toplevel subdirectory is really annoying. Kill it.
Signed-off-by: Peter Jones <pjones@redhat.com> Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
Diffstat (limited to 'inc/efiui.h')
-rw-r--r--inc/efiui.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/inc/efiui.h b/inc/efiui.h
new file mode 100644
index 0000000..7341943
--- /dev/null
+++ b/inc/efiui.h
@@ -0,0 +1,54 @@
+#ifndef _EFI_UI_H
+#define _EFI_UI_H
+
+/*++
+
+Copyright (c) 200 Intel Corporation
+
+Module Name:
+
+ EfiUi.h
+
+Abstract:
+ Protocol used to build User Interface (UI) stuff.
+
+ This protocol is just data. It is a multi dimentional array.
+ For each string there is an array of UI_STRING_ENTRY. Each string
+ is for a different language translation of the same string. The list
+ is terminated by a NULL UiString. There can be any number of
+ UI_STRING_ENTRY arrays. A NULL array terminates the list. A NULL array
+ entry contains all zeros.
+
+ Thus the shortest possible EFI_UI_PROTOCOL has three UI_STRING_ENTRY.
+ The String, it's NULL terminator, and the NULL terminator for the entire
+ thing.
+
+
+Revision History
+
+--*/
+
+#define EFI_UI_PROTOCOL \
+ { 0x32dd7981, 0x2d27, 0x11d4, {0xbc, 0x8b, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} }
+
+
+typedef enum {
+ UiDeviceString,
+ UiVendorString,
+ UiMaxString
+} UI_STRING_TYPE;
+
+typedef struct {
+ ISO_639_2 *LangCode;
+ CHAR16 *UiString;
+} UI_STRING_ENTRY;
+
+#define EFI_UI_VERSION 0x00010000
+
+typedef struct _UI_INTERFACE {
+ UINT32 Version;
+ UI_STRING_ENTRY *Entry;
+} UI_INTERFACE;
+
+
+#endif