]> git.proxmox.com Git - mirror_edk2.git/commitdiff
> When GetHealthStatus() returns NULL FormHiiHandle, DeviceManager shouldn't call...
authorniruiyu <niruiyu@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 1 Apr 2011 05:22:18 +0000 (05:22 +0000)
committerniruiyu <niruiyu@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 1 Apr 2011 05:22:18 +0000 (05:22 +0000)
> Combine the multiple reset request returned by GetHealthStatus() when repairing all the controllers.
> Fix the bug that source code and VFR code use different value for DRIVER_HEALTH_FORM_ID.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11494 6f19259b-4bc3-4df7-8a09-765794883524

IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.c
IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManager.h
IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.Vfr
IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.h [new file with mode: 0644]
IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DriverHealthVfr.Vfr

index ca33f9a8aa16bb2f9996ff3044ef36e0c04363cb..852946193c2ce4ecd564c1e6a844eea75b156368 100644 (file)
@@ -53,6 +53,7 @@
   HwErrRecSupport.h\r
 \r
   DeviceMngr/DeviceManager.h\r
+  DeviceMngr/DeviceManagerVfr.h\r
   DeviceMngr/DeviceManagerVfr.Vfr\r
   DeviceMngr/DriverHealthVfr.Vfr\r
   DeviceMngr/DeviceManagerStrings.uni\r
index 7da685103330c26c7f0369034122e418e6e49e56..8ee345e8a7ff642e8e460c33e9a3fdfc49be2d67 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   The platform device manager reference implementation\r
 \r
-Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2011, 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
@@ -1168,6 +1168,7 @@ CallDriverHealth (
   LIST_ENTRY                  *Link;\r
   EFI_DEVICE_PATH_PROTOCOL    *DriverDevicePath;\r
   UINTN                       Length;\r
+  BOOLEAN                     RebootRequired;\r
 \r
   Index               = 0;\r
   Length              = 0;\r
@@ -1304,30 +1305,31 @@ CallDriverHealth (
       //\r
       switch(DriverHealthInfo->HealthStatus) {\r
       case EfiDriverHealthStatusRepairRequired:\r
-        Length = StrLen (GetStringById (STRING_TOKEN (STR_REPAIR_REQUIRED)));\r
-        StrnCat (String, GetStringById (STRING_TOKEN (STR_REPAIR_REQUIRED)), Length);\r
+        TmpString = GetStringById (STRING_TOKEN (STR_REPAIR_REQUIRED));\r
+        StrCat (String, TmpString);\r
         break;\r
       case EfiDriverHealthStatusConfigurationRequired:\r
-        Length = StrLen (GetStringById (STRING_TOKEN (STR_CONFIGURATION_REQUIRED)));\r
-        StrnCat (String, GetStringById (STRING_TOKEN (STR_CONFIGURATION_REQUIRED)), Length);\r
+        TmpString = GetStringById (STRING_TOKEN (STR_CONFIGURATION_REQUIRED));\r
+        StrCat (String, TmpString);\r
         break;\r
       case EfiDriverHealthStatusFailed:\r
-        Length = StrLen (GetStringById (STRING_TOKEN (STR_OPERATION_FAILED)));\r
-        StrnCat (String, GetStringById (STRING_TOKEN (STR_OPERATION_FAILED)), Length);\r
+        TmpString = GetStringById (STRING_TOKEN (STR_OPERATION_FAILED));\r
+        StrCat (String, TmpString);\r
         break;\r
       case EfiDriverHealthStatusReconnectRequired:\r
-        Length = StrLen (GetStringById (STRING_TOKEN (STR_RECONNECT_REQUIRED)));\r
-        StrnCat (String, GetStringById (STRING_TOKEN (STR_RECONNECT_REQUIRED)), Length);\r
+        TmpString = GetStringById (STRING_TOKEN (STR_RECONNECT_REQUIRED));\r
+        StrCat (String, TmpString);\r
         break;\r
       case EfiDriverHealthStatusRebootRequired:\r
-        Length = StrLen (GetStringById (STRING_TOKEN (STR_REBOOT_REQUIRED)));\r
-        StrnCat (String, GetStringById (STRING_TOKEN (STR_REBOOT_REQUIRED)), Length);\r
+        TmpString = GetStringById (STRING_TOKEN (STR_REBOOT_REQUIRED));\r
+        StrCat (String, TmpString);\r
         break;\r
       default:\r
-        Length = StrLen (GetStringById (STRING_TOKEN (STR_DRIVER_HEALTH_HEALTHY)));\r
-        StrnCat (String, GetStringById (STRING_TOKEN (STR_DRIVER_HEALTH_HEALTHY)), Length);\r
+        TmpString = GetStringById (STRING_TOKEN (STR_DRIVER_HEALTH_HEALTHY));\r
+        StrCat (String, TmpString);\r
         break;\r
       }\r
+      FreePool (TmpString);\r
     }\r
 \r
     Token = HiiSetString (HiiHandle, 0, String, NULL);\r
@@ -1439,15 +1441,20 @@ CallDriverHealth (
         //\r
         // Process the driver's healthy status for the specify module\r
         //\r
+        RebootRequired = FALSE;\r
         ProcessSingleControllerHealth (\r
           DriverHealthInfo->DriverHealth,\r
           DriverHealthInfo->ControllerHandle,      \r
           DriverHealthInfo->ChildHandle,\r
           DriverHealthInfo->HealthStatus,\r
           &(DriverHealthInfo->MessageList),\r
-          DriverHealthInfo->HiiHandle\r
-       );  \r
-       break;\r
+          DriverHealthInfo->HiiHandle,\r
+          &RebootRequired\r
+          );\r
+        if (RebootRequired) {\r
+          gRT->ResetSystem (EfiResetWarm, EFI_SUCCESS, 0, NULL);\r
+        }\r
+        break;\r
       }\r
       Index++;\r
       Link = GetNextNode (&DriverHealthList, Link);\r
@@ -1934,15 +1941,17 @@ PlaformHealthStatusCheck (
                             ChildHandle.  This is an optional parameter that may be NULL.\r
   @param FormHiiHandle      The HII handle for an HII form associated with the \r
                             controller specified by ControllerHandle and ChildHandle.\r
+  @param RebootRequired     Indicate whether a reboot is required to repair the controller.\r
 **/\r
 VOID\r
 ProcessSingleControllerHealth (\r
-    IN  EFI_DRIVER_HEALTH_PROTOCOL         *DriverHealth,\r
-    IN  EFI_HANDLE                         ControllerHandle, OPTIONAL\r
-    IN  EFI_HANDLE                         ChildHandle,      OPTIONAL\r
-    IN  EFI_DRIVER_HEALTH_STATUS           HealthStatus,\r
-    IN  EFI_DRIVER_HEALTH_HII_MESSAGE      **MessageList,    OPTIONAL\r
-    IN  EFI_HII_HANDLE                     FormHiiHandle\r
+  IN  EFI_DRIVER_HEALTH_PROTOCOL         *DriverHealth,\r
+  IN  EFI_HANDLE                         ControllerHandle, OPTIONAL\r
+  IN  EFI_HANDLE                         ChildHandle,      OPTIONAL\r
+  IN  EFI_DRIVER_HEALTH_STATUS           HealthStatus,\r
+  IN  EFI_DRIVER_HEALTH_HII_MESSAGE      **MessageList,    OPTIONAL\r
+  IN  EFI_HII_HANDLE                     FormHiiHandle,\r
+  IN OUT BOOLEAN                         *RebootRequired\r
   )\r
 {\r
   EFI_STATUS                         Status;\r
@@ -1954,8 +1963,8 @@ ProcessSingleControllerHealth (
   // reach a terminal status. The status from EfiDriverHealthStatusRepairRequired after repair \r
   // will be in (Health, Failed, Configuration Required).\r
   //\r
-  while( LocalHealthStatus == EfiDriverHealthStatusConfigurationRequired ||\r
-         LocalHealthStatus == EfiDriverHealthStatusRepairRequired) {\r
+  while(LocalHealthStatus == EfiDriverHealthStatusConfigurationRequired ||\r
+        LocalHealthStatus == EfiDriverHealthStatusRepairRequired) {\r
 \r
     if (LocalHealthStatus == EfiDriverHealthStatusRepairRequired) {\r
       Status = DriverHealth->Repair (\r
@@ -1971,16 +1980,23 @@ ProcessSingleControllerHealth (
     // (Healthy, Reboot Required, Failed, Reconnect Required, Repair Required).   \r
     //\r
     if (LocalHealthStatus == EfiDriverHealthStatusConfigurationRequired) {\r
-      Status = gFormBrowser2->SendForm (\r
-                                gFormBrowser2,\r
-                                &FormHiiHandle,\r
-                                1,\r
-                                &gEfiHiiDriverHealthFormsetGuid,\r
-                                0,\r
-                                NULL,\r
-                                NULL\r
-                                );\r
-      ASSERT( !EFI_ERROR (Status));\r
+      if (FormHiiHandle != NULL) {\r
+        Status = gFormBrowser2->SendForm (\r
+                                  gFormBrowser2,\r
+                                  &FormHiiHandle,\r
+                                  1,\r
+                                  &gEfiHiiDriverHealthFormsetGuid,\r
+                                  0,\r
+                                  NULL,\r
+                                  NULL\r
+                                  );\r
+        ASSERT( !EFI_ERROR (Status));\r
+      } else {\r
+        //\r
+        // Exit the loop in case no FormHiiHandle is supplied to prevent dead-loop\r
+        //\r
+        break;\r
+      }\r
     }\r
 \r
     Status = DriverHealth->GetHealthStatus (\r
@@ -1991,11 +2007,11 @@ ProcessSingleControllerHealth (
                               NULL,\r
                               &FormHiiHandle\r
                               );\r
-   ASSERT_EFI_ERROR (Status);\r
+    ASSERT_EFI_ERROR (Status);\r
 \r
-   if (*MessageList != NULL) {\r
+    if (*MessageList != NULL) {\r
       ProcessMessages (*MessageList);\r
-   }  \r
+    }  \r
   }\r
   \r
   //\r
@@ -2010,7 +2026,7 @@ ProcessSingleControllerHealth (
   // Check for RebootRequired or ReconnectRequired\r
   //\r
   if (LocalHealthStatus == EfiDriverHealthStatusRebootRequired) {\r
-    gRT->ResetSystem (EfiResetWarm, EFI_SUCCESS, 0, NULL);\r
+    *RebootRequired = TRUE;\r
   }\r
   \r
   //\r
@@ -2019,12 +2035,13 @@ ProcessSingleControllerHealth (
   if (LocalHealthStatus == EfiDriverHealthStatusReconnectRequired) {\r
     Status = gBS->DisconnectController (ControllerHandle, NULL, NULL);\r
     if (EFI_ERROR (Status)) {\r
-        //\r
-        // Disconnect failed.  Need to promote reconnect to a reboot.\r
-        //\r
-        gRT->ResetSystem (EfiResetWarm, EFI_SUCCESS, 0, NULL);\r
+      //\r
+      // Disconnect failed.  Need to promote reconnect to a reboot.\r
+      //\r
+      *RebootRequired = TRUE;\r
+    } else {\r
+      gBS->ConnectController (ControllerHandle, NULL, NULL, TRUE);\r
     }\r
-    gBS->ConnectController (ControllerHandle, NULL, NULL, TRUE);\r
   }\r
 }\r
 \r
@@ -2117,12 +2134,16 @@ PlatformRepairAll (
 { \r
   DRIVER_HEALTH_INFO          *DriverHealthInfo;\r
   LIST_ENTRY                  *Link;\r
+  BOOLEAN                     RebootRequired;\r
 \r
   ASSERT (DriverHealthList != NULL);\r
 \r
-  Link = GetFirstNode (DriverHealthList);\r
+  RebootRequired = FALSE;\r
 \r
-  while (!IsNull (DriverHealthList, Link)) {   \r
+  for ( Link = GetFirstNode (DriverHealthList)\r
+      ; !IsNull (DriverHealthList, Link)\r
+      ; Link = GetNextNode (DriverHealthList, Link)\r
+      ) {\r
     DriverHealthInfo = DEVICE_MANAGER_HEALTH_INFO_FROM_LINK (Link);\r
     //\r
     // Do driver health status operation by each link node\r
@@ -2130,15 +2151,18 @@ PlatformRepairAll (
     ASSERT (DriverHealthInfo != NULL);\r
 \r
     ProcessSingleControllerHealth ( \r
-        DriverHealthInfo->DriverHealth,\r
-        DriverHealthInfo->ControllerHandle,\r
-        DriverHealthInfo->ChildHandle,\r
-        DriverHealthInfo->HealthStatus,\r
-        &(DriverHealthInfo->MessageList),\r
-        DriverHealthInfo->HiiHandle\r
-        );\r
+      DriverHealthInfo->DriverHealth,\r
+      DriverHealthInfo->ControllerHandle,\r
+      DriverHealthInfo->ChildHandle,\r
+      DriverHealthInfo->HealthStatus,\r
+      &(DriverHealthInfo->MessageList),\r
+      DriverHealthInfo->HiiHandle,\r
+      &RebootRequired\r
+      );\r
+  }\r
 \r
-    Link = GetNextNode (DriverHealthList, Link);\r
+  if (RebootRequired) {\r
+    gRT->ResetSystem (EfiResetWarm, EFI_SUCCESS, 0, NULL);\r
   }\r
 }\r
 \r
index fc39b3c90788052c414d72f9f03d449d48c4d32d..72e6fbc790e9f45915b806944878c6baed62604a 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   The platform device manager reference implement\r
 \r
-Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2011, 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
@@ -17,57 +17,10 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 \r
 #include "Bds.h"\r
 #include "FrontPage.h"\r
+#include "DeviceManagerVfr.h"\r
 #include <Protocol/PciIo.h>\r
 \r
-//\r
-// These are defined as the same with vfr file\r
-//\r
-#define DEVICE_MANAGER_FORMSET_GUID  \\r
-  { \\r
-  0x3ebfa8e6, 0x511d, 0x4b5b, {0xa9, 0x5f, 0xfb, 0x38, 0x26, 0xf, 0x1c, 0x27} \\r
-  }\r
-\r
-#define DRIVER_HEALTH_FORMSET_GUID  \\r
-  { \\r
-  0xf76e0a70, 0xb5ed, 0x4c38, {0xac, 0x9a, 0xe5, 0xf5, 0x4b, 0xf1, 0x6e, 0x34} \\r
-  }\r
-\r
-#define LABEL_DEVICES_LIST                   0x1100\r
-#define LABEL_NETWORK_DEVICE_LIST_ID         0x1101\r
-#define LABEL_NETWORK_DEVICE_ID              0x1102\r
-#define LABEL_END                            0xffff\r
-#define LABEL_FORM_ID_OFFSET                 0x0100\r
-\r
-#define LABEL_DRIVER_HEALTH                  0x2000\r
-#define LABEL_DRIVER_HEALTH_END              0x2001\r
-\r
-#define LABEL_DRIVER_HEALTH_REAPIR_ALL       0x3000\r
-#define LABEL_DRIVER_HEALTH_REAPIR_ALL_END   0x3001\r
-\r
-#define LABEL_VBIOS                          0x0040\r
-\r
-#define DEVICE_MANAGER_FORM_ID               0x1000\r
-#define NETWORK_DEVICE_LIST_FORM_ID          0x1001\r
-#define NETWORK_DEVICE_FORM_ID               0x1002\r
-#define DRIVER_HEALTH_FORM_ID                0x1003\r
-#define DEVICE_KEY_OFFSET                    0x4000\r
-#define NETWORK_DEVICE_LIST_KEY_OFFSET       0x2000\r
-#define DEVICE_MANAGER_KEY_VBIOS             0x3000\r
-#define MAX_KEY_SECTION_LEN                  0x1000\r
-\r
-#define DEVICE_MANAGER_KEY_DRIVER_HEALTH     0x1111\r
-#define DRIVER_HEALTH_KEY_OFFSET             0x2000\r
-#define DRIVER_HEALTH_REPAIR_ALL_KEY         0x3000\r
-#define DRIVER_HEALTH_RETURN_KEY             0x4000\r
-\r
-#define QUESTION_NETWORK_DEVICE_ID           0x3FFF\r
-//\r
-// These are the VFR compiler generated data representing our VFR data.\r
-//\r
-extern UINT8  DeviceManagerVfrBin[];\r
-extern UINT8  DriverHealthVfrBin[];\r
-\r
-#define DEVICE_MANAGER_CALLBACK_DATA_SIGNATURE  SIGNATURE_32 ('D', 'M', 'C', 'B')\r
+#define DEVICE_MANAGER_CALLBACK_DATA_SIGNATURE       SIGNATURE_32 ('D', 'M', 'C', 'B')\r
 #define DEVICE_MANAGER_DRIVER_HEALTH_INFO_SIGNATURE  SIGNATURE_32 ('D', 'M', 'D', 'H')\r
 \r
 \r
@@ -346,7 +299,7 @@ PlatformRepairAll (
                             ChildHandle.  This is an optional parameter that may be NULL.\r
   @param FormHiiHandle      The HII handle for an HII form associated with the \r
                             controller specified by ControllerHandle and ChildHandle.\r
-\r
+  @param RebootRequired     Indicate whether a reboot is required to repair the controller.\r
 **/\r
 VOID\r
 ProcessSingleControllerHealth (\r
@@ -355,8 +308,9 @@ ProcessSingleControllerHealth (
   IN  EFI_HANDLE                         ChildHandle,      OPTIONAL\r
   IN  EFI_DRIVER_HEALTH_STATUS           HealthStatus,\r
   IN  EFI_DRIVER_HEALTH_HII_MESSAGE      **MessageList,    OPTIONAL\r
-  IN  EFI_HII_HANDLE                     FormHiiHandle\r
-  );\r
+  IN  EFI_HII_HANDLE                     FormHiiHandle,\r
+  IN OUT BOOLEAN                         *RebootRequired\r
+);\r
 \r
 /**\r
   Repair notification function, simply print the repair progress.\r
index 36ee573930fcd7655d87cdd4ce9080545ec0f0bc..4d7d43b7d14e6d87f5e5b4c51a7d56419414a791 100644 (file)
@@ -2,7 +2,7 @@
 //  \r
 //    Device Manager formset.\r
 //  \r
-//  Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>\r
+//  Copyright (c) 2004 - 2011, 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
@@ -13,7 +13,7 @@
 //  \r
 //**/\r
 \r
-#define FORMSET_GUID  { 0x3ebfa8e6, 0x511d, 0x4b5b, 0xa9, 0x5f, 0xfb, 0x38, 0x26, 0xf, 0x1c, 0x27 }\r
+#include "DeviceManagerVfr.h"\r
 \r
 #define EFI_DISK_DEVICE_CLASS              0x0001\r
 #define EFI_VIDEO_DEVICE_CLASS             0x0002\r
 #define EFI_INPUT_DEVICE_CLASS             0x0008\r
 #define EFI_ON_BOARD_DEVICE_CLASS          0x0010\r
 #define EFI_OTHER_DEVICE_CLASS             0x0020\r
-#define LABEL_VBIOS                        0x0040\r
-#define LABEL_DEVICES_LIST                 0x1100\r
-#define LABEL_NETWORK_DEVICE_LIST_ID       0x1101\r
-#define LABEL_NETWORK_DEVICE_ID            0x1102\r
-#define LABEL_END                          0xffff\r
 \r
 #define DEVICE_MANAGER_CLASS               0x0000\r
 #define FRONT_PAGE_SUBCLASS                0x0003\r
 \r
-#define DEVICE_MANAGER_FORM_ID             0x1000\r
-#define NETWORK_DEVICE_LIST_FORM_ID        0x1001\r
-#define NETWORK_DEVICE_FORM_ID             0x1002\r
-\r
-#define DEVICE_MANAGER_KEY_DRIVER_HEALTH   0x1111\r
-\r
 formset\r
-  guid      = FORMSET_GUID,\r
+  guid      = DEVICE_MANAGER_FORMSET_GUID,\r
   title     = STRING_TOKEN(STR_DEVICE_MANAGER_TITLE),\r
   help      = STRING_TOKEN(STR_EMPTY_STRING),\r
-  classguid = FORMSET_GUID,\r
+  classguid = DEVICE_MANAGER_FORMSET_GUID,\r
   class     = DEVICE_MANAGER_CLASS,\r
   subclass  = FRONT_PAGE_SUBCLASS,\r
 \r
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.h b/IntelFrameworkModulePkg/Universal/BdsDxe/DeviceMngr/DeviceManagerVfr.h
new file mode 100644 (file)
index 0000000..858b13e
--- /dev/null
@@ -0,0 +1,63 @@
+/** @file\r
+  The platform device manager reference implement\r
+\r
+Copyright (c) 2011, 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
+\r
+**/\r
+\r
+#ifndef _DEVICE_MANAGER_VFR_H_\r
+#define _DEVICE_MANAGER_VFR_H_\r
+\r
+#define DEVICE_MANAGER_FORMSET_GUID  \\r
+  { \\r
+  0x3ebfa8e6, 0x511d, 0x4b5b, {0xa9, 0x5f, 0xfb, 0x38, 0x26, 0xf, 0x1c, 0x27} \\r
+  }\r
+\r
+#define DRIVER_HEALTH_FORMSET_GUID  \\r
+  { \\r
+  0xf76e0a70, 0xb5ed, 0x4c38, {0xac, 0x9a, 0xe5, 0xf5, 0x4b, 0xf1, 0x6e, 0x34} \\r
+  }\r
+\r
+#define LABEL_DEVICES_LIST                   0x1100\r
+#define LABEL_NETWORK_DEVICE_LIST_ID         0x1101\r
+#define LABEL_NETWORK_DEVICE_ID              0x1102\r
+#define LABEL_END                            0xffff\r
+#define LABEL_FORM_ID_OFFSET                 0x0100\r
+\r
+#define LABEL_DRIVER_HEALTH                  0x2000\r
+#define LABEL_DRIVER_HEALTH_END              0x2001\r
+\r
+#define LABEL_DRIVER_HEALTH_REAPIR_ALL       0x3000\r
+#define LABEL_DRIVER_HEALTH_REAPIR_ALL_END   0x3001\r
+\r
+#define LABEL_VBIOS                          0x0040\r
+\r
+#define DEVICE_MANAGER_FORM_ID               0x1000\r
+#define NETWORK_DEVICE_LIST_FORM_ID          0x1001\r
+#define NETWORK_DEVICE_FORM_ID               0x1002\r
+#define DRIVER_HEALTH_FORM_ID                0x1003\r
+#define DEVICE_KEY_OFFSET                    0x4000\r
+#define NETWORK_DEVICE_LIST_KEY_OFFSET       0x2000\r
+#define DEVICE_MANAGER_KEY_VBIOS             0x3000\r
+#define MAX_KEY_SECTION_LEN                  0x1000\r
+\r
+#define DEVICE_MANAGER_KEY_DRIVER_HEALTH     0x1111\r
+#define DRIVER_HEALTH_KEY_OFFSET             0x2000\r
+#define DRIVER_HEALTH_REPAIR_ALL_KEY         0x3000\r
+#define DRIVER_HEALTH_RETURN_KEY             0x4000\r
+\r
+#define QUESTION_NETWORK_DEVICE_ID           0x3FFF\r
+//\r
+// These are the VFR compiler generated data representing our VFR data.\r
+//\r
+extern UINT8  DeviceManagerVfrBin[];\r
+extern UINT8  DriverHealthVfrBin[];\r
+\r
+#endif\r
index b024922d4f2dbfac2a4abc43fdb8c214900d9222..cb1a8f887b00e994355014c657038465e07ea865 100644 (file)
@@ -2,7 +2,7 @@
 //  \r
 //    Driver Health formset.\r
 //  \r
-//  Copyright (c) 2004 - 2009, Intel Corporation. All rights reserved.<BR>\r
+//  Copyright (c) 2004 - 2011, 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
 //  \r
 //**/\r
 \r
-#define DRIVER_HEALTH_FORMSET_GUID  { 0xf76e0a70, 0xb5ed, 0x4c38, 0xac, 0x9a, 0xe5, 0xf5, 0x4b, 0xf1, 0x6e, 0x34 }\r
-\r
-#define LABEL_DRIVER_HEALTH                0x2000\r
-#define LABEL_DRIVER_HEALTH_END            0x2001\r
-#define LABEL_DRIVER_HEALTH_REAPIR_ALL     0x3000\r
-#define LABEL_DRIVER_HEALTH_REAPIR_ALL_END 0x3001\r
-\r
-#define DRIVER_HEALTH_FORM_ID              0x1001\r
+#include "DeviceManagerVfr.h"\r
 \r
 formset\r
   guid      = DRIVER_HEALTH_FORMSET_GUID,\r