\r
#define MAX_MAC_ADDRESS_NODE_LIST_LEN 10\r
\r
-EFI_GUID mDeviceManagerGuid = DEVICE_MANAGER_FORMSET_GUID;\r
-EFI_GUID mDriverHealthGuid = DRIVER_HEALTH_FORMSET_GUID;\r
-\r
//\r
// Which Mac Address string is select\r
// it will decide what menu need to show in the NETWORK_DEVICE_FORM_ID form.\r
(UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
}\r
},\r
- //\r
- // {102579A0-3686-466e-ACD8-80C087044F4A}\r
- //\r
- { 0x102579a0, 0x3686, 0x466e, { 0xac, 0xd8, 0x80, 0xc0, 0x87, 0x4, 0x4f, 0x4a } }\r
+ DEVICE_MANAGER_FORMSET_GUID\r
},\r
{\r
END_DEVICE_PATH_TYPE,\r
(UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
}\r
},\r
- //\r
- // {D8F76651-1675-4986-BED4-3824B2F1F4C8}\r
- //\r
- { 0xd8f76651, 0x1675, 0x4986, { 0xbe, 0xd4, 0x38, 0x24, 0xb2, 0xf1, 0xf4, 0xc8 } }\r
+ DRIVER_HEALTH_FORMSET_GUID\r
},\r
{\r
END_DEVICE_PATH_TYPE,\r
)\r
{\r
UINTN CurIndex;\r
- \r
- if ((Action == EFI_BROWSER_ACTION_FORM_OPEN) || (Action == EFI_BROWSER_ACTION_FORM_CLOSE)) {\r
+\r
+ if (Action != EFI_BROWSER_ACTION_CHANGING) {\r
//\r
- // Do nothing for UEFI OPEN/CLOSE Action\r
+ // All other action return unsupported.\r
//\r
- return EFI_SUCCESS;\r
+ return EFI_UNSUPPORTED;\r
}\r
\r
- if ((Value == NULL) || (ActionRequest == NULL)) {\r
+ if (Value == NULL) {\r
return EFI_INVALID_PARAMETER;\r
}\r
\r
gCallbackKey = QuestionId;\r
-\r
if ((QuestionId < MAX_KEY_SECTION_LEN + NETWORK_DEVICE_LIST_KEY_OFFSET) && (QuestionId >= NETWORK_DEVICE_LIST_KEY_OFFSET)) {\r
//\r
// If user select the mac address, need to record mac address string to support next form show.\r
}\r
}\r
}\r
- \r
- //\r
- // Request to exit SendForm(), so as to switch to selected form\r
- //\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;\r
\r
return EFI_SUCCESS;\r
}\r
EFI_STATUS Status;\r
UINTN EntryCount;\r
UINTN Index; \r
- EFI_HII_HANDLE HiiDeviceManagerHandle;\r
EFI_HANDLE DriverHandle;\r
EFI_HANDLE ControllerHandle;\r
EFI_DEVICE_PATH_PROTOCOL *DevicePath;\r
EFI_OPEN_PROTOCOL_INFORMATION_ENTRY *OpenInfoBuffer;\r
BOOLEAN IsNeedAdd;\r
\r
- HiiDeviceManagerHandle = gDeviceManagerPrivate.HiiHandle;\r
IsNeedAdd = FALSE;\r
OpenInfoBuffer = NULL;\r
if ((Handle == NULL) || (ItemCount == NULL)) {\r
// Publish our HII data.\r
//\r
HiiHandle = HiiAddPackages (\r
- &mDeviceManagerGuid,\r
+ &gDeviceManagerFormSetGuid,\r
gDeviceManagerPrivate.DriverHandle,\r
DeviceManagerVfrBin,\r
BdsDxeStrings,\r
AddNetworkMenu = TRUE;\r
HiiCreateGotoOpCode (\r
StartOpCodeHandle,\r
- DEVICE_MANAGER_FORM_ID,\r
+ INVALID_FORM_ID,\r
STRING_TOKEN (STR_FORM_NETWORK_DEVICE_LIST_TITLE),\r
STRING_TOKEN (STR_FORM_NETWORK_DEVICE_LIST_HELP),\r
EFI_IFR_FLAG_CALLBACK,\r
while (AddItemCount > 0) {\r
HiiCreateGotoOpCode (\r
StartOpCodeHandle,\r
- NETWORK_DEVICE_LIST_FORM_ID,\r
+ INVALID_FORM_ID,\r
mMacDeviceList.NodeList[mMacDeviceList.CurListLen - AddItemCount].PromptId,\r
STRING_TOKEN (STR_NETWORK_DEVICE_HELP),\r
EFI_IFR_FLAG_CALLBACK,\r
//\r
HiiCreateGotoOpCode (\r
StartOpCodeHandle,\r
- NETWORK_DEVICE_FORM_ID,\r
+ INVALID_FORM_ID,\r
Token,\r
TokenHelp,\r
EFI_IFR_FLAG_CALLBACK,\r
if (mNextShowFormId == DEVICE_MANAGER_FORM_ID) {\r
HiiCreateGotoOpCode (\r
StartOpCodeHandle,\r
- DEVICE_MANAGER_FORM_ID,\r
+ INVALID_FORM_ID,\r
Token,\r
TokenHelp,\r
EFI_IFR_FLAG_CALLBACK,\r
\r
HiiUpdateForm (\r
HiiHandle,\r
- &mDeviceManagerGuid,\r
+ &gDeviceManagerFormSetGuid,\r
mNextShowFormId,\r
StartOpCodeHandle,\r
EndOpCodeHandle\r
gFormBrowser2,\r
&HiiHandle,\r
1,\r
- &mDeviceManagerGuid,\r
+ &gDeviceManagerFormSetGuid,\r
mNextShowFormId,\r
NULL,\r
&ActionRequest\r
OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest\r
)\r
{\r
- if ((Action == EFI_BROWSER_ACTION_FORM_OPEN) || (Action == EFI_BROWSER_ACTION_FORM_CLOSE)) {\r
+ if (Action == EFI_BROWSER_ACTION_CHANGED) {\r
+ if ((Value == NULL) || (ActionRequest == NULL)) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
+\r
+ gCallbackKey = QuestionId;\r
+\r
//\r
- // Do nothing for UEFI OPEN/CLOSE Action\r
+ // Request to exit SendForm(), so as to switch to selected form\r
//\r
- return EFI_SUCCESS;\r
- }\r
+ *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;\r
\r
- if ((Value == NULL) || (ActionRequest == NULL)) {\r
- return EFI_INVALID_PARAMETER;\r
+ return EFI_SUCCESS;\r
}\r
\r
- gCallbackKey = QuestionId;\r
-\r
//\r
- // Request to exit SendForm(), so as to switch to selected form\r
+ // All other action return unsupported.\r
//\r
- *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;\r
-\r
- return EFI_SUCCESS;\r
+ return EFI_UNSUPPORTED;\r
}\r
\r
/**\r
DRIVER_HEALTH_INFO *DriverHealthInfo;\r
LIST_ENTRY *Link;\r
EFI_DEVICE_PATH_PROTOCOL *DriverDevicePath;\r
- UINTN Length;\r
BOOLEAN RebootRequired;\r
\r
Index = 0;\r
- Length = 0;\r
DriverHealthInfo = NULL; \r
DriverDevicePath = NULL;\r
InitializeListHead (&DriverHealthList);\r
// Publish Driver Health HII data.\r
//\r
HiiHandle = HiiAddPackages (\r
- &mDeviceManagerGuid,\r
+ &gDeviceManagerFormSetGuid,\r
gDeviceManagerPrivate.DriverHealthHandle,\r
DriverHealthVfrBin,\r
BdsDxeStrings,\r
DriverHealthInfo->MessageList->StringId, \r
NULL\r
);\r
- //\r
- // Assert if can not retrieve the message string\r
- //\r
- ASSERT (TmpString != NULL);\r
- StrnCat (String, TmpString, StrLen (TmpString));\r
- FreePool (TmpString);\r
} else {\r
//\r
// Update the string will be displayed base on the driver's health status\r
switch(DriverHealthInfo->HealthStatus) {\r
case EfiDriverHealthStatusRepairRequired:\r
TmpString = GetStringById (STRING_TOKEN (STR_REPAIR_REQUIRED));\r
- StrCat (String, TmpString);\r
break;\r
case EfiDriverHealthStatusConfigurationRequired:\r
TmpString = GetStringById (STRING_TOKEN (STR_CONFIGURATION_REQUIRED));\r
- StrCat (String, TmpString);\r
break;\r
case EfiDriverHealthStatusFailed:\r
TmpString = GetStringById (STRING_TOKEN (STR_OPERATION_FAILED));\r
- StrCat (String, TmpString);\r
break;\r
case EfiDriverHealthStatusReconnectRequired:\r
TmpString = GetStringById (STRING_TOKEN (STR_RECONNECT_REQUIRED));\r
- StrCat (String, TmpString);\r
break;\r
case EfiDriverHealthStatusRebootRequired:\r
TmpString = GetStringById (STRING_TOKEN (STR_REBOOT_REQUIRED));\r
- StrCat (String, TmpString);\r
break;\r
default:\r
TmpString = GetStringById (STRING_TOKEN (STR_DRIVER_HEALTH_HEALTHY));\r
- StrCat (String, TmpString);\r
break;\r
}\r
- FreePool (TmpString);\r
}\r
\r
+ ASSERT (TmpString != NULL);\r
+ StrCat (String, TmpString);\r
+ FreePool (TmpString);\r
+\r
Token = HiiSetString (HiiHandle, 0, String, NULL);\r
FreePool (String);\r
\r
\r
Status = HiiUpdateForm (\r
HiiHandle,\r
- &mDriverHealthGuid,\r
+ &gDriverHealthFormSetGuid,\r
DRIVER_HEALTH_FORM_ID,\r
StartOpCodeHandle,\r
EndOpCodeHandle\r
\r
Status = HiiUpdateForm (\r
HiiHandle,\r
- &mDriverHealthGuid,\r
+ &gDriverHealthFormSetGuid,\r
DRIVER_HEALTH_FORM_ID,\r
StartOpCodeHandleRepair,\r
EndOpCodeHandleRepair\r
gFormBrowser2,\r
&HiiHandle,\r
1,\r
- &mDriverHealthGuid,\r
+ &gDriverHealthFormSetGuid,\r
DRIVER_HEALTH_FORM_ID,\r
NULL,\r
&ActionRequest\r