VirtualBox

source: vbox/trunk/src/VBox/Devices/EFI/FirmwareNew/MdeModulePkg/Library/VarCheckHiiLib/InternalVarCheckStructure.h@ 85716

最後變更 在這個檔案從85716是 80721,由 vboxsync 提交於 6 年 前

Devices/EFI/FirmwareNew: Start upgrade process to edk2-stable201908 (compiles on Windows and works to some extent), bugref:4643

  • 屬性 svn:eol-style 設為 native
檔案大小: 3.0 KB
 
1/** @file
2 Internal structure for Var Check Hii.
3
4Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>
5SPDX-License-Identifier: BSD-2-Clause-Patent
6
7**/
8
9#ifndef _VAR_CHECK_STRUCTURE_H_
10#define _VAR_CHECK_STRUCTURE_H_
11
12//
13// Alignment for Hii Variable and Question header.
14//
15#define HEADER_ALIGNMENT 4
16#define HEADER_ALIGN(Header) (((UINTN) (Header) + HEADER_ALIGNMENT - 1) & (~(HEADER_ALIGNMENT - 1)))
17
18#pragma pack (1)
19
20#define VAR_CHECK_HII_REVISION 0x0002
21
22typedef struct {
23 UINT16 Revision;
24 UINT16 HeaderLength;
25 UINT32 Length; // Length include this header
26 UINT8 OpCode;
27 UINT8 Reserved;
28 UINT16 Size;
29 UINT32 Attributes;
30 EFI_GUID Guid;
31//CHAR16 Name[];
32} VAR_CHECK_HII_VARIABLE_HEADER;
33
34typedef struct {
35 UINT8 OpCode;
36 UINT8 Length; // Length include this header
37 UINT16 VarOffset;
38 UINT8 StorageWidth;
39 BOOLEAN BitFieldStore; // Whether the Question is stored in bit field, if TRUE, the VarOffset/StorageWidth will be saved as bit level, otherwise in byte level.
40} VAR_CHECK_HII_QUESTION_HEADER;
41
42typedef struct {
43 UINT8 OpCode;
44 UINT8 Length; // Length include this header
45 UINT16 VarOffset;
46 UINT8 StorageWidth;
47 BOOLEAN BitFieldStore; // Whether the Question is stored in bit field, if TRUE, the VarOffset/StorageWidth will be saved as bit level, otherwise in byte level.
48//UINTx Data[]; // x = UINT8/UINT16/UINT32/UINT64;
49} VAR_CHECK_HII_QUESTION_ONEOF;
50
51typedef struct {
52 UINT8 OpCode;
53 UINT8 Length; // Length include this header
54 UINT16 VarOffset;
55 UINT8 StorageWidth;
56 BOOLEAN BitFieldStore; // Whether the Question is stored in bit field, if TRUE, the VarOffset/StorageWidth will be saved as bit level, otherwise in byte level.
57} VAR_CHECK_HII_QUESTION_CHECKBOX;
58
59typedef struct {
60 UINT8 OpCode;
61 UINT8 Length; // Length include this header
62 UINT16 VarOffset;
63 UINT8 StorageWidth;
64 BOOLEAN BitFieldStore; // Whether the Question is stored in bit field, if TRUE, the VarOffset/StorageWidth will be saved as bit level, otherwise in byte level.
65//UINTx Minimum; // x = UINT8/UINT16/UINT32/UINT64;
66//UINTx Maximum; // x = UINT8/UINT16/UINT32/UINT64;
67} VAR_CHECK_HII_QUESTION_NUMERIC;
68
69typedef struct {
70 UINT8 OpCode;
71 UINT8 Length; // Length include this header
72 UINT16 VarOffset;
73 UINT8 StorageWidth;
74 BOOLEAN BitFieldStore; // Whether the Question is stored in bit field, if TRUE, the VarOffset/StorageWidth will be saved as bit level, otherwise in byte level.
75 UINT8 MaxContainers;
76//UINTx Data[]; // x = UINT8/UINT16/UINT32/UINT64;
77} VAR_CHECK_HII_QUESTION_ORDEREDLIST;
78
79#pragma pack ()
80
81#endif
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette