]> git.proxmox.com Git - mirror_edk2.git/blame - EdkCompatibilityPkg/Foundation/Include/TianoHii.h
Sync all bug fixes between EDK1.04 and EDK1.06 into EdkCompatibilityPkg.
[mirror_edk2.git] / EdkCompatibilityPkg / Foundation / Include / TianoHii.h
CommitLineData
c7f33ca4 1/*++\r
2\r
3e99020d 3Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r
f57387d5 4This program and the accompanying materials\r
c7f33ca4 5are licensed and made available under the terms and conditions of the BSD License\r
6which accompanies this distribution. The full text of the license may be found at\r
7http://opensource.org/licenses/bsd-license.php\r
8\r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11\r
12Module Name:\r
13\r
14 TianoHii.h\r
15\r
16Abstract:\r
17\r
18 Tiano specific HII relative definition.\r
19\r
20Revision History\r
21\r
22--*/\r
23\r
24#ifndef _TIANO_HII_H_\r
25#define _TIANO_HII_H_\r
26\r
27#include "EfiHii.h"\r
28\r
29#define NARROW_CHAR 0xFFF0\r
30#define WIDE_CHAR 0xFFF1\r
31#define NON_BREAKING_CHAR 0xFFF2\r
32\r
33#define GLYPH_WIDTH EFI_GLYPH_WIDTH\r
34#define GLYPH_HEIGHT EFI_GLYPH_HEIGHT\r
35\r
36//\r
37// State defined for password statemachine \r
38//\r
39#define BROWSER_STATE_VALIDATE_PASSWORD 0\r
40#define BROWSER_STATE_SET_PASSWORD 1\r
41\r
42//\r
43// References to string tokens must use this macro to enable scanning for\r
44// token usages.\r
45//\r
46#define STRING_TOKEN(t) t\r
47\r
48//\r
49// GUIDed opcodes defined for Tiano\r
50//\r
51#define EFI_IFR_TIANO_GUID \\r
7ccf38a3 52 { 0xf0b1735, 0x87a0, 0x4193, {0xb2, 0x66, 0x53, 0x8c, 0x38, 0xaf, 0x48, 0xce} }\r
3e99020d
LG
53//\r
54// ClassGuid for Front Page\r
55//\r
56#define EFI_HII_FRONT_PAGE_CLASS_GUID \\r
57 { 0x94d411b7, 0x7669, 0x45c3, {0xba, 0x3b, 0xf3, 0xa5, 0x8a, 0x71, 0x56, 0x81} }\r
c7f33ca4 58\r
59#pragma pack(1)\r
60\r
61#define EFI_IFR_EXTEND_OP_LABEL 0x0\r
62#define EFI_IFR_EXTEND_OP_BANNER 0x1\r
63#define EFI_IFR_EXTEND_OP_TIMEOUT 0x2\r
64#define EFI_IFR_EXTEND_OP_CLASS 0x3\r
65#define EFI_IFR_EXTEND_OP_SUBCLASS 0x4\r
66\r
67typedef struct _EFI_IFR_GUID_LABEL {\r
68 EFI_IFR_OP_HEADER Header;\r
69 EFI_GUID Guid;\r
70 UINT8 ExtendOpCode;\r
71 UINT16 Number;\r
72} EFI_IFR_GUID_LABEL;\r
73\r
74#define EFI_IFR_BANNER_ALIGN_LEFT 0\r
75#define EFI_IFR_BANNER_ALIGN_CENTER 1\r
76#define EFI_IFR_BANNER_ALIGN_RIGHT 2\r
77\r
78typedef struct _EFI_IFR_GUID_BANNER {\r
79 EFI_IFR_OP_HEADER Header;\r
80 EFI_GUID Guid;\r
81 UINT8 ExtendOpCode; // Extended opcode is EFI_IFR_EXTEND_OP_BANNER\r
82 EFI_STRING_ID Title; // The string token for the banner title\r
83 UINT16 LineNumber; // 1-based line number\r
84 UINT8 Alignment; // left, center, or right-aligned\r
85} EFI_IFR_GUID_BANNER;\r
86\r
87typedef struct _EFI_IFR_GUID_TIMEOUT {\r
88 EFI_IFR_OP_HEADER Header;\r
89 EFI_GUID Guid;\r
90 UINT8 ExtendOpCode;\r
91 UINT16 TimeOut;\r
92} EFI_IFR_GUID_TIMEOUT;\r
93\r
94#define EFI_NON_DEVICE_CLASS 0x00\r
95#define EFI_DISK_DEVICE_CLASS 0x01\r
96#define EFI_VIDEO_DEVICE_CLASS 0x02\r
97#define EFI_NETWORK_DEVICE_CLASS 0x04\r
98#define EFI_INPUT_DEVICE_CLASS 0x08\r
99#define EFI_ON_BOARD_DEVICE_CLASS 0x10\r
100#define EFI_OTHER_DEVICE_CLASS 0x20\r
101\r
102typedef struct _EFI_IFR_GUID_CLASS {\r
103 EFI_IFR_OP_HEADER Header;\r
104 EFI_GUID Guid;\r
105 UINT8 ExtendOpCode;\r
106 UINT16 Class;\r
107} EFI_IFR_GUID_CLASS;\r
108\r
109#define EFI_SETUP_APPLICATION_SUBCLASS 0x00\r
110#define EFI_GENERAL_APPLICATION_SUBCLASS 0x01\r
111#define EFI_FRONT_PAGE_SUBCLASS 0x02\r
112#define EFI_SINGLE_USE_SUBCLASS 0x03\r
113\r
114typedef struct _EFI_IFR_GUID_SUBCLASS {\r
115 EFI_IFR_OP_HEADER Header;\r
116 EFI_GUID Guid;\r
117 UINT8 ExtendOpCode;\r
118 UINT16 SubClass;\r
119} EFI_IFR_GUID_SUBCLASS;\r
120\r
121#pragma pack()\r
122\r
123#endif\r