]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Library/BootMaintenanceManagerLib/BootMaintenanceManager.vfr
MdeModulePkg:Create Boot Maintenance Manager Library
[mirror_edk2.git] / MdeModulePkg / Library / BootMaintenanceManagerLib / BootMaintenanceManager.vfr
diff --git a/MdeModulePkg/Library/BootMaintenanceManagerLib/BootMaintenanceManager.vfr b/MdeModulePkg/Library/BootMaintenanceManagerLib/BootMaintenanceManager.vfr
new file mode 100644 (file)
index 0000000..afce340
--- /dev/null
@@ -0,0 +1,440 @@
+///** @file\r
+//  Boot Maintenance Utility Formset\r
+//\r
+//  Copyright (c) 2004 - 2015, 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
+#include "FormGuid.h"\r
+\r
+formset\r
+  guid = BOOT_MAINT_FORMSET_GUID,\r
+  title = STRING_TOKEN(STR_FORM_MAIN_TITLE),\r
+  help = STRING_TOKEN(STR_BOOT_MAINT_MANAGER_HELP),\r
+  classguid = gEfiIfrFrontPageGuid,\r
+\r
+  varstore BMM_FAKE_NV_DATA,\r
+    varid = VARSTORE_ID_BOOT_MAINT,\r
+    name = BmmData,\r
+    guid = BOOT_MAINT_FORMSET_GUID;\r
+\r
+  form formid = FORM_MAIN_ID,\r
+       title = STRING_TOKEN(STR_FORM_MAIN_TITLE);\r
+\r
+    goto FORM_BOOT_SETUP_ID,\r
+         prompt = STRING_TOKEN(STR_FORM_BOOT_SETUP_TITLE),\r
+         help = STRING_TOKEN(STR_FORM_BOOT_SETUP_HELP),\r
+         flags = INTERACTIVE,\r
+         key = FORM_BOOT_SETUP_ID;\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+    goto FORM_DRIVER_SETUP_ID,\r
+         prompt = STRING_TOKEN(STR_FORM_DRIVER_SETUP_TITLE),\r
+         help = STRING_TOKEN(STR_FORM_DRIVER_SETUP_HELP),\r
+         flags = INTERACTIVE,\r
+         key = FORM_DRIVER_SETUP_ID;\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+    goto FORM_CON_MAIN_ID,\r
+         prompt = STRING_TOKEN(STR_FORM_CON_MAIN_TITLE),\r
+         help = STRING_TOKEN(STR_FORM_CON_MAIN_HELP),\r
+         flags = INTERACTIVE,\r
+         key = FORM_CON_MAIN_ID;\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+    goto FORM_MAIN_ID,\r
+         prompt = STRING_TOKEN(STR_BOOT_FROM_FILE),\r
+         help = STRING_TOKEN(STR_BOOT_FROM_FILE_HELP),\r
+         flags = INTERACTIVE,\r
+         key = KEY_VALUE_BOOT_FROM_FILE;\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+//    label FORM_MAIN_ID;\r
+\r
+    goto FORM_BOOT_NEXT_ID,\r
+         prompt = STRING_TOKEN(STR_FORM_BOOT_NEXT_TITLE),\r
+         help = STRING_TOKEN(STR_FORM_BOOT_NEXT_HELP),\r
+         flags = INTERACTIVE,\r
+         key = FORM_BOOT_NEXT_ID;\r
+\r
+    goto FORM_TIME_OUT_ID,\r
+         prompt = STRING_TOKEN(STR_FORM_TIME_OUT_TITLE),\r
+         help = STRING_TOKEN(STR_FORM_TIME_OUT_HELP),\r
+         flags = INTERACTIVE,\r
+         key = FORM_TIME_OUT_ID;\r
+\r
+    subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+    text\r
+         help   = STRING_TOKEN(STR_RESET),\r
+         text   = STRING_TOKEN(STR_RESET),\r
+         flags  = INTERACTIVE,\r
+         key    = FORM_RESET;\r
+         \r
+    label LABEL_BMM_PLATFORM_INFORMATION;\r
+    //\r
+    // This is where we will dynamically add a Action type op-code to show \r
+    // the platform information.\r
+    //\r
+    \r
+    //\r
+    // This is where we will dynamically add a Action type op-code to show \r
+    // the advanced menu.\r
+    //\r
+    \r
+    //\r
+    // This is where we will dynamically add a Action type op-code to show \r
+    // the intel test menu.\r
+    //\r
+    label LABEL_END; \r
+  endform;\r
+\r
+  form formid = FORM_BOOT_SETUP_ID,\r
+       title = STRING_TOKEN(STR_FORM_BOOT_SETUP_TITLE);\r
+\r
+       goto FORM_MAIN_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),\r
+            help = STRING_TOKEN(STR_FORM_GOTO_MAIN);\r
+            //flags = INTERACTIVE,\r
+            //key = FORM_MAIN_ID;\r
+\r
+       goto FORM_BOOT_SETUP_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_BOOT_ADD_TITLE),\r
+            help = STRING_TOKEN(STR_FORM_BOOT_ADD_HELP),\r
+            flags = INTERACTIVE,\r
+            key = FORM_BOOT_ADD_ID;\r
+\r
+       goto FORM_BOOT_DEL_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_BOOT_DEL_TITLE),\r
+            help = STRING_TOKEN(STR_FORM_BOOT_IMMEDIATE_HELP),\r
+            flags = INTERACTIVE,\r
+            key = FORM_BOOT_DEL_ID;\r
+\r
+       goto FORM_BOOT_CHG_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_BOOT_CHG_TITLE),\r
+            help = STRING_TOKEN(STR_FORM_BOOT_IMMEDIATE_HELP),\r
+            flags = INTERACTIVE,\r
+            key = FORM_BOOT_CHG_ID;\r
+  endform;\r
+\r
+  form formid = FORM_DRIVER_SETUP_ID,\r
+       title = STRING_TOKEN(STR_FORM_DRIVER_SETUP_TITLE);\r
+\r
+       goto FORM_MAIN_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),\r
+            help = STRING_TOKEN(STR_FORM_GOTO_MAIN);\r
+            //help = STRING_TOKEN(STR_FORM_GOTO_MAIN),\r
+            //flags = INTERACTIVE,\r
+            //key = FORM_MAIN_ID;\r
+\r
+       goto FORM_DRV_ADD_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_DRV_ADD_TITLE),\r
+            help = STRING_TOKEN(STR_FORM_DRV_ADD_HELP),\r
+            flags = INTERACTIVE,\r
+            key = FORM_DRV_ADD_ID;\r
+\r
+       goto FORM_DRV_DEL_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_DRV_DEL_TITLE),\r
+            help = STRING_TOKEN(STR_FORM_NEXT_BOOT_HELP),\r
+            flags = INTERACTIVE,\r
+            key = FORM_DRV_DEL_ID;\r
+\r
+       goto FORM_DRV_CHG_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_DRV_CHG_TITLE),\r
+            help = STRING_TOKEN(STR_FORM_NEXT_BOOT_HELP),\r
+            flags = INTERACTIVE,\r
+            key = FORM_DRV_CHG_ID;\r
+  endform;\r
+\r
+   form formid = FORM_BOOT_ADD_ID,\r
+       title = STRING_TOKEN(STR_FORM_BOOT_ADD_DESC_TITLE);\r
+\r
+       label FORM_BOOT_ADD_ID;\r
+       label LABEL_END;\r
+\r
+       subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+       string    varid    = BmmData.BootDescriptionData,\r
+                 questionid = KEY_VALUE_BOOT_DESCRIPTION,\r
+                 prompt   = STRING_TOKEN(STR_LOAD_OPTION_DESC),\r
+                 help     = STRING_TOKEN(STR_NULL_STRING),\r
+                 flags    = INTERACTIVE,\r
+                 minsize  = 6,\r
+                 maxsize  = 75,\r
+       endstring;\r
+\r
+       string    varid    = BmmData.BootOptionalData,\r
+                 questionid = KEY_VALUE_BOOT_OPTION,\r
+                 prompt   = STRING_TOKEN(STR_OPTIONAL_DATA),\r
+                 help     = STRING_TOKEN(STR_NULL_STRING),\r
+                 flags    = INTERACTIVE,\r
+                 minsize  = 0,\r
+                 maxsize  = 120,\r
+       endstring;\r
+\r
+       subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+       text\r
+         help   = STRING_TOKEN(STR_SAVE_AND_EXIT),\r
+         text   = STRING_TOKEN(STR_SAVE_AND_EXIT),\r
+         flags  = INTERACTIVE,\r
+         key    = KEY_VALUE_SAVE_AND_EXIT_BOOT;\r
+\r
+       text\r
+         help   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),\r
+         text   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),\r
+         flags  = INTERACTIVE,\r
+         key    = KEY_VALUE_NO_SAVE_AND_EXIT_BOOT;\r
+         \r
+  endform;\r
+\r
+  form formid = FORM_BOOT_DEL_ID,\r
+       title = STRING_TOKEN(STR_FORM_BOOT_DEL_TITLE);\r
+\r
+       label FORM_BOOT_DEL_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_BOOT_CHG_ID,\r
+       title = STRING_TOKEN(STR_FORM_BOOT_CHG_TITLE);\r
+\r
+       label FORM_BOOT_CHG_ID;\r
+       label LABEL_END;\r
+\r
+  endform;\r
+\r
+  form formid = FORM_BOOT_NEXT_ID,\r
+       title = STRING_TOKEN(STR_FORM_BOOT_NEXT_TITLE);\r
+\r
+       label FORM_BOOT_NEXT_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_TIME_OUT_ID,\r
+       title = STRING_TOKEN(STR_FORM_TIME_OUT_TITLE);\r
+\r
+       label FORM_TIME_OUT_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_MEMORY_CHECK_ID,\r
+       title = STRING_TOKEN(STR_FORM_MEMORY_CHECK_TITLE);\r
+\r
+       label FORM_MEMORY_CHECK_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_UEFI_OPTIMIZED_BOOT_ID,\r
+       title = STRING_TOKEN(STR_FORM_UEFI_OPTIMIZED_BOOT_TITLE);\r
+\r
+       label FORM_UEFI_OPTIMIZED_BOOT_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_DRV_ADD_ID,\r
+       title = STRING_TOKEN(STR_FORM_DRV_ADD_TITLE);\r
+\r
+       goto FORM_MAIN_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),\r
+            help = STRING_TOKEN(STR_FORM_GOTO_MAIN);\r
+            //flags = INTERACTIVE,\r
+            //key = FORM_MAIN_ID;\r
+\r
+       goto FORM_DRIVER_SETUP_ID,\r
+            prompt = STRING_TOKEN(STR_FORM_DRV_ADD_FILE_TITLE),\r
+            help = STRING_TOKEN(STR_FORM_DRV_ADD_FILE_TITLE),\r
+            flags = INTERACTIVE,\r
+            key = FORM_DRV_ADD_FILE_ID;\r
+\r
+  endform;\r
+\r
+  form formid = FORM_DRV_ADD_FILE_ID,\r
+       title = STRING_TOKEN(STR_FORM_DRV_ADD_DESC_TITLE);\r
+       \r
+       label FORM_DRV_ADD_FILE_ID;\r
+       label LABEL_END;\r
+\r
+       subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+       string    varid    = BmmData.DriverDescriptionData,\r
+                 questionid = KEY_VALUE_DRIVER_DESCRIPTION,\r
+                 prompt   = STRING_TOKEN(STR_LOAD_OPTION_DESC),\r
+                 help     = STRING_TOKEN(STR_NULL_STRING),\r
+                 flags    = INTERACTIVE,\r
+                 minsize  = 6,\r
+                 maxsize  = 75,\r
+       endstring;\r
+\r
+       string    varid    = BmmData.DriverOptionalData,\r
+                 questionid = KEY_VALUE_DRIVER_OPTION,\r
+                 prompt   = STRING_TOKEN(STR_OPTIONAL_DATA),\r
+                 help     = STRING_TOKEN(STR_NULL_STRING),\r
+                 flags    = INTERACTIVE,\r
+                 minsize  = 0,\r
+                 maxsize  = 120,\r
+       endstring;\r
+\r
+       checkbox varid    = BmmData.ForceReconnect,\r
+               prompt   = STRING_TOKEN(STR_LOAD_OPTION_FORCE_RECON),\r
+               help     = STRING_TOKEN(STR_LOAD_OPTION_FORCE_RECON),\r
+               flags    = CHECKBOX_DEFAULT,\r
+               key      = 0,\r
+       endcheckbox;\r
+\r
+       subtitle text = STRING_TOKEN(STR_NULL_STRING);\r
+\r
+       text\r
+         help   = STRING_TOKEN(STR_SAVE_AND_EXIT),\r
+         text   = STRING_TOKEN(STR_SAVE_AND_EXIT),\r
+         flags  = INTERACTIVE,\r
+         key    = KEY_VALUE_SAVE_AND_EXIT_DRIVER;  //BUGBUB: allow duplicate key in one formset???\r
+\r
+       text\r
+         help   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),\r
+         text   = STRING_TOKEN(STR_NO_SAVE_AND_EXIT),\r
+         flags  = INTERACTIVE,\r
+         key    = KEY_VALUE_NO_SAVE_AND_EXIT_DRIVER;\r
+  endform;\r
+\r
+  form formid = FORM_DRV_DEL_ID,\r
+       title = STRING_TOKEN(STR_FORM_DRV_DEL_TITLE);\r
+\r
+       label FORM_DRV_DEL_ID;\r
+       label LABEL_END;\r
+\r
+  endform;\r
+\r
+  form formid = FORM_DRV_CHG_ID,\r
+       title = STRING_TOKEN(STR_FORM_DRV_CHG_TITLE);\r
+\r
+       label FORM_DRV_CHG_ID;\r
+       label LABEL_END;\r
+\r
+  endform;\r
+\r
+  form formid = FORM_CON_MAIN_ID,\r
+       title = STRING_TOKEN(STR_FORM_CON_MAIN_TITLE);\r
+\r
+       goto FORM_MAIN_ID,\r
+       prompt = STRING_TOKEN(STR_FORM_GOTO_MAIN),\r
+       help = STRING_TOKEN(STR_FORM_GOTO_MAIN);\r
+       //flags = INTERACTIVE,\r
+       //key = FORM_MAIN_ID;\r
+\r
+       goto FORM_CON_IN_ID,\r
+       prompt = STRING_TOKEN(STR_FORM_CON_IN_TITLE),\r
+       help = STRING_TOKEN(STR_FORM_CON_IN_HELP),\r
+       flags = INTERACTIVE,\r
+       key = FORM_CON_IN_ID;\r
+\r
+       goto FORM_CON_OUT_ID,\r
+       prompt = STRING_TOKEN(STR_FORM_CON_OUT_TITLE),\r
+       help = STRING_TOKEN(STR_FORM_CON_OUT_HELP),\r
+       flags = INTERACTIVE,\r
+       key = FORM_CON_OUT_ID;\r
+\r
+       goto FORM_CON_ERR_ID,\r
+       prompt = STRING_TOKEN(STR_FORM_STD_ERR_TITLE),\r
+       help = STRING_TOKEN(STR_FORM_STD_ERR_HELP),\r
+       flags = INTERACTIVE,\r
+       key = FORM_CON_ERR_ID;\r
+\r
+       goto FORM_CON_MODE_ID,\r
+       prompt = STRING_TOKEN(STR_FORM_MODE_TITLE),\r
+       help = STRING_TOKEN(STR_FORM_MODE_HELP),\r
+       flags = INTERACTIVE,\r
+       key = FORM_CON_MODE_ID;\r
+\r
+       goto FORM_CON_COM_ID,\r
+       prompt = STRING_TOKEN(STR_FORM_COM_TITLE),\r
+       help = STRING_TOKEN(STR_FORM_COM_HELP),\r
+       flags = INTERACTIVE,\r
+       key = FORM_CON_COM_ID;\r
+  endform;\r
+\r
+  form formid = FORM_CON_MODE_ID,\r
+       title = STRING_TOKEN(STR_FORM_MODE_TITLE);\r
+\r
+       label FORM_CON_MODE_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_CON_COM_ID,\r
+       title = STRING_TOKEN(STR_FORM_COM_TITLE);\r
+\r
+       label FORM_CON_COM_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_CON_COM_SETUP_ID,\r
+       title = STRING_TOKEN(STR_CON_COM_SETUP);\r
+\r
+       label FORM_CON_COM_SETUP_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_FILE_SEEK_ID,\r
+       title = STRING_TOKEN(STR_FORM_BOOT_ADD_TITLE);\r
+\r
+       label FORM_FILE_SEEK_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_FILE_NEW_SEEK_ID,\r
+       title = STRING_TOKEN(STR_FORM_BOOT_ADD_TITLE);\r
+\r
+       label FORM_FILE_NEW_SEEK_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_DRV_ADD_HANDLE_ID,\r
+       title = STRING_TOKEN(STR_FORM_DRV_ADD_HANDLE_TITLE);\r
+\r
+       label FORM_DRV_ADD_HANDLE_ID;\r
+       label LABEL_END;\r
+  endform;\r
+\r
+  form formid = FORM_DRV_ADD_HANDLE_DESC_ID,\r
+       title = STRING_TOKEN(STR_FORM_DRV_ADD_DESC_TITLE);\r
+\r
+       label FORM_DRV_ADD_HANDLE_DESC_ID;\r
+       label LABEL_END;\r
+\r
+  endform;\r
+\r
+  form formid = FORM_CON_IN_ID,\r
+       title = STRING_TOKEN(STR_FORM_CON_IN_TITLE);\r
+\r
+       label FORM_CON_IN_ID;\r
+       label LABEL_END;\r
+\r
+  endform;\r
+\r
+  form formid = FORM_CON_OUT_ID,\r
+       title = STRING_TOKEN(STR_FORM_CON_OUT_TITLE);\r
+\r
+       label FORM_CON_OUT_ID;\r
+       label LABEL_END;\r
+\r
+  endform;\r
+\r
+  form formid = FORM_CON_ERR_ID,\r
+       title = STRING_TOKEN(STR_FORM_STD_ERR_TITLE);\r
+\r
+       label FORM_CON_ERR_ID;\r
+       label LABEL_END;\r
+\r
+  endform;\r
+\r
+endformset;\r