/** @file\r
\r
-Copyright (c) 2007 - 2009, Intel Corporation\r
-All rights reserved. This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution. The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
Module Name:\r
\r
#include <Protocol/HiiConfigAccess.h>\r
#include <Protocol/HiiDatabase.h>\r
#include <Protocol/HiiString.h>\r
+#include <Protocol/FormBrowserEx.h>\r
+#include <Protocol/HiiConfigKeyword.h>\r
+#include <Protocol/HiiPopup.h>\r
\r
#include <Guid/MdeModuleHii.h>\r
#include <Library/DebugLib.h>\r
#define DYNAMIC_ONE_OF_VAR_OFFSET OFFSET_OF (DRIVER_SAMPLE_CONFIGURATION, DynamicOneof)\r
#define DYNAMIC_ORDERED_LIST_VAR_OFFSET OFFSET_OF (DRIVER_SAMPLE_CONFIGURATION, DynamicOrderedList)\r
\r
+#define DEFAULT_CLASS_MANUFACTURING_VALUE 0xFF\r
+#define DEFAULT_CLASS_STANDARD_VALUE 0x0\r
+\r
//\r
// Number of name in Name/Value storage\r
//\r
-#define NAME_VALUE_NAME_NUMBER 3\r
+#define NAME_VALUE_NAME_NUMBER 3\r
\r
-#define DRIVER_SAMPLE_PRIVATE_SIGNATURE SIGNATURE_32 ('D', 'S', 'p', 's')\r
+#define DRIVER_SAMPLE_PRIVATE_SIGNATURE SIGNATURE_32 ('D', 'S', 'p', 's')\r
\r
typedef struct {\r
- UINTN Signature;\r
+ UINTN Signature;\r
\r
- EFI_HANDLE DriverHandle[2];\r
- EFI_HII_HANDLE HiiHandle[2];\r
- DRIVER_SAMPLE_CONFIGURATION Configuration;\r
- UINT8 PasswordState;\r
+ EFI_HANDLE DriverHandle[2];\r
+ EFI_HII_HANDLE HiiHandle[2];\r
+ DRIVER_SAMPLE_CONFIGURATION Configuration;\r
+ MY_EFI_VARSTORE_DATA VarStoreConfig;\r
+ MY_EFI_BITS_VARSTORE_DATA BitsVarStoreConfig;\r
+ MY_EFI_UNION_DATA UnionConfig;\r
\r
//\r
// Name/Value storage Name list\r
//\r
- EFI_STRING_ID NameStringId[NAME_VALUE_NAME_NUMBER];\r
- EFI_STRING NameValueName[NAME_VALUE_NAME_NUMBER];\r
+ EFI_STRING_ID NameStringId[NAME_VALUE_NAME_NUMBER];\r
+ EFI_STRING NameValueName[NAME_VALUE_NAME_NUMBER];\r
\r
//\r
// Consumed protocol\r
//\r
- EFI_HII_DATABASE_PROTOCOL *HiiDatabase;\r
- EFI_HII_STRING_PROTOCOL *HiiString;\r
- EFI_HII_CONFIG_ROUTING_PROTOCOL *HiiConfigRouting;\r
- EFI_FORM_BROWSER2_PROTOCOL *FormBrowser2;\r
+ EFI_HII_DATABASE_PROTOCOL *HiiDatabase;\r
+ EFI_HII_STRING_PROTOCOL *HiiString;\r
+ EFI_HII_CONFIG_ROUTING_PROTOCOL *HiiConfigRouting;\r
+ EFI_CONFIG_KEYWORD_HANDLER_PROTOCOL *HiiKeywordHandler;\r
+ EFI_HII_POPUP_PROTOCOL *HiiPopup;\r
+\r
+ EFI_FORM_BROWSER2_PROTOCOL *FormBrowser2;\r
\r
//\r
// Produced protocol\r
//\r
- EFI_HII_CONFIG_ACCESS_PROTOCOL ConfigAccess;\r
+ EFI_HII_CONFIG_ACCESS_PROTOCOL ConfigAccess;\r
} DRIVER_SAMPLE_PRIVATE_DATA;\r
\r
#define DRIVER_SAMPLE_PRIVATE_FROM_THIS(a) CR (a, DRIVER_SAMPLE_PRIVATE_DATA, ConfigAccess, DRIVER_SAMPLE_PRIVATE_SIGNATURE)\r
/// HII specific Vendor Device Path definition.\r
///\r
typedef struct {\r
- VENDOR_DEVICE_PATH VendorDevicePath;\r
- EFI_DEVICE_PATH_PROTOCOL End;\r
+ VENDOR_DEVICE_PATH VendorDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL End;\r
} HII_VENDOR_DEVICE_PATH;\r
\r
#pragma pack()\r