Add example of Name/Value pair var store to DriverSample
[efi/edk2/.git] / edk2 / MdeModulePkg / Universal / DriverSampleDxe / NVDataStruc.h
1 /** @file\r
2 \r
3 Copyright (c) 2007 - 2009, Intel Corporation\r
4 All rights reserved. This program and the accompanying materials\r
5 are licensed and made available under the terms and conditions of the BSD License\r
6 which accompanies this distribution.  The full text of the license may be found at\r
7 http://opensource.org/licenses/bsd-license.php\r
8 \r
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11 \r
12 Module Name:\r
13 \r
14   NVDataStruc.h\r
15 \r
16 Abstract:\r
17 \r
18   NVData structure used by the sample driver\r
19 \r
20 Revision History:\r
21 \r
22 \r
23 **/\r
24 \r
25 #ifndef _NVDATASTRUC_H_\r
26 #define _NVDATASTRUC_H_\r
27 \r
28 #include <Guid/HiiPlatformSetupFormset.h>\r
29 \r
30 #define FORMSET_GUID \\r
31   { \\r
32     0xA04A27f4, 0xDF00, 0x4D42, {0xB5, 0x52, 0x39, 0x51, 0x13, 0x02, 0x11, 0x3D} \\r
33   }\r
34 \r
35 #define INVENTORY_GUID \\r
36   { \\r
37     0xb3f56470, 0x6141, 0x4621, {0x8f, 0x19, 0x70, 0x4e, 0x57, 0x7a, 0xa9, 0xe8} \\r
38   }\r
39 \r
40 #define CONFIGURATION_VARSTORE_ID    0x1234\r
41 \r
42 #pragma pack(1)\r
43 typedef struct {\r
44   UINT16  WhatIsThePassword[20];\r
45   UINT16  WhatIsThePassword2[20];\r
46   UINT16  MyStringData[40];\r
47   UINT16  PasswordClearText[20];\r
48   UINT16  SomethingHiddenForHtml;\r
49   UINT8   HowOldAreYouInYearsManual;\r
50   UINT16  HowTallAreYouManual;\r
51   UINT8   HowOldAreYouInYears;\r
52   UINT16  HowTallAreYou;\r
53   UINT8   MyFavoriteNumber;\r
54   UINT8   TestLateCheck;\r
55   UINT8   TestLateCheck2;\r
56   UINT8   QuestionAboutTreeHugging;\r
57   UINT8   ChooseToActivateNuclearWeaponry;\r
58   UINT8   SuppressGrayOutSomething;\r
59   UINT8   OrderedList[8];\r
60   UINT16  BootOrder[8];\r
61   UINT8   BootOrderLarge;\r
62   UINT8   DynamicRefresh;\r
63   UINT8   DynamicOneof;\r
64   UINT8   DynamicOrderedList[5];\r
65   UINT8   Reserved;\r
66   UINT8   NameValueVar0;\r
67   UINT16  NameValueVar1;\r
68   UINT16  NameValueVar2[20];\r
69 } DRIVER_SAMPLE_CONFIGURATION;\r
70 \r
71 //\r
72 // 2nd NV data structure definition\r
73 //\r
74 typedef struct {\r
75   UINT8         Field8;\r
76   UINT16        Field16;\r
77   UINT8         OrderedList[3];\r
78 } MY_DATA2;\r
79 \r
80 //\r
81 // Labels definition\r
82 //\r
83 #define LABEL_UPDATE1               0x1234\r
84 #define LABEL_UPDATE2               0x2234\r
85 #define LABEL_END                   0x2223\r
86 \r
87 #pragma pack()\r
88 \r
89 #endif\r