This is an example of how a driver might export data to the HII protocol to be\r
later utilized by the Setup Protocol\r
\r
-Copyright (c) 2004 - 2017, Intel Corporation. All rights reserved.<BR>\r
-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) 2004 - 2018, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
-\r
#include "DriverSample.h"\r
\r
#define DISPLAY_ONLY_MY_ITEM 0x0002\r
\r
-CHAR16 VariableName[] = L"MyIfrNVData";\r
-CHAR16 MyEfiVar[] = L"MyEfiVar";\r
-CHAR16 MyEfiBitVar[] = L"MyEfiBitVar";\r
-CHAR16 MyEfiUnionVar[] = L"MyEfiUnionVar";\r
+CHAR16 VariableName[] = L"MyIfrNVData";\r
+CHAR16 MyEfiVar[] = L"MyEfiVar";\r
+CHAR16 MyEfiBitVar[] = L"MyEfiBitVar";\r
+CHAR16 MyEfiUnionVar[] = L"MyEfiUnionVar";\r
\r
-EFI_HANDLE DriverHandle[2] = {NULL, NULL};\r
-DRIVER_SAMPLE_PRIVATE_DATA *mPrivateData = NULL;\r
-EFI_EVENT mEvent;\r
+EFI_HANDLE DriverHandle[2] = { NULL, NULL };\r
+DRIVER_SAMPLE_PRIVATE_DATA *mPrivateData = NULL;\r
+EFI_EVENT mEvent;\r
\r
HII_VENDOR_DEVICE_PATH mHiiVendorDevicePath0 = {\r
{\r
HARDWARE_DEVICE_PATH,\r
HW_VENDOR_DP,\r
{\r
- (UINT8) (sizeof (VENDOR_DEVICE_PATH)),\r
- (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
+ (UINT8)(sizeof (VENDOR_DEVICE_PATH)),\r
+ (UINT8)((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
}\r
},\r
DRIVER_SAMPLE_FORMSET_GUID\r
END_DEVICE_PATH_TYPE,\r
END_ENTIRE_DEVICE_PATH_SUBTYPE,\r
{\r
- (UINT8) (END_DEVICE_PATH_LENGTH),\r
- (UINT8) ((END_DEVICE_PATH_LENGTH) >> 8)\r
+ (UINT8)(END_DEVICE_PATH_LENGTH),\r
+ (UINT8)((END_DEVICE_PATH_LENGTH) >> 8)\r
}\r
}\r
};\r
HARDWARE_DEVICE_PATH,\r
HW_VENDOR_DP,\r
{\r
- (UINT8) (sizeof (VENDOR_DEVICE_PATH)),\r
- (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
+ (UINT8)(sizeof (VENDOR_DEVICE_PATH)),\r
+ (UINT8)((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
}\r
},\r
DRIVER_SAMPLE_INVENTORY_GUID\r
END_DEVICE_PATH_TYPE,\r
END_ENTIRE_DEVICE_PATH_SUBTYPE,\r
{\r
- (UINT8) (END_DEVICE_PATH_LENGTH),\r
- (UINT8) ((END_DEVICE_PATH_LENGTH) >> 8)\r
+ (UINT8)(END_DEVICE_PATH_LENGTH),\r
+ (UINT8)((END_DEVICE_PATH_LENGTH) >> 8)\r
}\r
}\r
};\r
**/\r
VOID\r
SetArrayData (\r
- IN VOID *Array,\r
- IN UINT8 Type,\r
- IN UINTN Index,\r
- IN UINT64 Value\r
+ IN VOID *Array,\r
+ IN UINT8 Type,\r
+ IN UINTN Index,\r
+ IN UINT64 Value\r
)\r
{\r
-\r
ASSERT (Array != NULL);\r
\r
switch (Type) {\r
- case EFI_IFR_TYPE_NUM_SIZE_8:\r
- *(((UINT8 *) Array) + Index) = (UINT8) Value;\r
- break;\r
+ case EFI_IFR_TYPE_NUM_SIZE_8:\r
+ *(((UINT8 *)Array) + Index) = (UINT8)Value;\r
+ break;\r
\r
- case EFI_IFR_TYPE_NUM_SIZE_16:\r
- *(((UINT16 *) Array) + Index) = (UINT16) Value;\r
- break;\r
+ case EFI_IFR_TYPE_NUM_SIZE_16:\r
+ *(((UINT16 *)Array) + Index) = (UINT16)Value;\r
+ break;\r
\r
- case EFI_IFR_TYPE_NUM_SIZE_32:\r
- *(((UINT32 *) Array) + Index) = (UINT32) Value;\r
- break;\r
+ case EFI_IFR_TYPE_NUM_SIZE_32:\r
+ *(((UINT32 *)Array) + Index) = (UINT32)Value;\r
+ break;\r
\r
- case EFI_IFR_TYPE_NUM_SIZE_64:\r
- *(((UINT64 *) Array) + Index) = (UINT64) Value;\r
- break;\r
+ case EFI_IFR_TYPE_NUM_SIZE_64:\r
+ *(((UINT64 *)Array) + Index) = (UINT64)Value;\r
+ break;\r
\r
- default:\r
- break;\r
+ default:\r
+ break;\r
}\r
}\r
\r
**/\r
EFI_STATUS\r
EFIAPI\r
-NotificationFunction(\r
- IN EFI_KEY_DATA *KeyData\r
+NotificationFunction (\r
+ IN EFI_KEY_DATA *KeyData\r
)\r
{\r
gBS->SignalEvent (mEvent);\r
- \r
+\r
return EFI_SUCCESS;\r
}\r
\r
/**\r
- Function to start monitoring for CTRL-C using SimpleTextInputEx. \r
+ Function to start monitoring for CTRL-C using SimpleTextInputEx.\r
\r
@retval EFI_SUCCESS The feature is enabled.\r
@retval EFI_OUT_OF_RESOURCES There is not enough mnemory available.\r
**/\r
EFI_STATUS\r
EFIAPI\r
-InternalStartMonitor(\r
+InternalStartMonitor (\r
VOID\r
)\r
{\r
- EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *SimpleEx;\r
- EFI_KEY_DATA KeyData;\r
- EFI_STATUS Status;\r
- EFI_HANDLE *Handles;\r
- UINTN HandleCount;\r
- UINTN HandleIndex;\r
- EFI_HANDLE NotifyHandle;\r
+ EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *SimpleEx;\r
+ EFI_KEY_DATA KeyData;\r
+ EFI_STATUS Status;\r
+ EFI_HANDLE *Handles;\r
+ UINTN HandleCount;\r
+ UINTN HandleIndex;\r
+ VOID *NotifyHandle;\r
\r
Status = gBS->LocateHandleBuffer (\r
- ByProtocol,\r
- &gEfiSimpleTextInputExProtocolGuid,\r
- NULL,\r
- &HandleCount,\r
- &Handles\r
- );\r
+ ByProtocol,\r
+ &gEfiSimpleTextInputExProtocolGuid,\r
+ NULL,\r
+ &HandleCount,\r
+ &Handles\r
+ );\r
for (HandleIndex = 0; HandleIndex < HandleCount; HandleIndex++) {\r
- Status = gBS->HandleProtocol (Handles[HandleIndex], &gEfiSimpleTextInputExProtocolGuid, (VOID **) &SimpleEx);\r
+ Status = gBS->HandleProtocol (Handles[HandleIndex], &gEfiSimpleTextInputExProtocolGuid, (VOID **)&SimpleEx);\r
ASSERT_EFI_ERROR (Status);\r
\r
KeyData.KeyState.KeyToggleState = 0;\r
KeyData.KeyState.KeyShiftState = EFI_SHIFT_STATE_VALID|EFI_LEFT_CONTROL_PRESSED;\r
KeyData.Key.UnicodeChar = L'c';\r
\r
- Status = SimpleEx->RegisterKeyNotify(\r
- SimpleEx,\r
- &KeyData,\r
- NotificationFunction,\r
- &NotifyHandle);\r
+ Status = SimpleEx->RegisterKeyNotify (\r
+ SimpleEx,\r
+ &KeyData,\r
+ NotificationFunction,\r
+ &NotifyHandle\r
+ );\r
if (EFI_ERROR (Status)) {\r
break;\r
}\r
- \r
- KeyData.KeyState.KeyShiftState = EFI_SHIFT_STATE_VALID|EFI_RIGHT_CONTROL_PRESSED;\r
- Status = SimpleEx->RegisterKeyNotify(\r
- SimpleEx,\r
- &KeyData,\r
- NotificationFunction,\r
- &NotifyHandle);\r
+\r
+ KeyData.KeyState.KeyShiftState = EFI_SHIFT_STATE_VALID|EFI_RIGHT_CONTROL_PRESSED;\r
+ Status = SimpleEx->RegisterKeyNotify (\r
+ SimpleEx,\r
+ &KeyData,\r
+ NotificationFunction,\r
+ &NotifyHandle\r
+ );\r
if (EFI_ERROR (Status)) {\r
break;\r
}\r
}\r
\r
/**\r
- Function to stop monitoring for CTRL-C using SimpleTextInputEx. \r
+ Function to stop monitoring for CTRL-C using SimpleTextInputEx.\r
\r
@retval EFI_SUCCESS The feature is enabled.\r
@retval EFI_OUT_OF_RESOURCES There is not enough mnemory available.\r
**/\r
EFI_STATUS\r
EFIAPI\r
-InternalStopMonitor(\r
+InternalStopMonitor (\r
VOID\r
)\r
{\r
- EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *SimpleEx;\r
- EFI_STATUS Status;\r
- EFI_HANDLE *Handles;\r
- EFI_KEY_DATA KeyData; \r
- UINTN HandleCount;\r
- UINTN HandleIndex;\r
- EFI_HANDLE NotifyHandle;\r
+ EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *SimpleEx;\r
+ EFI_STATUS Status;\r
+ EFI_HANDLE *Handles;\r
+ EFI_KEY_DATA KeyData;\r
+ UINTN HandleCount;\r
+ UINTN HandleIndex;\r
+ VOID *NotifyHandle;\r
\r
Status = gBS->LocateHandleBuffer (\r
- ByProtocol,\r
- &gEfiSimpleTextInputExProtocolGuid,\r
- NULL,\r
- &HandleCount,\r
- &Handles\r
- );\r
+ ByProtocol,\r
+ &gEfiSimpleTextInputExProtocolGuid,\r
+ NULL,\r
+ &HandleCount,\r
+ &Handles\r
+ );\r
for (HandleIndex = 0; HandleIndex < HandleCount; HandleIndex++) {\r
- Status = gBS->HandleProtocol (Handles[HandleIndex], &gEfiSimpleTextInputExProtocolGuid, (VOID **) &SimpleEx);\r
+ Status = gBS->HandleProtocol (Handles[HandleIndex], &gEfiSimpleTextInputExProtocolGuid, (VOID **)&SimpleEx);\r
ASSERT_EFI_ERROR (Status);\r
\r
KeyData.KeyState.KeyToggleState = 0;\r
KeyData.KeyState.KeyShiftState = EFI_SHIFT_STATE_VALID|EFI_LEFT_CONTROL_PRESSED;\r
KeyData.Key.UnicodeChar = L'c';\r
\r
- Status = SimpleEx->RegisterKeyNotify(\r
- SimpleEx,\r
- &KeyData,\r
- NotificationFunction,\r
- &NotifyHandle);\r
+ Status = SimpleEx->RegisterKeyNotify (\r
+ SimpleEx,\r
+ &KeyData,\r
+ NotificationFunction,\r
+ &NotifyHandle\r
+ );\r
if (!EFI_ERROR (Status)) {\r
Status = SimpleEx->UnregisterKeyNotify (SimpleEx, NotifyHandle);\r
}\r
\r
- KeyData.KeyState.KeyShiftState = EFI_SHIFT_STATE_VALID|EFI_RIGHT_CONTROL_PRESSED;\r
- Status = SimpleEx->RegisterKeyNotify(\r
- SimpleEx,\r
- &KeyData,\r
- NotificationFunction,\r
- &NotifyHandle);\r
+ KeyData.KeyState.KeyShiftState = EFI_SHIFT_STATE_VALID|EFI_RIGHT_CONTROL_PRESSED;\r
+ Status = SimpleEx->RegisterKeyNotify (\r
+ SimpleEx,\r
+ &KeyData,\r
+ NotificationFunction,\r
+ &NotifyHandle\r
+ );\r
if (!EFI_ERROR (Status)) {\r
Status = SimpleEx->UnregisterKeyNotify (SimpleEx, NotifyHandle);\r
}\r
}\r
+\r
return EFI_SUCCESS;\r
}\r
\r
**/\r
EFI_STATUS\r
LoadNameValueNames (\r
- IN DRIVER_SAMPLE_PRIVATE_DATA *PrivateData\r
+ IN DRIVER_SAMPLE_PRIVATE_DATA *PrivateData\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
//\r
// Get Name/Value name string of current language\r
//\r
for (Index = 0; Index < NAME_VALUE_NAME_NUMBER; Index++) {\r
PrivateData->NameValueName[Index] = HiiGetString (\r
- PrivateData->HiiHandle[0],\r
- PrivateData->NameStringId[Index],\r
- NULL\r
- );\r
+ PrivateData->HiiHandle[0],\r
+ PrivateData->NameStringId[Index],\r
+ NULL\r
+ );\r
if (PrivateData->NameValueName[Index] == NULL) {\r
return EFI_NOT_FOUND;\r
}\r
return EFI_SUCCESS;\r
}\r
\r
-\r
/**\r
Get the value of <Number> in <BlockConfig> format, i.e. the value of OFFSET\r
or WIDTH or VALUE.\r
**/\r
EFI_STATUS\r
GetValueOfNumber (\r
- IN EFI_STRING StringPtr,\r
- OUT UINT8 **Number,\r
- OUT UINTN *Len\r
+ IN EFI_STRING StringPtr,\r
+ OUT UINT8 **Number,\r
+ OUT UINTN *Len\r
)\r
{\r
- EFI_STRING TmpPtr;\r
- UINTN Length;\r
- EFI_STRING Str;\r
- UINT8 *Buf;\r
- EFI_STATUS Status;\r
- UINT8 DigitUint8;\r
- UINTN Index;\r
- CHAR16 TemStr[2];\r
-\r
- if (StringPtr == NULL || *StringPtr == L'\0' || Number == NULL || Len == NULL) {\r
+ EFI_STRING TmpPtr;\r
+ UINTN Length;\r
+ EFI_STRING Str;\r
+ UINT8 *Buf;\r
+ EFI_STATUS Status;\r
+ UINT8 DigitUint8;\r
+ UINTN Index;\r
+ CHAR16 TemStr[2];\r
+\r
+ if ((StringPtr == NULL) || (*StringPtr == L'\0') || (Number == NULL) || (Len == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
while (*StringPtr != L'\0' && *StringPtr != L'&') {\r
StringPtr++;\r
}\r
+\r
*Len = StringPtr - TmpPtr;\r
Length = *Len + 1;\r
\r
- Str = (EFI_STRING) AllocateZeroPool (Length * sizeof (CHAR16));\r
+ Str = (EFI_STRING)AllocateZeroPool (Length * sizeof (CHAR16));\r
if (Str == NULL) {\r
Status = EFI_OUT_OF_RESOURCES;\r
goto Exit;\r
}\r
+\r
CopyMem (Str, TmpPtr, *Len * sizeof (CHAR16));\r
*(Str + *Len) = L'\0';\r
\r
Length = (Length + 1) / 2;\r
- Buf = (UINT8 *) AllocateZeroPool (Length);\r
+ Buf = (UINT8 *)AllocateZeroPool (Length);\r
if (Buf == NULL) {\r
Status = EFI_OUT_OF_RESOURCES;\r
goto Exit;\r
}\r
- \r
+\r
Length = *Len;\r
ZeroMem (TemStr, sizeof (TemStr));\r
- for (Index = 0; Index < Length; Index ++) {\r
- TemStr[0] = Str[Length - Index - 1];\r
- DigitUint8 = (UINT8) StrHexToUint64 (TemStr);\r
+ for (Index = 0; Index < Length; Index++) {\r
+ TemStr[0] = Str[Length - Index - 1];\r
+ DigitUint8 = (UINT8)StrHexToUint64 (TemStr);\r
if ((Index & 1) == 0) {\r
- Buf [Index/2] = DigitUint8;\r
+ Buf[Index/2] = DigitUint8;\r
} else {\r
- Buf [Index/2] = (UINT8) ((DigitUint8 << 4) + Buf [Index/2]);\r
+ Buf[Index/2] = (UINT8)((DigitUint8 << 4) + Buf[Index/2]);\r
}\r
}\r
\r
}\r
\r
/**\r
- Create altcfg string. \r
+ Create altcfg string.\r
\r
@param Result The request result string.\r
@param ConfigHdr The request head info. <ConfigHdr> format.\r
\r
@retval The string with altcfg info append at the end.\r
**/\r
-EFI_STRING \r
+EFI_STRING\r
CreateAltCfgString (\r
- IN EFI_STRING Result,\r
- IN EFI_STRING ConfigHdr,\r
- IN UINTN Offset,\r
- IN UINTN Width\r
+ IN EFI_STRING Result,\r
+ IN EFI_STRING ConfigHdr,\r
+ IN UINTN Offset,\r
+ IN UINTN Width\r
)\r
{\r
- EFI_STRING StringPtr;\r
- EFI_STRING TmpStr;\r
- UINTN NewLen;\r
+ EFI_STRING StringPtr;\r
+ EFI_STRING TmpStr;\r
+ UINTN NewLen;\r
\r
NewLen = StrLen (Result);\r
//\r
// String Len = ConfigResp + AltConfig + AltConfig + 1("\0")\r
//\r
- NewLen = (NewLen + ((1 + StrLen (ConfigHdr) + 8 + 4) + (8 + 4 + 7 + 4 + 7 + 4)) * 2 + 1) * sizeof (CHAR16);\r
+ NewLen = (NewLen + ((1 + StrLen (ConfigHdr) + 8 + 4) + (8 + 4 + 7 + 4 + 7 + 4)) * 2 + 1) * sizeof (CHAR16);\r
StringPtr = AllocateZeroPool (NewLen);\r
if (StringPtr == NULL) {\r
return NULL;\r
TmpStr = StringPtr;\r
if (Result != NULL) {\r
StrCpyS (StringPtr, NewLen / sizeof (CHAR16), Result);\r
- StringPtr += StrLen (Result); \r
+ StringPtr += StrLen (Result);\r
FreePool (Result);\r
}\r
- \r
+\r
UnicodeSPrint (\r
- StringPtr, \r
- (1 + StrLen (ConfigHdr) + 8 + 4 + 1) * sizeof (CHAR16), \r
- L"&%s&ALTCFG=%04x", \r
- ConfigHdr, \r
- EFI_HII_DEFAULT_CLASS_STANDARD\r
- );\r
+ StringPtr,\r
+ (1 + StrLen (ConfigHdr) + 8 + 4 + 1) * sizeof (CHAR16),\r
+ L"&%s&ALTCFG=%04x",\r
+ ConfigHdr,\r
+ EFI_HII_DEFAULT_CLASS_STANDARD\r
+ );\r
StringPtr += StrLen (StringPtr);\r
\r
UnicodeSPrint (\r
- StringPtr, \r
+ StringPtr,\r
(8 + 4 + 7 + 4 + 7 + 4 + 1) * sizeof (CHAR16),\r
- L"&OFFSET=%04x&WIDTH=%04x&VALUE=%04x", \r
- Offset, \r
+ L"&OFFSET=%04x&WIDTH=%04x&VALUE=%04x",\r
+ Offset,\r
Width,\r
DEFAULT_CLASS_STANDARD_VALUE\r
);\r
- StringPtr += StrLen (StringPtr); \r
+ StringPtr += StrLen (StringPtr);\r
\r
UnicodeSPrint (\r
- StringPtr, \r
- (1 + StrLen (ConfigHdr) + 8 + 4 + 1) * sizeof (CHAR16), \r
- L"&%s&ALTCFG=%04x", \r
- ConfigHdr, \r
- EFI_HII_DEFAULT_CLASS_MANUFACTURING\r
- );\r
+ StringPtr,\r
+ (1 + StrLen (ConfigHdr) + 8 + 4 + 1) * sizeof (CHAR16),\r
+ L"&%s&ALTCFG=%04x",\r
+ ConfigHdr,\r
+ EFI_HII_DEFAULT_CLASS_MANUFACTURING\r
+ );\r
StringPtr += StrLen (StringPtr);\r
\r
UnicodeSPrint (\r
- StringPtr, \r
+ StringPtr,\r
(8 + 4 + 7 + 4 + 7 + 4 + 1) * sizeof (CHAR16),\r
- L"&OFFSET=%04x&WIDTH=%04x&VALUE=%04x", \r
- Offset, \r
+ L"&OFFSET=%04x&WIDTH=%04x&VALUE=%04x",\r
+ Offset,\r
Width,\r
DEFAULT_CLASS_MANUFACTURING_VALUE\r
);\r
- StringPtr += StrLen (StringPtr); \r
+ StringPtr += StrLen (StringPtr);\r
\r
return TmpStr;\r
}\r
\r
/**\r
- Check whether need to add the altcfg string. if need to add, add the altcfg \r
+ Check whether need to add the altcfg string. if need to add, add the altcfg\r
string.\r
\r
@param RequestResult The request result string.\r
@param ConfigRequestHdr The request head info. <ConfigHdr> format.\r
\r
**/\r
-VOID \r
+VOID\r
AppendAltCfgString (\r
- IN OUT EFI_STRING *RequestResult,\r
- IN EFI_STRING ConfigRequestHdr\r
+ IN OUT EFI_STRING *RequestResult,\r
+ IN EFI_STRING ConfigRequestHdr\r
)\r
{\r
- EFI_STRING StringPtr;\r
- UINTN Length;\r
- UINT8 *TmpBuffer;\r
- UINTN Offset;\r
- UINTN Width;\r
- UINTN BlockSize;\r
- UINTN ValueOffset;\r
- UINTN ValueWidth;\r
- EFI_STATUS Status;\r
-\r
- TmpBuffer = NULL;\r
- StringPtr = *RequestResult;\r
- StringPtr = StrStr (StringPtr, L"OFFSET");\r
- BlockSize = sizeof (DRIVER_SAMPLE_CONFIGURATION);\r
+ EFI_STRING StringPtr;\r
+ UINTN Length;\r
+ UINT8 *TmpBuffer;\r
+ UINTN Offset;\r
+ UINTN Width;\r
+ UINTN BlockSize;\r
+ UINTN ValueOffset;\r
+ UINTN ValueWidth;\r
+ EFI_STATUS Status;\r
+\r
+ TmpBuffer = NULL;\r
+ StringPtr = *RequestResult;\r
+ StringPtr = StrStr (StringPtr, L"OFFSET");\r
+ BlockSize = sizeof (DRIVER_SAMPLE_CONFIGURATION);\r
ValueOffset = OFFSET_OF (DRIVER_SAMPLE_CONFIGURATION, GetDefaultValueFromAccess);\r
ValueWidth = sizeof (((DRIVER_SAMPLE_CONFIGURATION *)0)->GetDefaultValueFromAccess);\r
\r
if (EFI_ERROR (Status)) {\r
return;\r
}\r
+\r
Offset = 0;\r
CopyMem (\r
- &Offset,\r
- TmpBuffer,\r
- (((Length + 1) / 2) < sizeof (UINTN)) ? ((Length + 1) / 2) : sizeof (UINTN)\r
- );\r
+ &Offset,\r
+ TmpBuffer,\r
+ (((Length + 1) / 2) < sizeof (UINTN)) ? ((Length + 1) / 2) : sizeof (UINTN)\r
+ );\r
FreePool (TmpBuffer);\r
\r
StringPtr += Length;\r
if (StrnCmp (StringPtr, L"&WIDTH=", StrLen (L"&WIDTH=")) != 0) {\r
return;\r
}\r
+\r
StringPtr += StrLen (L"&WIDTH=");\r
\r
//\r
if (EFI_ERROR (Status)) {\r
return;\r
}\r
+\r
Width = 0;\r
CopyMem (\r
- &Width,\r
- TmpBuffer,\r
- (((Length + 1) / 2) < sizeof (UINTN)) ? ((Length + 1) / 2) : sizeof (UINTN)\r
- );\r
+ &Width,\r
+ TmpBuffer,\r
+ (((Length + 1) / 2) < sizeof (UINTN)) ? ((Length + 1) / 2) : sizeof (UINTN)\r
+ );\r
FreePool (TmpBuffer);\r
\r
StringPtr += Length;\r
if (StrnCmp (StringPtr, L"&VALUE=", StrLen (L"&VALUE=")) != 0) {\r
return;\r
}\r
+\r
StringPtr += StrLen (L"&VALUE=");\r
\r
//\r
if (EFI_ERROR (Status)) {\r
return;\r
}\r
+\r
StringPtr += Length;\r
\r
//\r
// Skip the character "&" before "OFFSET".\r
//\r
- StringPtr ++;\r
+ StringPtr++;\r
\r
//\r
// Calculate Value and convert it to hex string.\r
return;\r
}\r
\r
- if (Offset <= ValueOffset && Offset + Width >= ValueOffset + ValueWidth) {\r
- *RequestResult = CreateAltCfgString(*RequestResult, ConfigRequestHdr, ValueOffset, ValueWidth);\r
+ if ((Offset <= ValueOffset) && (Offset + Width >= ValueOffset + ValueWidth)) {\r
+ *RequestResult = CreateAltCfgString (*RequestResult, ConfigRequestHdr, ValueOffset, ValueWidth);\r
return;\r
}\r
}\r
EFI_STATUS\r
EFIAPI\r
ExtractConfig (\r
- IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,\r
- IN CONST EFI_STRING Request,\r
- OUT EFI_STRING *Progress,\r
- OUT EFI_STRING *Results\r
+ IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,\r
+ IN CONST EFI_STRING Request,\r
+ OUT EFI_STRING *Progress,\r
+ OUT EFI_STRING *Results\r
)\r
{\r
EFI_STATUS Status;\r
CHAR16 *StrPointer;\r
BOOLEAN AllocatedRequest;\r
\r
- if (Progress == NULL || Results == NULL) {\r
+ if ((Progress == NULL) || (Results == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
//\r
// Initialize the local variables.\r
//\r
- ConfigRequestHdr = NULL;\r
- ConfigRequest = NULL;\r
- Size = 0;\r
- *Progress = Request;\r
- AllocatedRequest = FALSE;\r
+ ConfigRequestHdr = NULL;\r
+ ConfigRequest = NULL;\r
+ Size = 0;\r
+ *Progress = Request;\r
+ AllocatedRequest = FALSE;\r
\r
- PrivateData = DRIVER_SAMPLE_PRIVATE_FROM_THIS (This);\r
+ PrivateData = DRIVER_SAMPLE_PRIVATE_FROM_THIS (This);\r
HiiConfigRouting = PrivateData->HiiConfigRouting;\r
\r
//\r
// Try to get the current setting from variable.\r
//\r
BufferSize = sizeof (DRIVER_SAMPLE_CONFIGURATION);\r
- Status = gRT->GetVariable (\r
- VariableName,\r
- &gDriverSampleFormSetGuid,\r
- NULL,\r
- &BufferSize,\r
- &PrivateData->Configuration\r
- );\r
+ Status = gRT->GetVariable (\r
+ VariableName,\r
+ &gDriverSampleFormSetGuid,\r
+ NULL,\r
+ &BufferSize,\r
+ &PrivateData->Configuration\r
+ );\r
if (EFI_ERROR (Status)) {\r
return EFI_NOT_FOUND;\r
}\r
// followed by "&OFFSET=0&WIDTH=WWWWWWWWWWWWWWWW" followed by a Null-terminator\r
//\r
ConfigRequestHdr = HiiConstructConfigHdr (&gDriverSampleFormSetGuid, VariableName, PrivateData->DriverHandle[0]);\r
- Size = (StrLen (ConfigRequestHdr) + 32 + 1) * sizeof (CHAR16);\r
- ConfigRequest = AllocateZeroPool (Size);\r
+ Size = (StrLen (ConfigRequestHdr) + 32 + 1) * sizeof (CHAR16);\r
+ ConfigRequest = AllocateZeroPool (Size);\r
ASSERT (ConfigRequest != NULL);\r
AllocatedRequest = TRUE;\r
UnicodeSPrint (ConfigRequest, Size, L"%s&OFFSET=0&WIDTH=%016LX", ConfigRequestHdr, (UINT64)BufferSize);\r
if (!HiiIsConfigHdrMatch (Request, &gDriverSampleFormSetGuid, NULL)) {\r
return EFI_NOT_FOUND;\r
}\r
+\r
//\r
// Check whether request for EFI Varstore. EFI varstore get data\r
// through hii database, not support in this path.\r
//\r
- if (HiiIsConfigHdrMatch(Request, &gDriverSampleFormSetGuid, MyEfiVar)) {\r
+ if (HiiIsConfigHdrMatch (Request, &gDriverSampleFormSetGuid, MyEfiVar)) {\r
return EFI_UNSUPPORTED;\r
}\r
- if (HiiIsConfigHdrMatch(Request, &gDriverSampleFormSetGuid, MyEfiBitVar)) {\r
+\r
+ if (HiiIsConfigHdrMatch (Request, &gDriverSampleFormSetGuid, MyEfiBitVar)) {\r
return EFI_UNSUPPORTED;\r
}\r
- if (HiiIsConfigHdrMatch(Request, &gDriverSampleFormSetGuid, MyEfiUnionVar)) {\r
+\r
+ if (HiiIsConfigHdrMatch (Request, &gDriverSampleFormSetGuid, MyEfiUnionVar)) {\r
return EFI_UNSUPPORTED;\r
}\r
\r
if (StrPointer == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
+\r
if (StrStr (StrPointer, L"&") == NULL) {\r
- Size = (StrLen (Request) + 32 + 1) * sizeof (CHAR16);\r
- ConfigRequest = AllocateZeroPool (Size);\r
+ Size = (StrLen (Request) + 32 + 1) * sizeof (CHAR16);\r
+ ConfigRequest = AllocateZeroPool (Size);\r
ASSERT (ConfigRequest != NULL);\r
AllocatedRequest = TRUE;\r
UnicodeSPrint (ConfigRequest, Size, L"%s&OFFSET=0&WIDTH=%016LX", Request, (UINT64)BufferSize);\r
// <ConfigResp>::=<ConfigHdr>&Name0=11&Name1=1234&Name2=0041004200430044\r
//\r
BufferSize = (StrLen (ConfigRequest) +\r
- 1 + sizeof (PrivateData->Configuration.NameValueVar0) * 2 +\r
- 1 + sizeof (PrivateData->Configuration.NameValueVar1) * 2 +\r
- 1 + sizeof (PrivateData->Configuration.NameValueVar2) * 2 + 1) * sizeof (CHAR16);\r
+ 1 + sizeof (PrivateData->Configuration.NameValueVar0) * 2 +\r
+ 1 + sizeof (PrivateData->Configuration.NameValueVar1) * 2 +\r
+ 1 + sizeof (PrivateData->Configuration.NameValueVar2) * 2 + 1) * sizeof (CHAR16);\r
*Results = AllocateZeroPool (BufferSize);\r
ASSERT (*Results != NULL);\r
StrCpyS (*Results, BufferSize / sizeof (CHAR16), ConfigRequest);\r
// Append value of NameValueVar0, type is UINT8\r
//\r
if ((Value = StrStr (*Results, PrivateData->NameValueName[0])) != NULL) {\r
- Value += StrLen (PrivateData->NameValueName[0]);\r
+ Value += StrLen (PrivateData->NameValueName[0]);\r
ValueStrLen = ((sizeof (PrivateData->Configuration.NameValueVar0) * 2) + 1);\r
CopyMem (Value + ValueStrLen, Value, StrSize (Value));\r
\r
// Append value of NameValueVar1, type is UINT16\r
//\r
if ((Value = StrStr (*Results, PrivateData->NameValueName[1])) != NULL) {\r
- Value += StrLen (PrivateData->NameValueName[1]);\r
+ Value += StrLen (PrivateData->NameValueName[1]);\r
ValueStrLen = ((sizeof (PrivateData->Configuration.NameValueVar1) * 2) + 1);\r
CopyMem (Value + ValueStrLen, Value, StrSize (Value));\r
\r
// Append value of NameValueVar2, type is CHAR16 *\r
//\r
if ((Value = StrStr (*Results, PrivateData->NameValueName[2])) != NULL) {\r
- Value += StrLen (PrivateData->NameValueName[2]);\r
+ Value += StrLen (PrivateData->NameValueName[2]);\r
ValueStrLen = StrLen (PrivateData->Configuration.NameValueVar2) * 4 + 1;\r
CopyMem (Value + ValueStrLen, Value, StrSize (Value));\r
\r
//\r
// Convert Unicode String to Config String, e.g. "ABCD" => "0041004200430044"\r
//\r
- StrPointer = (CHAR16 *) PrivateData->Configuration.NameValueVar2;\r
- for (; *StrPointer != L'\0'; StrPointer++) {\r
+ StrPointer = (CHAR16 *)PrivateData->Configuration.NameValueVar2;\r
+ for ( ; *StrPointer != L'\0'; StrPointer++) {\r
UnicodeValueToStringS (\r
Value,\r
BufferSize - ((UINTN)Value - (UINTN)*Results),\r
Value += StrnLenS (Value, (BufferSize - ((UINTN)Value - (UINTN)*Results)) / sizeof (CHAR16));\r
}\r
}\r
- \r
+\r
Status = EFI_SUCCESS;\r
} else {\r
//\r
// Convert buffer data to <ConfigResp> by helper function BlockToConfig()\r
//\r
Status = HiiConfigRouting->BlockToConfig (\r
- HiiConfigRouting,\r
- ConfigRequest,\r
- (UINT8 *) &PrivateData->Configuration,\r
- BufferSize,\r
- Results,\r
- Progress\r
- );\r
+ HiiConfigRouting,\r
+ ConfigRequest,\r
+ (UINT8 *)&PrivateData->Configuration,\r
+ BufferSize,\r
+ Results,\r
+ Progress\r
+ );\r
if (!EFI_ERROR (Status)) {\r
ConfigRequestHdr = HiiConstructConfigHdr (&gDriverSampleFormSetGuid, VariableName, PrivateData->DriverHandle[0]);\r
- AppendAltCfgString(Results, ConfigRequestHdr);\r
+ AppendAltCfgString (Results, ConfigRequestHdr);\r
}\r
}\r
\r
if (ConfigRequestHdr != NULL) {\r
FreePool (ConfigRequestHdr);\r
}\r
+\r
//\r
// Set Progress string to the original request string.\r
//\r
return Status;\r
}\r
\r
-\r
/**\r
This function processes the results of changes in configuration.\r
\r
EFI_STATUS\r
EFIAPI\r
RouteConfig (\r
- IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,\r
- IN CONST EFI_STRING Configuration,\r
- OUT EFI_STRING *Progress\r
+ IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,\r
+ IN CONST EFI_STRING Configuration,\r
+ OUT EFI_STRING *Progress\r
)\r
{\r
EFI_STATUS Status;\r
UINTN Index;\r
CHAR16 *StrBuffer;\r
\r
- if (Configuration == NULL || Progress == NULL) {\r
+ if ((Configuration == NULL) || (Progress == NULL)) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
- PrivateData = DRIVER_SAMPLE_PRIVATE_FROM_THIS (This);\r
+ PrivateData = DRIVER_SAMPLE_PRIVATE_FROM_THIS (This);\r
HiiConfigRouting = PrivateData->HiiConfigRouting;\r
- *Progress = Configuration;\r
+ *Progress = Configuration;\r
\r
//\r
// Check routing data in <ConfigHdr>.\r
// Check whether request for EFI Varstore. EFI varstore get data\r
// through hii database, not support in this path.\r
//\r
- if (HiiIsConfigHdrMatch(Configuration, &gDriverSampleFormSetGuid, MyEfiVar)) {\r
+ if (HiiIsConfigHdrMatch (Configuration, &gDriverSampleFormSetGuid, MyEfiVar)) {\r
return EFI_UNSUPPORTED;\r
}\r
- if (HiiIsConfigHdrMatch(Configuration, &gDriverSampleFormSetGuid, MyEfiBitVar)) {\r
+\r
+ if (HiiIsConfigHdrMatch (Configuration, &gDriverSampleFormSetGuid, MyEfiBitVar)) {\r
return EFI_UNSUPPORTED;\r
}\r
- if (HiiIsConfigHdrMatch(Configuration, &gDriverSampleFormSetGuid, MyEfiUnionVar)) {\r
+\r
+ if (HiiIsConfigHdrMatch (Configuration, &gDriverSampleFormSetGuid, MyEfiUnionVar)) {\r
return EFI_UNSUPPORTED;\r
}\r
\r
// Get Buffer Storage data from EFI variable\r
//\r
BufferSize = sizeof (DRIVER_SAMPLE_CONFIGURATION);\r
- Status = gRT->GetVariable (\r
- VariableName,\r
- &gDriverSampleFormSetGuid,\r
- NULL,\r
- &BufferSize,\r
- &PrivateData->Configuration\r
- );\r
+ Status = gRT->GetVariable (\r
+ VariableName,\r
+ &gDriverSampleFormSetGuid,\r
+ NULL,\r
+ &BufferSize,\r
+ &PrivateData->Configuration\r
+ );\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
if (StrPtr == NULL) {\r
StrPtr = Value + StrLen (Value);\r
}\r
+\r
//\r
// Convert Value to Buffer data\r
//\r
- DataBuffer = (UINT8 *) &PrivateData->Configuration.NameValueVar0;\r
+ DataBuffer = (UINT8 *)&PrivateData->Configuration.NameValueVar0;\r
ZeroMem (TemStr, sizeof (TemStr));\r
- for (Index = 0, StrPtr --; StrPtr >= Value; StrPtr --, Index ++) {\r
- TemStr[0] = *StrPtr;\r
- DigitUint8 = (UINT8) StrHexToUint64 (TemStr);\r
+ for (Index = 0, StrPtr--; StrPtr >= Value; StrPtr--, Index++) {\r
+ TemStr[0] = *StrPtr;\r
+ DigitUint8 = (UINT8)StrHexToUint64 (TemStr);\r
if ((Index & 1) == 0) {\r
- DataBuffer [Index/2] = DigitUint8;\r
+ DataBuffer[Index/2] = DigitUint8;\r
} else {\r
- DataBuffer [Index/2] = (UINT8) ((UINT8) (DigitUint8 << 4) + DataBuffer [Index/2]);\r
+ DataBuffer[Index/2] = (UINT8)((UINT8)(DigitUint8 << 4) + DataBuffer[Index/2]);\r
}\r
}\r
}\r
if (StrPtr == NULL) {\r
StrPtr = Value + StrLen (Value);\r
}\r
+\r
//\r
// Convert Value to Buffer data\r
//\r
- DataBuffer = (UINT8 *) &PrivateData->Configuration.NameValueVar1;\r
+ DataBuffer = (UINT8 *)&PrivateData->Configuration.NameValueVar1;\r
ZeroMem (TemStr, sizeof (TemStr));\r
- for (Index = 0, StrPtr --; StrPtr >= Value; StrPtr --, Index ++) {\r
- TemStr[0] = *StrPtr;\r
- DigitUint8 = (UINT8) StrHexToUint64 (TemStr);\r
+ for (Index = 0, StrPtr--; StrPtr >= Value; StrPtr--, Index++) {\r
+ TemStr[0] = *StrPtr;\r
+ DigitUint8 = (UINT8)StrHexToUint64 (TemStr);\r
if ((Index & 1) == 0) {\r
- DataBuffer [Index/2] = DigitUint8;\r
+ DataBuffer[Index/2] = DigitUint8;\r
} else {\r
- DataBuffer [Index/2] = (UINT8) ((UINT8) (DigitUint8 << 4) + DataBuffer [Index/2]);\r
+ DataBuffer[Index/2] = (UINT8)((UINT8)(DigitUint8 << 4) + DataBuffer[Index/2]);\r
}\r
}\r
}\r
if (StrPtr == NULL) {\r
StrPtr = Value + StrLen (Value);\r
}\r
+\r
//\r
// Convert Config String to Unicode String, e.g "0041004200430044" => "ABCD"\r
//\r
- StrBuffer = (CHAR16 *) PrivateData->Configuration.NameValueVar2;\r
+ StrBuffer = (CHAR16 *)PrivateData->Configuration.NameValueVar2;\r
ZeroMem (TemStr, sizeof (TemStr));\r
while (Value < StrPtr) {\r
StrnCpyS (TemStr, sizeof (TemStr) / sizeof (CHAR16), Value, 4);\r
- *(StrBuffer++) = (CHAR16) StrHexToUint64 (TemStr);\r
- Value += 4;\r
+ *(StrBuffer++) = (CHAR16)StrHexToUint64 (TemStr);\r
+ Value += 4;\r
}\r
+\r
*StrBuffer = L'\0';\r
}\r
\r
//\r
// Store Buffer Storage back to EFI variable\r
//\r
- Status = gRT->SetVariable(\r
- VariableName,\r
- &gDriverSampleFormSetGuid,\r
- EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
- sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
- &PrivateData->Configuration\r
- );\r
+ Status = gRT->SetVariable (\r
+ VariableName,\r
+ &gDriverSampleFormSetGuid,\r
+ EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
+ sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
+ &PrivateData->Configuration\r
+ );\r
\r
return Status;\r
}\r
// Convert <ConfigResp> to buffer data by helper function ConfigToBlock()\r
//\r
BufferSize = sizeof (DRIVER_SAMPLE_CONFIGURATION);\r
- Status = HiiConfigRouting->ConfigToBlock (\r
- HiiConfigRouting,\r
- Configuration,\r
- (UINT8 *) &PrivateData->Configuration,\r
- &BufferSize,\r
- Progress\r
- );\r
+ Status = HiiConfigRouting->ConfigToBlock (\r
+ HiiConfigRouting,\r
+ Configuration,\r
+ (UINT8 *)&PrivateData->Configuration,\r
+ &BufferSize,\r
+ Progress\r
+ );\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
//\r
// Store Buffer Storage back to EFI variable\r
//\r
- Status = gRT->SetVariable(\r
+ Status = gRT->SetVariable (\r
VariableName,\r
&gDriverSampleFormSetGuid,\r
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
return Status;\r
}\r
\r
-\r
/**\r
This function processes the results of changes in configuration.\r
\r
EFI_STATUS\r
EFIAPI\r
DriverCallback (\r
- IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,\r
- IN EFI_BROWSER_ACTION Action,\r
- IN EFI_QUESTION_ID QuestionId,\r
- IN UINT8 Type,\r
- IN EFI_IFR_TYPE_VALUE *Value,\r
- OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest\r
+ IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This,\r
+ IN EFI_BROWSER_ACTION Action,\r
+ IN EFI_QUESTION_ID QuestionId,\r
+ IN UINT8 Type,\r
+ IN EFI_IFR_TYPE_VALUE *Value,\r
+ OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest\r
)\r
{\r
- DRIVER_SAMPLE_PRIVATE_DATA *PrivateData;\r
- EFI_STATUS Status;\r
- VOID *StartOpCodeHandle;\r
- VOID *OptionsOpCodeHandle;\r
- EFI_IFR_GUID_LABEL *StartLabel;\r
- VOID *EndOpCodeHandle;\r
- EFI_IFR_GUID_LABEL *EndLabel;\r
- EFI_INPUT_KEY Key;\r
- DRIVER_SAMPLE_CONFIGURATION *Configuration;\r
- MY_EFI_VARSTORE_DATA *EfiData;\r
- EFI_FORM_ID FormId;\r
- EFI_STRING Progress;\r
- EFI_STRING Results;\r
- UINT32 ProgressErr;\r
- CHAR16 *TmpStr;\r
- UINTN Index;\r
- UINT64 BufferValue;\r
- EFI_HII_POPUP_SELECTION UserSelection;\r
+ DRIVER_SAMPLE_PRIVATE_DATA *PrivateData;\r
+ EFI_STATUS Status;\r
+ VOID *StartOpCodeHandle;\r
+ VOID *OptionsOpCodeHandle;\r
+ EFI_IFR_GUID_LABEL *StartLabel;\r
+ VOID *EndOpCodeHandle;\r
+ EFI_IFR_GUID_LABEL *EndLabel;\r
+ EFI_INPUT_KEY Key;\r
+ DRIVER_SAMPLE_CONFIGURATION *Configuration;\r
+ MY_EFI_VARSTORE_DATA *EfiData;\r
+ EFI_FORM_ID FormId;\r
+ EFI_STRING Progress;\r
+ EFI_STRING Results;\r
+ UINT32 ProgressErr;\r
+ CHAR16 *TmpStr;\r
+ UINTN Index;\r
+ UINT64 BufferValue;\r
+ EFI_HII_POPUP_SELECTION UserSelection;\r
\r
UserSelection = 0xFF;\r
\r
- if (((Value == NULL) && (Action != EFI_BROWSER_ACTION_FORM_OPEN) && (Action != EFI_BROWSER_ACTION_FORM_CLOSE))||\r
- (ActionRequest == NULL)) {\r
+ if (((Value == NULL) && (Action != EFI_BROWSER_ACTION_FORM_OPEN) && (Action != EFI_BROWSER_ACTION_FORM_CLOSE)) ||\r
+ (ActionRequest == NULL))\r
+ {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
-\r
- FormId = 0;\r
+ FormId = 0;\r
ProgressErr = 0;\r
- Status = EFI_SUCCESS;\r
+ Status = EFI_SUCCESS;\r
BufferValue = 3;\r
PrivateData = DRIVER_SAMPLE_PRIVATE_FROM_THIS (This);\r
\r
switch (Action) {\r
- case EFI_BROWSER_ACTION_FORM_OPEN:\r
+ case EFI_BROWSER_ACTION_FORM_OPEN:\r
{\r
if (QuestionId == 0x1234) {\r
//\r
//\r
// Create Hii Extend Label OpCode as the start opcode\r
//\r
- StartLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
+ StartLabel = (EFI_IFR_GUID_LABEL *)HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
StartLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
StartLabel->Number = LABEL_UPDATE2;\r
\r
HiiCreateActionOpCode (\r
StartOpCodeHandle, // Container for dynamic created opcodes\r
0x1238, // Question ID\r
- STRING_TOKEN(STR_SAVE_TEXT), // Prompt text\r
- STRING_TOKEN(STR_SAVE_TEXT), // Help text\r
+ STRING_TOKEN (STR_SAVE_TEXT), // Prompt text\r
+ STRING_TOKEN (STR_SAVE_TEXT), // Help text\r
EFI_IFR_FLAG_CALLBACK, // Question flag\r
0 // Action String ID\r
- );\r
+ );\r
\r
HiiUpdateForm (\r
PrivateData->HiiHandle[0], // HII handle\r
Status = InternalStartMonitor ();\r
ASSERT_EFI_ERROR (Status);\r
}\r
+\r
+ break;\r
}\r
- break;\r
\r
- case EFI_BROWSER_ACTION_FORM_CLOSE:\r
+ case EFI_BROWSER_ACTION_FORM_CLOSE:\r
{\r
if (QuestionId == 0x5678) {\r
//\r
Status = InternalStopMonitor ();\r
ASSERT_EFI_ERROR (Status);\r
}\r
+\r
+ break;\r
}\r
- break;\r
- \r
- case EFI_BROWSER_ACTION_RETRIEVE:\r
+\r
+ case EFI_BROWSER_ACTION_RETRIEVE:\r
{\r
switch (QuestionId ) {\r
- case 0x1248:\r
- if (Type != EFI_IFR_TYPE_REF) {\r
- return EFI_INVALID_PARAMETER;\r
- }\r
- Value->ref.FormId = 0x3;\r
- break;\r
+ case 0x1248:\r
+ if (Type != EFI_IFR_TYPE_REF) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
\r
- case 0x5678:\r
- case 0x1247:\r
- //\r
- // We will reach here once the Question is refreshed\r
- //\r
+ Value->ref.FormId = 0x3;\r
+ break;\r
\r
- //\r
- // Initialize the container for dynamic opcodes\r
- //\r
- StartOpCodeHandle = HiiAllocateOpCodeHandle ();\r
- ASSERT (StartOpCodeHandle != NULL);\r
+ case 0x5678:\r
+ case 0x1247:\r
+ //\r
+ // We will reach here once the Question is refreshed\r
+ //\r
\r
- //\r
- // Create Hii Extend Label OpCode as the start opcode\r
- //\r
- StartLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
- StartLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
- if (QuestionId == 0x5678) {\r
- StartLabel->Number = LABEL_UPDATE2;\r
- FormId = 0x03;\r
- PrivateData->Configuration.DynamicRefresh++;\r
- } else if (QuestionId == 0x1247 ) {\r
- StartLabel->Number = LABEL_UPDATE3;\r
- FormId = 0x06;\r
- PrivateData->Configuration.RefreshGuidCount++;\r
- }\r
+ //\r
+ // Initialize the container for dynamic opcodes\r
+ //\r
+ StartOpCodeHandle = HiiAllocateOpCodeHandle ();\r
+ ASSERT (StartOpCodeHandle != NULL);\r
\r
- HiiCreateActionOpCode (\r
- StartOpCodeHandle, // Container for dynamic created opcodes\r
- 0x1237, // Question ID\r
- STRING_TOKEN(STR_EXIT_TEXT), // Prompt text\r
- STRING_TOKEN(STR_EXIT_TEXT), // Help text\r
- EFI_IFR_FLAG_CALLBACK, // Question flag\r
- 0 // Action String ID\r
- );\r
- \r
- HiiUpdateForm (\r
- PrivateData->HiiHandle[0], // HII handle\r
- &gDriverSampleFormSetGuid, // Formset GUID\r
- FormId, // Form ID\r
- StartOpCodeHandle, // Label for where to insert opcodes\r
- NULL // Insert data\r
- );\r
+ //\r
+ // Create Hii Extend Label OpCode as the start opcode\r
+ //\r
+ StartLabel = (EFI_IFR_GUID_LABEL *)HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
+ StartLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
+ if (QuestionId == 0x5678) {\r
+ StartLabel->Number = LABEL_UPDATE2;\r
+ FormId = 0x03;\r
+ PrivateData->Configuration.DynamicRefresh++;\r
+ } else if (QuestionId == 0x1247 ) {\r
+ StartLabel->Number = LABEL_UPDATE3;\r
+ FormId = 0x06;\r
+ PrivateData->Configuration.RefreshGuidCount++;\r
+ }\r
\r
- HiiFreeOpCodeHandle (StartOpCodeHandle);\r
+ HiiCreateActionOpCode (\r
+ StartOpCodeHandle, // Container for dynamic created opcodes\r
+ 0x1237, // Question ID\r
+ STRING_TOKEN (STR_EXIT_TEXT), // Prompt text\r
+ STRING_TOKEN (STR_EXIT_TEXT), // Help text\r
+ EFI_IFR_FLAG_CALLBACK, // Question flag\r
+ 0 // Action String ID\r
+ );\r
+\r
+ HiiUpdateForm (\r
+ PrivateData->HiiHandle[0], // HII handle\r
+ &gDriverSampleFormSetGuid, // Formset GUID\r
+ FormId, // Form ID\r
+ StartOpCodeHandle, // Label for where to insert opcodes\r
+ NULL // Insert data\r
+ );\r
+\r
+ HiiFreeOpCodeHandle (StartOpCodeHandle);\r
\r
- //\r
- // Refresh the Question value\r
- //\r
- Status = gRT->SetVariable(\r
- VariableName,\r
- &gDriverSampleFormSetGuid,\r
- EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
- sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
- &PrivateData->Configuration\r
- );\r
-\r
- if (QuestionId == 0x5678) {\r
//\r
- // Update uncommitted data of Browser\r
+ // Refresh the Question value\r
//\r
- EfiData = AllocateZeroPool (sizeof (MY_EFI_VARSTORE_DATA));\r
- ASSERT (EfiData != NULL);\r
- if (HiiGetBrowserData (&gDriverSampleFormSetGuid, MyEfiVar, sizeof (MY_EFI_VARSTORE_DATA), (UINT8 *) EfiData)) {\r
- EfiData->Field8 = 111;\r
- HiiSetBrowserData (\r
- &gDriverSampleFormSetGuid,\r
- MyEfiVar,\r
- sizeof (MY_EFI_VARSTORE_DATA),\r
- (UINT8 *) EfiData,\r
- NULL\r
- );\r
+ Status = gRT->SetVariable (\r
+ VariableName,\r
+ &gDriverSampleFormSetGuid,\r
+ EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
+ sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
+ &PrivateData->Configuration\r
+ );\r
+\r
+ if (QuestionId == 0x5678) {\r
+ //\r
+ // Update uncommitted data of Browser\r
+ //\r
+ EfiData = AllocateZeroPool (sizeof (MY_EFI_VARSTORE_DATA));\r
+ ASSERT (EfiData != NULL);\r
+ if (HiiGetBrowserData (&gDriverSampleFormSetGuid, MyEfiVar, sizeof (MY_EFI_VARSTORE_DATA), (UINT8 *)EfiData)) {\r
+ EfiData->Field8 = 111;\r
+ HiiSetBrowserData (\r
+ &gDriverSampleFormSetGuid,\r
+ MyEfiVar,\r
+ sizeof (MY_EFI_VARSTORE_DATA),\r
+ (UINT8 *)EfiData,\r
+ NULL\r
+ );\r
+ }\r
+\r
+ FreePool (EfiData);\r
}\r
- FreePool (EfiData);\r
- }\r
- break;\r
+\r
+ break;\r
}\r
+\r
+ break;\r
}\r
- break;\r
\r
- case EFI_BROWSER_ACTION_DEFAULT_STANDARD:\r
+ case EFI_BROWSER_ACTION_DEFAULT_STANDARD:\r
{\r
switch (QuestionId) {\r
- case 0x1240:\r
- Value->u8 = DEFAULT_CLASS_STANDARD_VALUE;\r
- break;\r
+ case 0x1240:\r
+ Value->u8 = DEFAULT_CLASS_STANDARD_VALUE;\r
+ break;\r
\r
- case 0x1252:\r
- for (Index = 0; Index < 3; Index ++) {\r
- SetArrayData (Value, EFI_IFR_TYPE_NUM_SIZE_8, Index, BufferValue--);\r
- }\r
- break;\r
+ case 0x1252:\r
+ for (Index = 0; Index < 3; Index++) {\r
+ SetArrayData (Value, EFI_IFR_TYPE_NUM_SIZE_8, Index, BufferValue--);\r
+ }\r
\r
- case 0x6666:\r
- Value->u8 = 12;\r
- break;\r
+ break;\r
\r
- default:\r
- Status = EFI_UNSUPPORTED;\r
- break;\r
+ case 0x6666:\r
+ Value->u8 = 12;\r
+ break;\r
+\r
+ default:\r
+ Status = EFI_UNSUPPORTED;\r
+ break;\r
}\r
+\r
+ break;\r
}\r
- break;\r
\r
- case EFI_BROWSER_ACTION_DEFAULT_MANUFACTURING:\r
+ case EFI_BROWSER_ACTION_DEFAULT_MANUFACTURING:\r
{\r
switch (QuestionId) {\r
- case 0x1240:\r
- Value->u8 = DEFAULT_CLASS_MANUFACTURING_VALUE;\r
- break;\r
+ case 0x1240:\r
+ Value->u8 = DEFAULT_CLASS_MANUFACTURING_VALUE;\r
+ break;\r
\r
- case 0x6666:\r
- Value->u8 = 13;\r
- break;\r
+ case 0x6666:\r
+ Value->u8 = 13;\r
+ break;\r
\r
- default:\r
- Status = EFI_UNSUPPORTED; \r
- break;\r
+ default:\r
+ Status = EFI_UNSUPPORTED;\r
+ break;\r
}\r
+\r
+ break;\r
}\r
- break;\r
\r
- case EFI_BROWSER_ACTION_CHANGING:\r
- {\r
- switch (QuestionId) {\r
- case 0x1249:\r
- {\r
- if (Type != EFI_IFR_TYPE_REF) {\r
- return EFI_INVALID_PARAMETER;\r
+ case EFI_BROWSER_ACTION_CHANGING:\r
+ {\r
+ switch (QuestionId) {\r
+ case 0x1249:\r
+ {\r
+ if (Type != EFI_IFR_TYPE_REF) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
+\r
+ Value->ref.FormId = 0x1234;\r
+ break;\r
}\r
+ case 0x1234:\r
+ //\r
+ // Initialize the container for dynamic opcodes\r
+ //\r
+ StartOpCodeHandle = HiiAllocateOpCodeHandle ();\r
+ ASSERT (StartOpCodeHandle != NULL);\r
\r
- Value->ref.FormId = 0x1234;\r
- }\r
- break;\r
- case 0x1234:\r
- //\r
- // Initialize the container for dynamic opcodes\r
- //\r
- StartOpCodeHandle = HiiAllocateOpCodeHandle ();\r
- ASSERT (StartOpCodeHandle != NULL);\r
+ EndOpCodeHandle = HiiAllocateOpCodeHandle ();\r
+ ASSERT (EndOpCodeHandle != NULL);\r
\r
- EndOpCodeHandle = HiiAllocateOpCodeHandle ();\r
- ASSERT (EndOpCodeHandle != NULL);\r
+ //\r
+ // Create Hii Extend Label OpCode as the start opcode\r
+ //\r
+ StartLabel = (EFI_IFR_GUID_LABEL *)HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
+ StartLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
+ StartLabel->Number = LABEL_UPDATE1;\r
\r
- //\r
- // Create Hii Extend Label OpCode as the start opcode\r
- //\r
- StartLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
- StartLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
- StartLabel->Number = LABEL_UPDATE1;\r
+ //\r
+ // Create Hii Extend Label OpCode as the end opcode\r
+ //\r
+ EndLabel = (EFI_IFR_GUID_LABEL *)HiiCreateGuidOpCode (EndOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
+ EndLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
+ EndLabel->Number = LABEL_END;\r
+\r
+ HiiCreateActionOpCode (\r
+ StartOpCodeHandle, // Container for dynamic created opcodes\r
+ 0x1237, // Question ID\r
+ STRING_TOKEN (STR_EXIT_TEXT), // Prompt text\r
+ STRING_TOKEN (STR_EXIT_TEXT), // Help text\r
+ EFI_IFR_FLAG_CALLBACK, // Question flag\r
+ 0 // Action String ID\r
+ );\r
\r
- //\r
- // Create Hii Extend Label OpCode as the end opcode\r
- //\r
- EndLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (EndOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
- EndLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
- EndLabel->Number = LABEL_END;\r
-\r
- HiiCreateActionOpCode (\r
- StartOpCodeHandle, // Container for dynamic created opcodes\r
- 0x1237, // Question ID\r
- STRING_TOKEN(STR_EXIT_TEXT), // Prompt text\r
- STRING_TOKEN(STR_EXIT_TEXT), // Help text\r
- EFI_IFR_FLAG_CALLBACK, // Question flag\r
- 0 // Action String ID\r
- );\r
+ //\r
+ // Create Option OpCode\r
+ //\r
+ OptionsOpCodeHandle = HiiAllocateOpCodeHandle ();\r
+ ASSERT (OptionsOpCodeHandle != NULL);\r
+\r
+ HiiCreateOneOfOptionOpCode (\r
+ OptionsOpCodeHandle,\r
+ STRING_TOKEN (STR_BOOT_OPTION1),\r
+ 0,\r
+ EFI_IFR_NUMERIC_SIZE_1,\r
+ 1\r
+ );\r
\r
- //\r
- // Create Option OpCode\r
- //\r
- OptionsOpCodeHandle = HiiAllocateOpCodeHandle ();\r
- ASSERT (OptionsOpCodeHandle != NULL);\r
-\r
- HiiCreateOneOfOptionOpCode (\r
- OptionsOpCodeHandle,\r
- STRING_TOKEN (STR_BOOT_OPTION1),\r
- 0,\r
- EFI_IFR_NUMERIC_SIZE_1,\r
- 1\r
- );\r
+ HiiCreateOneOfOptionOpCode (\r
+ OptionsOpCodeHandle,\r
+ STRING_TOKEN (STR_BOOT_OPTION2),\r
+ 0,\r
+ EFI_IFR_NUMERIC_SIZE_1,\r
+ 2\r
+ );\r
\r
- HiiCreateOneOfOptionOpCode (\r
- OptionsOpCodeHandle,\r
- STRING_TOKEN (STR_BOOT_OPTION2),\r
- 0,\r
- EFI_IFR_NUMERIC_SIZE_1,\r
- 2\r
- );\r
+ //\r
+ // Prepare initial value for the dynamic created oneof Question\r
+ //\r
+ PrivateData->Configuration.DynamicOneof = 2;\r
+ Status = gRT->SetVariable (\r
+ VariableName,\r
+ &gDriverSampleFormSetGuid,\r
+ EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
+ sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
+ &PrivateData->Configuration\r
+ );\r
\r
- //\r
- // Prepare initial value for the dynamic created oneof Question\r
- //\r
- PrivateData->Configuration.DynamicOneof = 2;\r
- Status = gRT->SetVariable(\r
- VariableName,\r
- &gDriverSampleFormSetGuid,\r
- EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
- sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
- &PrivateData->Configuration\r
- );\r
+ //\r
+ // Set initial vlaue of dynamic created oneof Question in Form Browser\r
+ //\r
+ Configuration = AllocateZeroPool (sizeof (DRIVER_SAMPLE_CONFIGURATION));\r
+ ASSERT (Configuration != NULL);\r
+ if (HiiGetBrowserData (&gDriverSampleFormSetGuid, VariableName, sizeof (DRIVER_SAMPLE_CONFIGURATION), (UINT8 *)Configuration)) {\r
+ Configuration->DynamicOneof = 2;\r
+\r
+ //\r
+ // Update uncommitted data of Browser\r
+ //\r
+ HiiSetBrowserData (\r
+ &gDriverSampleFormSetGuid,\r
+ VariableName,\r
+ sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
+ (UINT8 *)Configuration,\r
+ NULL\r
+ );\r
+ }\r
\r
- //\r
- // Set initial vlaue of dynamic created oneof Question in Form Browser\r
- //\r
- Configuration = AllocateZeroPool (sizeof (DRIVER_SAMPLE_CONFIGURATION));\r
- ASSERT (Configuration != NULL);\r
- if (HiiGetBrowserData (&gDriverSampleFormSetGuid, VariableName, sizeof (DRIVER_SAMPLE_CONFIGURATION), (UINT8 *) Configuration)) {\r
- Configuration->DynamicOneof = 2;\r
+ FreePool (Configuration);\r
+\r
+ HiiCreateOneOfOpCode (\r
+ StartOpCodeHandle, // Container for dynamic created opcodes\r
+ 0x8001, // Question ID (or call it "key")\r
+ CONFIGURATION_VARSTORE_ID, // VarStore ID\r
+ (UINT16)DYNAMIC_ONE_OF_VAR_OFFSET, // Offset in Buffer Storage\r
+ STRING_TOKEN (STR_ONE_OF_PROMPT), // Question prompt text\r
+ STRING_TOKEN (STR_ONE_OF_HELP), // Question help text\r
+ EFI_IFR_FLAG_CALLBACK, // Question flag\r
+ EFI_IFR_NUMERIC_SIZE_1, // Data type of Question Value\r
+ OptionsOpCodeHandle, // Option Opcode list\r
+ NULL // Default Opcode is NULl\r
+ );\r
\r
- //\r
- // Update uncommitted data of Browser\r
- //\r
- HiiSetBrowserData (\r
- &gDriverSampleFormSetGuid,\r
- VariableName,\r
- sizeof (DRIVER_SAMPLE_CONFIGURATION),\r
- (UINT8 *) Configuration,\r
- NULL\r
- );\r
- }\r
- FreePool (Configuration);\r
-\r
- HiiCreateOneOfOpCode (\r
- StartOpCodeHandle, // Container for dynamic created opcodes\r
- 0x8001, // Question ID (or call it "key")\r
- CONFIGURATION_VARSTORE_ID, // VarStore ID\r
- (UINT16) DYNAMIC_ONE_OF_VAR_OFFSET, // Offset in Buffer Storage\r
- STRING_TOKEN (STR_ONE_OF_PROMPT), // Question prompt text\r
- STRING_TOKEN (STR_ONE_OF_HELP), // Question help text\r
- EFI_IFR_FLAG_CALLBACK, // Question flag\r
- EFI_IFR_NUMERIC_SIZE_1, // Data type of Question Value\r
- OptionsOpCodeHandle, // Option Opcode list\r
- NULL // Default Opcode is NULl\r
- );\r
+ HiiCreateOrderedListOpCode (\r
+ StartOpCodeHandle, // Container for dynamic created opcodes\r
+ 0x8002, // Question ID\r
+ CONFIGURATION_VARSTORE_ID, // VarStore ID\r
+ (UINT16)DYNAMIC_ORDERED_LIST_VAR_OFFSET, // Offset in Buffer Storage\r
+ STRING_TOKEN (STR_BOOT_OPTIONS), // Question prompt text\r
+ STRING_TOKEN (STR_BOOT_OPTIONS), // Question help text\r
+ EFI_IFR_FLAG_RESET_REQUIRED, // Question flag\r
+ 0, // Ordered list flag, e.g. EFI_IFR_UNIQUE_SET\r
+ EFI_IFR_NUMERIC_SIZE_1, // Data type of Question value\r
+ 5, // Maximum container\r
+ OptionsOpCodeHandle, // Option Opcode list\r
+ NULL // Default Opcode is NULl\r
+ );\r
\r
- HiiCreateOrderedListOpCode (\r
- StartOpCodeHandle, // Container for dynamic created opcodes\r
- 0x8002, // Question ID\r
- CONFIGURATION_VARSTORE_ID, // VarStore ID\r
- (UINT16) DYNAMIC_ORDERED_LIST_VAR_OFFSET, // Offset in Buffer Storage\r
- STRING_TOKEN (STR_BOOT_OPTIONS), // Question prompt text\r
- STRING_TOKEN (STR_BOOT_OPTIONS), // Question help text\r
- EFI_IFR_FLAG_RESET_REQUIRED, // Question flag\r
- 0, // Ordered list flag, e.g. EFI_IFR_UNIQUE_SET\r
- EFI_IFR_NUMERIC_SIZE_1, // Data type of Question value\r
- 5, // Maximum container\r
- OptionsOpCodeHandle, // Option Opcode list\r
- NULL // Default Opcode is NULl\r
- );\r
+ HiiCreateTextOpCode (\r
+ StartOpCodeHandle,\r
+ STRING_TOKEN (STR_TEXT_SAMPLE_HELP),\r
+ STRING_TOKEN (STR_TEXT_SAMPLE_HELP),\r
+ STRING_TOKEN (STR_TEXT_SAMPLE_STRING)\r
+ );\r
\r
- HiiCreateTextOpCode (\r
- StartOpCodeHandle,\r
- STRING_TOKEN(STR_TEXT_SAMPLE_HELP),\r
- STRING_TOKEN(STR_TEXT_SAMPLE_HELP),\r
- STRING_TOKEN(STR_TEXT_SAMPLE_STRING)\r
- );\r
+ HiiCreateDateOpCode (\r
+ StartOpCodeHandle,\r
+ 0x8004,\r
+ 0x0,\r
+ 0x0,\r
+ STRING_TOKEN (STR_DATE_SAMPLE_HELP),\r
+ STRING_TOKEN (STR_DATE_SAMPLE_HELP),\r
+ 0,\r
+ QF_DATE_STORAGE_TIME,\r
+ NULL\r
+ );\r
\r
- HiiCreateDateOpCode (\r
- StartOpCodeHandle,\r
- 0x8004,\r
- 0x0,\r
- 0x0,\r
- STRING_TOKEN(STR_DATE_SAMPLE_HELP),\r
- STRING_TOKEN(STR_DATE_SAMPLE_HELP),\r
- 0,\r
- QF_DATE_STORAGE_TIME,\r
- NULL\r
- );\r
+ HiiCreateTimeOpCode (\r
+ StartOpCodeHandle,\r
+ 0x8005,\r
+ 0x0,\r
+ 0x0,\r
+ STRING_TOKEN (STR_TIME_SAMPLE_HELP),\r
+ STRING_TOKEN (STR_TIME_SAMPLE_HELP),\r
+ 0,\r
+ QF_TIME_STORAGE_TIME,\r
+ NULL\r
+ );\r
\r
- HiiCreateTimeOpCode (\r
- StartOpCodeHandle,\r
- 0x8005,\r
- 0x0,\r
- 0x0,\r
- STRING_TOKEN(STR_TIME_SAMPLE_HELP),\r
- STRING_TOKEN(STR_TIME_SAMPLE_HELP),\r
- 0,\r
- QF_TIME_STORAGE_TIME,\r
- NULL\r
- );\r
+ HiiCreateGotoOpCode (\r
+ StartOpCodeHandle, // Container for dynamic created opcodes\r
+ 1, // Target Form ID\r
+ STRING_TOKEN (STR_GOTO_FORM1), // Prompt text\r
+ STRING_TOKEN (STR_GOTO_HELP), // Help text\r
+ 0, // Question flag\r
+ 0x8003 // Question ID\r
+ );\r
\r
- HiiCreateGotoOpCode (\r
- StartOpCodeHandle, // Container for dynamic created opcodes\r
- 1, // Target Form ID\r
- STRING_TOKEN (STR_GOTO_FORM1), // Prompt text\r
- STRING_TOKEN (STR_GOTO_HELP), // Help text\r
- 0, // Question flag\r
- 0x8003 // Question ID\r
- );\r
+ HiiUpdateForm (\r
+ PrivateData->HiiHandle[0], // HII handle\r
+ &gDriverSampleFormSetGuid, // Formset GUID\r
+ 0x1234, // Form ID\r
+ StartOpCodeHandle, // Label for where to insert opcodes\r
+ EndOpCodeHandle // Replace data\r
+ );\r
\r
- HiiUpdateForm (\r
- PrivateData->HiiHandle[0], // HII handle\r
- &gDriverSampleFormSetGuid, // Formset GUID\r
- 0x1234, // Form ID\r
- StartOpCodeHandle, // Label for where to insert opcodes\r
- EndOpCodeHandle // Replace data\r
- );\r
+ HiiFreeOpCodeHandle (StartOpCodeHandle);\r
+ HiiFreeOpCodeHandle (OptionsOpCodeHandle);\r
+ HiiFreeOpCodeHandle (EndOpCodeHandle);\r
+ break;\r
\r
- HiiFreeOpCodeHandle (StartOpCodeHandle);\r
- HiiFreeOpCodeHandle (OptionsOpCodeHandle);\r
- HiiFreeOpCodeHandle (EndOpCodeHandle);\r
- break;\r
+ default:\r
+ break;\r
+ }\r
\r
- default:\r
break;\r
}\r
- }\r
- break;\r
\r
- case EFI_BROWSER_ACTION_CHANGED:\r
- switch (QuestionId) {\r
- case 0x1237:\r
- //\r
- // User press "Exit now", request Browser to exit\r
- //\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;\r
- break;\r
- \r
- case 0x1238:\r
- //\r
- // User press "Save now", request Browser to save the uncommitted data.\r
- //\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_SUBMIT;\r
- break;\r
- \r
- case 0x1241:\r
- case 0x1246:\r
- //\r
- // User press "Submit current form and Exit now", request Browser to submit current form and exit\r
- //\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_SUBMIT_EXIT;\r
- break;\r
- \r
- case 0x1242:\r
- //\r
- // User press "Discard current form now", request Browser to discard the uncommitted data.\r
- //\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD;\r
- break;\r
- \r
- case 0x1243:\r
- //\r
- // User press "Submit current form now", request Browser to save the uncommitted data.\r
- //\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_APPLY;\r
- break;\r
- \r
- case 0x1244:\r
- case 0x1245:\r
- //\r
- // User press "Discard current form and Exit now", request Browser to discard the uncommitted data and exit.\r
- //\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD_EXIT;\r
- break;\r
+ case EFI_BROWSER_ACTION_CHANGED:\r
+ switch (QuestionId) {\r
+ case 0x1237:\r
+ //\r
+ // User press "Exit now", request Browser to exit\r
+ //\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;\r
+ break;\r
\r
- case 0x1231:\r
- //\r
- // 1. Check to see whether system support keyword.\r
- //\r
- Status = PrivateData->HiiKeywordHandler->GetData (PrivateData->HiiKeywordHandler,\r
- L"NAMESPACE=x-UEFI-ns",\r
- L"KEYWORD=iSCSIBootEnable",\r
- &Progress,\r
- &ProgressErr,\r
- &Results\r
- );\r
- if (EFI_ERROR (Status)) {\r
- do {\r
- CreatePopUp (\r
- EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,\r
- &Key,\r
- L"",\r
- L"This system not support this keyword!",\r
- L"Press ENTER to continue ...",\r
- L"",\r
- NULL\r
- );\r
- } while (Key.UnicodeChar != CHAR_CARRIAGE_RETURN);\r
+ case 0x1238:\r
+ //\r
+ // User press "Save now", request Browser to save the uncommitted data.\r
+ //\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_SUBMIT;\r
+ break;\r
\r
- Status = EFI_SUCCESS;\r
+ case 0x1241:\r
+ case 0x1246:\r
+ //\r
+ // User press "Submit current form and Exit now", request Browser to submit current form and exit\r
+ //\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_SUBMIT_EXIT;\r
break;\r
- }\r
\r
- //\r
- // 2. If system support this keyword, just try to change value.\r
- //\r
- \r
- //\r
- // Change value from '0' to '1' or from '1' to '0'\r
- //\r
- TmpStr = StrStr (Results, L"&VALUE=");\r
- ASSERT (TmpStr != NULL);\r
- TmpStr += StrLen (L"&VALUE=");\r
- TmpStr++;\r
- if (*TmpStr == L'0') {\r
- *TmpStr = L'1';\r
- } else {\r
- *TmpStr = L'0';\r
- }\r
+ case 0x1242:\r
+ //\r
+ // User press "Discard current form now", request Browser to discard the uncommitted data.\r
+ //\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD;\r
+ break;\r
\r
- //\r
- // 3. Call the keyword handler protocol to change the value.\r
- //\r
- Status = PrivateData->HiiKeywordHandler->SetData (PrivateData->HiiKeywordHandler,\r
- Results,\r
- &Progress,\r
- &ProgressErr\r
- );\r
- if (EFI_ERROR (Status)) {\r
- do {\r
- CreatePopUp (\r
- EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,\r
- &Key,\r
- L"",\r
- L"Set keyword to the system failed!",\r
- L"Press ENTER to continue ...",\r
- L"",\r
- NULL\r
- );\r
- } while (Key.UnicodeChar != CHAR_CARRIAGE_RETURN);\r
+ case 0x1243:\r
+ //\r
+ // User press "Submit current form now", request Browser to save the uncommitted data.\r
+ //\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_APPLY;\r
+ break;\r
\r
- Status = EFI_SUCCESS;\r
+ case 0x1244:\r
+ case 0x1245:\r
+ //\r
+ // User press "Discard current form and Exit now", request Browser to discard the uncommitted data and exit.\r
+ //\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD_EXIT;\r
break;\r
- }\r
- break;\r
-\r
- case 0x1330:\r
- Status = mPrivateData->HiiPopup->CreatePopup (\r
- mPrivateData->HiiPopup,\r
- EfiHiiPopupStyleInfo,\r
- EfiHiiPopupTypeYesNo,\r
- mPrivateData->HiiHandle[0],\r
- STRING_TOKEN (STR_POPUP_STRING),\r
- &UserSelection\r
- );\r
- if (!EFI_ERROR (Status)) {\r
- if (UserSelection == EfiHiiPopupSelectionYes) {\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;\r
+\r
+ case 0x1231:\r
+ //\r
+ // 1. Check to see whether system support keyword.\r
+ //\r
+ Status = PrivateData->HiiKeywordHandler->GetData (\r
+ PrivateData->HiiKeywordHandler,\r
+ L"NAMESPACE=x-UEFI-ns",\r
+ L"KEYWORD=iSCSIBootEnable",\r
+ &Progress,\r
+ &ProgressErr,\r
+ &Results\r
+ );\r
+ if (EFI_ERROR (Status)) {\r
+ do {\r
+ CreatePopUp (\r
+ EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,\r
+ &Key,\r
+ L"",\r
+ L"This system not support this keyword!",\r
+ L"Press ENTER to continue ...",\r
+ L"",\r
+ NULL\r
+ );\r
+ } while (Key.UnicodeChar != CHAR_CARRIAGE_RETURN);\r
+\r
+ Status = EFI_SUCCESS;\r
+ break;\r
}\r
- }\r
- break;\r
\r
- default:\r
+ //\r
+ // 2. If system support this keyword, just try to change value.\r
+ //\r
+\r
+ //\r
+ // Change value from '0' to '1' or from '1' to '0'\r
+ //\r
+ TmpStr = StrStr (Results, L"&VALUE=");\r
+ ASSERT (TmpStr != NULL);\r
+ TmpStr += StrLen (L"&VALUE=");\r
+ TmpStr++;\r
+ if (*TmpStr == L'0') {\r
+ *TmpStr = L'1';\r
+ } else {\r
+ *TmpStr = L'0';\r
+ }\r
+\r
+ //\r
+ // 3. Call the keyword handler protocol to change the value.\r
+ //\r
+ Status = PrivateData->HiiKeywordHandler->SetData (\r
+ PrivateData->HiiKeywordHandler,\r
+ Results,\r
+ &Progress,\r
+ &ProgressErr\r
+ );\r
+ if (EFI_ERROR (Status)) {\r
+ do {\r
+ CreatePopUp (\r
+ EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,\r
+ &Key,\r
+ L"",\r
+ L"Set keyword to the system failed!",\r
+ L"Press ENTER to continue ...",\r
+ L"",\r
+ NULL\r
+ );\r
+ } while (Key.UnicodeChar != CHAR_CARRIAGE_RETURN);\r
+\r
+ Status = EFI_SUCCESS;\r
+ break;\r
+ }\r
+\r
+ break;\r
+\r
+ case 0x1330:\r
+ Status = mPrivateData->HiiPopup->CreatePopup (\r
+ mPrivateData->HiiPopup,\r
+ EfiHiiPopupStyleInfo,\r
+ EfiHiiPopupTypeYesNo,\r
+ mPrivateData->HiiHandle[0],\r
+ STRING_TOKEN (STR_POPUP_STRING),\r
+ &UserSelection\r
+ );\r
+ if (!EFI_ERROR (Status)) {\r
+ if (UserSelection == EfiHiiPopupSelectionYes) {\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;\r
+ }\r
+ }\r
+\r
+ break;\r
+\r
+ default:\r
+ break;\r
+ }\r
+\r
break;\r
- }\r
- break;\r
\r
- case EFI_BROWSER_ACTION_SUBMITTED:\r
+ case EFI_BROWSER_ACTION_SUBMITTED:\r
{\r
if (QuestionId == 0x1250) {\r
//\r
);\r
} while ((Key.ScanCode != SCAN_ESC) && (Key.UnicodeChar != CHAR_CARRIAGE_RETURN));\r
}\r
+\r
+ break;\r
}\r
- break;\r
\r
- default:\r
- Status = EFI_UNSUPPORTED;\r
- break;\r
+ default:\r
+ Status = EFI_UNSUPPORTED;\r
+ break;\r
}\r
\r
return Status;\r
EFI_STATUS\r
EFIAPI\r
DriverSampleInit (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
+ IN EFI_HANDLE ImageHandle,\r
+ IN EFI_SYSTEM_TABLE *SystemTable\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_HII_HANDLE HiiHandle[2];\r
- EFI_SCREEN_DESCRIPTOR Screen;\r
- EFI_HII_DATABASE_PROTOCOL *HiiDatabase;\r
- EFI_HII_STRING_PROTOCOL *HiiString;\r
- EFI_FORM_BROWSER2_PROTOCOL *FormBrowser2;\r
- EFI_HII_CONFIG_ROUTING_PROTOCOL *HiiConfigRouting;\r
- EFI_CONFIG_KEYWORD_HANDLER_PROTOCOL *HiiKeywordHandler;\r
- EFI_HII_POPUP_PROTOCOL *PopupHandler;\r
- CHAR16 *NewString;\r
- UINTN BufferSize;\r
- DRIVER_SAMPLE_CONFIGURATION *Configuration;\r
- BOOLEAN ActionFlag;\r
- EFI_STRING ConfigRequestHdr;\r
- EFI_STRING NameRequestHdr;\r
- MY_EFI_VARSTORE_DATA *VarStoreConfig;\r
- MY_EFI_BITS_VARSTORE_DATA *BitsVarStoreConfig;\r
- MY_EFI_UNION_DATA *UnionConfig;\r
- EFI_INPUT_KEY HotKey;\r
- EDKII_FORM_BROWSER_EXTENSION_PROTOCOL *FormBrowserEx;\r
+ EFI_STATUS Status;\r
+ EFI_HII_HANDLE HiiHandle[2];\r
+ EFI_SCREEN_DESCRIPTOR Screen;\r
+ EFI_HII_DATABASE_PROTOCOL *HiiDatabase;\r
+ EFI_HII_STRING_PROTOCOL *HiiString;\r
+ EFI_FORM_BROWSER2_PROTOCOL *FormBrowser2;\r
+ EFI_HII_CONFIG_ROUTING_PROTOCOL *HiiConfigRouting;\r
+ EFI_CONFIG_KEYWORD_HANDLER_PROTOCOL *HiiKeywordHandler;\r
+ EFI_HII_POPUP_PROTOCOL *PopupHandler;\r
+ CHAR16 *NewString;\r
+ UINTN BufferSize;\r
+ DRIVER_SAMPLE_CONFIGURATION *Configuration;\r
+ BOOLEAN ActionFlag;\r
+ EFI_STRING ConfigRequestHdr;\r
+ EFI_STRING NameRequestHdr;\r
+ MY_EFI_VARSTORE_DATA *VarStoreConfig;\r
+ MY_EFI_BITS_VARSTORE_DATA *BitsVarStoreConfig;\r
+ MY_EFI_UNION_DATA *UnionConfig;\r
+ EFI_INPUT_KEY HotKey;\r
+ EDKII_FORM_BROWSER_EXTENSION_PROTOCOL *FormBrowserEx;\r
\r
//\r
// Initialize the local variables.\r
ZeroMem (&Screen, sizeof (EFI_SCREEN_DESCRIPTOR));\r
gST->ConOut->QueryMode (gST->ConOut, gST->ConOut->Mode->Mode, &Screen.RightColumn, &Screen.BottomRow);\r
\r
- Screen.TopRow = 3;\r
- Screen.BottomRow = Screen.BottomRow - 3;\r
+ Screen.TopRow = 3;\r
+ Screen.BottomRow = Screen.BottomRow - 3;\r
\r
//\r
// Initialize driver private data\r
mPrivateData->Signature = DRIVER_SAMPLE_PRIVATE_SIGNATURE;\r
\r
mPrivateData->ConfigAccess.ExtractConfig = ExtractConfig;\r
- mPrivateData->ConfigAccess.RouteConfig = RouteConfig;\r
- mPrivateData->ConfigAccess.Callback = DriverCallback;\r
+ mPrivateData->ConfigAccess.RouteConfig = RouteConfig;\r
+ mPrivateData->ConfigAccess.Callback = DriverCallback;\r
\r
//\r
// Locate Hii Database protocol\r
//\r
- Status = gBS->LocateProtocol (&gEfiHiiDatabaseProtocolGuid, NULL, (VOID **) &HiiDatabase);\r
+ Status = gBS->LocateProtocol (&gEfiHiiDatabaseProtocolGuid, NULL, (VOID **)&HiiDatabase);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
mPrivateData->HiiDatabase = HiiDatabase;\r
\r
//\r
// Locate HiiString protocol\r
//\r
- Status = gBS->LocateProtocol (&gEfiHiiStringProtocolGuid, NULL, (VOID **) &HiiString);\r
+ Status = gBS->LocateProtocol (&gEfiHiiStringProtocolGuid, NULL, (VOID **)&HiiString);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
mPrivateData->HiiString = HiiString;\r
\r
//\r
// Locate Formbrowser2 protocol\r
//\r
- Status = gBS->LocateProtocol (&gEfiFormBrowser2ProtocolGuid, NULL, (VOID **) &FormBrowser2);\r
+ Status = gBS->LocateProtocol (&gEfiFormBrowser2ProtocolGuid, NULL, (VOID **)&FormBrowser2);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
mPrivateData->FormBrowser2 = FormBrowser2;\r
\r
//\r
// Locate ConfigRouting protocol\r
//\r
- Status = gBS->LocateProtocol (&gEfiHiiConfigRoutingProtocolGuid, NULL, (VOID **) &HiiConfigRouting);\r
+ Status = gBS->LocateProtocol (&gEfiHiiConfigRoutingProtocolGuid, NULL, (VOID **)&HiiConfigRouting);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
mPrivateData->HiiConfigRouting = HiiConfigRouting;\r
\r
//\r
// Locate keyword handler protocol\r
//\r
- Status = gBS->LocateProtocol (&gEfiConfigKeywordHandlerProtocolGuid, NULL, (VOID **) &HiiKeywordHandler);\r
+ Status = gBS->LocateProtocol (&gEfiConfigKeywordHandlerProtocolGuid, NULL, (VOID **)&HiiKeywordHandler);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
mPrivateData->HiiKeywordHandler = HiiKeywordHandler;\r
\r
//\r
// Locate HiiPopup protocol\r
//\r
- Status = gBS->LocateProtocol (&gEfiHiiPopupProtocolGuid, NULL, (VOID **) &PopupHandler);\r
+ Status = gBS->LocateProtocol (&gEfiHiiPopupProtocolGuid, NULL, (VOID **)&PopupHandler);\r
if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
+\r
mPrivateData->HiiPopup = PopupHandler;\r
\r
Status = gBS->InstallMultipleProtocolInterfaces (\r
//\r
// Update the device path string.\r
//\r
- NewString = ConvertDevicePathToText((EFI_DEVICE_PATH_PROTOCOL*)&mHiiVendorDevicePath0, FALSE, FALSE);\r
+ NewString = ConvertDevicePathToText ((EFI_DEVICE_PATH_PROTOCOL *)&mHiiVendorDevicePath0, FALSE, FALSE);\r
if (HiiSetString (HiiHandle[0], STRING_TOKEN (STR_DEVICE_PATH), NewString, NULL) == 0) {\r
DriverSampleUnload (ImageHandle);\r
return EFI_OUT_OF_RESOURCES;\r
}\r
+\r
if (NewString != NULL) {\r
FreePool (NewString);\r
}\r
ASSERT (NameRequestHdr != NULL);\r
\r
BufferSize = sizeof (DRIVER_SAMPLE_CONFIGURATION);\r
- Status = gRT->GetVariable (VariableName, &gDriverSampleFormSetGuid, NULL, &BufferSize, Configuration);\r
+ Status = gRT->GetVariable (VariableName, &gDriverSampleFormSetGuid, NULL, &BufferSize, Configuration);\r
if (EFI_ERROR (Status)) {\r
//\r
// Store zero data Buffer Storage to EFI variable\r
//\r
- Status = gRT->SetVariable(\r
+ Status = gRT->SetVariable (\r
VariableName,\r
&gDriverSampleFormSetGuid,\r
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
DriverSampleUnload (ImageHandle);\r
return Status;\r
}\r
+\r
//\r
// EFI variable for NV config doesn't exit, we should build this variable\r
// based on default values stored in IFR\r
return EFI_INVALID_PARAMETER;\r
}\r
}\r
+\r
FreePool (ConfigRequestHdr);\r
\r
//\r
ASSERT (ConfigRequestHdr != NULL);\r
\r
BufferSize = sizeof (MY_EFI_VARSTORE_DATA);\r
- Status = gRT->GetVariable (MyEfiVar, &gDriverSampleFormSetGuid, NULL, &BufferSize, VarStoreConfig);\r
+ Status = gRT->GetVariable (MyEfiVar, &gDriverSampleFormSetGuid, NULL, &BufferSize, VarStoreConfig);\r
if (EFI_ERROR (Status)) {\r
//\r
// Store zero data to EFI variable Storage.\r
//\r
- Status = gRT->SetVariable(\r
+ Status = gRT->SetVariable (\r
MyEfiVar,\r
&gDriverSampleFormSetGuid,\r
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
DriverSampleUnload (ImageHandle);\r
return Status;\r
}\r
+\r
//\r
// EFI variable for NV config doesn't exit, we should build this variable\r
// based on default values stored in IFR\r
return EFI_INVALID_PARAMETER;\r
}\r
}\r
+\r
FreePool (ConfigRequestHdr);\r
\r
//\r
ASSERT (ConfigRequestHdr != NULL);\r
\r
BufferSize = sizeof (MY_EFI_BITS_VARSTORE_DATA);\r
- Status = gRT->GetVariable (MyEfiBitVar, &gDriverSampleFormSetGuid, NULL, &BufferSize, BitsVarStoreConfig);\r
+ Status = gRT->GetVariable (MyEfiBitVar, &gDriverSampleFormSetGuid, NULL, &BufferSize, BitsVarStoreConfig);\r
if (EFI_ERROR (Status)) {\r
//\r
// Store zero data to EFI variable Storage.\r
//\r
- Status = gRT->SetVariable(\r
+ Status = gRT->SetVariable (\r
MyEfiBitVar,\r
&gDriverSampleFormSetGuid,\r
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
DriverSampleUnload (ImageHandle);\r
return Status;\r
}\r
+\r
//\r
// EFI variable for NV config doesn't exit, we should build this variable\r
// based on default values stored in IFR\r
return EFI_INVALID_PARAMETER;\r
}\r
}\r
+\r
FreePool (ConfigRequestHdr);\r
\r
- //\r
+ //\r
// Initialize Union efi varstore configuration data\r
//\r
UnionConfig = &mPrivateData->UnionConfig;\r
ASSERT (ConfigRequestHdr != NULL);\r
\r
BufferSize = sizeof (MY_EFI_UNION_DATA);\r
- Status = gRT->GetVariable (MyEfiUnionVar, &gDriverSampleFormSetGuid, NULL, &BufferSize, UnionConfig);\r
+ Status = gRT->GetVariable (MyEfiUnionVar, &gDriverSampleFormSetGuid, NULL, &BufferSize, UnionConfig);\r
if (EFI_ERROR (Status)) {\r
//\r
// Store zero data to EFI variable Storage.\r
//\r
- Status = gRT->SetVariable(\r
+ Status = gRT->SetVariable (\r
MyEfiUnionVar,\r
&gDriverSampleFormSetGuid,\r
EFI_VARIABLE_NON_VOLATILE | EFI_VARIABLE_BOOTSERVICE_ACCESS,\r
DriverSampleUnload (ImageHandle);\r
return Status;\r
}\r
+\r
//\r
// EFI variable for NV config doesn't exit, we should build this variable\r
// based on default values stored in IFR\r
return EFI_INVALID_PARAMETER;\r
}\r
}\r
+\r
FreePool (ConfigRequestHdr);\r
\r
Status = gBS->CreateEventEx (\r
- EVT_NOTIFY_SIGNAL, \r
- TPL_NOTIFY,\r
- EfiEventEmptyFunction,\r
- NULL,\r
- &gEfiIfrRefreshIdOpGuid,\r
- &mEvent\r
- );\r
+ EVT_NOTIFY_SIGNAL,\r
+ TPL_NOTIFY,\r
+ EfiEventEmptyFunction,\r
+ NULL,\r
+ &gEfiIfrRefreshIdOpGuid,\r
+ &mEvent\r
+ );\r
ASSERT_EFI_ERROR (Status);\r
\r
//\r
// Example of how to use BrowserEx protocol to register HotKey.\r
- // \r
- Status = gBS->LocateProtocol (&gEdkiiFormBrowserExProtocolGuid, NULL, (VOID **) &FormBrowserEx);\r
+ //\r
+ Status = gBS->LocateProtocol (&gEdkiiFormBrowserExProtocolGuid, NULL, (VOID **)&FormBrowserEx);\r
if (!EFI_ERROR (Status)) {\r
//\r
// First unregister the default hot key F9 and F10.\r
HotKey.UnicodeChar = CHAR_NULL;\r
HotKey.ScanCode = SCAN_F9;\r
FormBrowserEx->RegisterHotKey (&HotKey, 0, 0, NULL);\r
- HotKey.ScanCode = SCAN_F10;\r
+ HotKey.ScanCode = SCAN_F10;\r
FormBrowserEx->RegisterHotKey (&HotKey, 0, 0, NULL);\r
- \r
+\r
//\r
// Register the default HotKey F9 and F10 again.\r
//\r
- HotKey.ScanCode = SCAN_F10;\r
- NewString = HiiGetString (mPrivateData->HiiHandle[0], STRING_TOKEN (FUNCTION_TEN_STRING), NULL);\r
+ HotKey.ScanCode = SCAN_F10;\r
+ NewString = HiiGetString (mPrivateData->HiiHandle[0], STRING_TOKEN (FUNCTION_TEN_STRING), NULL);\r
ASSERT (NewString != NULL);\r
FormBrowserEx->RegisterHotKey (&HotKey, BROWSER_ACTION_SUBMIT, 0, NewString);\r
- HotKey.ScanCode = SCAN_F9;\r
- NewString = HiiGetString (mPrivateData->HiiHandle[0], STRING_TOKEN (FUNCTION_NINE_STRING), NULL);\r
+ HotKey.ScanCode = SCAN_F9;\r
+ NewString = HiiGetString (mPrivateData->HiiHandle[0], STRING_TOKEN (FUNCTION_NINE_STRING), NULL);\r
ASSERT (NewString != NULL);\r
FormBrowserEx->RegisterHotKey (&HotKey, BROWSER_ACTION_DEFAULT, EFI_HII_DEFAULT_CLASS_STANDARD, NewString);\r
}\r
IN EFI_HANDLE ImageHandle\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
ASSERT (mPrivateData != NULL);\r
\r
if (DriverHandle[0] != NULL) {\r
gBS->UninstallMultipleProtocolInterfaces (\r
- DriverHandle[0],\r
- &gEfiDevicePathProtocolGuid,\r
- &mHiiVendorDevicePath0,\r
- &gEfiHiiConfigAccessProtocolGuid,\r
- &mPrivateData->ConfigAccess,\r
- NULL\r
+ DriverHandle[0],\r
+ &gEfiDevicePathProtocolGuid,\r
+ &mHiiVendorDevicePath0,\r
+ &gEfiHiiConfigAccessProtocolGuid,\r
+ &mPrivateData->ConfigAccess,\r
+ NULL\r
);\r
DriverHandle[0] = NULL;\r
}\r
\r
if (DriverHandle[1] != NULL) {\r
gBS->UninstallMultipleProtocolInterfaces (\r
- DriverHandle[1],\r
- &gEfiDevicePathProtocolGuid,\r
- &mHiiVendorDevicePath1,\r
- &gEfiHiiConfigAccessProtocolGuid,\r
- &mPrivateData->ConfigAccess,\r
- NULL\r
+ DriverHandle[1],\r
+ &gEfiDevicePathProtocolGuid,\r
+ &mHiiVendorDevicePath1,\r
+ &gEfiHiiConfigAccessProtocolGuid,\r
+ &mPrivateData->ConfigAccess,\r
+ NULL\r
);\r
DriverHandle[1] = NULL;\r
}\r
FreePool (mPrivateData->NameValueName[Index]);\r
}\r
}\r
+\r
FreePool (mPrivateData);\r
mPrivateData = NULL;\r
\r