]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Universal/BdsDxe/BootMaint/UpdatePage.c
Enhance BDS to support Boot/Driver option whose option number >= 0xFF.
[mirror_edk2.git] / IntelFrameworkModulePkg / Universal / BdsDxe / BootMaint / UpdatePage.c
index f83d166bb3bd6aa119ddcf707332df4fe4ce3583..24a444d24f9576e7167798b97165d9784950e9ab 100644 (file)
@@ -254,7 +254,7 @@ UpdateBootDelPage (
   UpdatePageStart (CallbackData);\r
   CreateMenuStringToken (CallbackData, CallbackData->BmmHiiHandle, &BootOptionMenu);\r
 \r
-  ASSERT (BootOptionMenu.MenuNumber <= (sizeof (CallbackData->BmmFakeNvData.BootOptionDel) / sizeof (CallbackData->BmmFakeNvData.BootOptionDel[0])));\r
+  ASSERT (BootOptionMenu.MenuNumber <= (sizeof (CallbackData->BmmFakeNvData.OptionDel) / sizeof (CallbackData->BmmFakeNvData.OptionDel[0])));\r
   for (Index = 0; Index < BootOptionMenu.MenuNumber; Index++) {\r
     NewMenuEntry    = BOpt_GetMenuEntry (&BootOptionMenu, Index);\r
     NewLoadContext  = (BM_LOAD_CONTEXT *) NewMenuEntry->VariableContext;\r
@@ -263,13 +263,13 @@ UpdateBootDelPage (
     }\r
 \r
     NewLoadContext->Deleted = FALSE;\r
-    CallbackData->BmmFakeNvData.BootOptionDel[Index] = 0x00;\r
+    CallbackData->BmmFakeNvData.OptionDel[Index] = FALSE;\r
 \r
     HiiCreateCheckBoxOpCode (\r
       mStartOpCodeHandle,\r
-      (EFI_QUESTION_ID) (BOOT_OPTION_DEL_QUESTION_ID + Index),\r
+      (EFI_QUESTION_ID) (OPTION_DEL_QUESTION_ID + Index),\r
       VARSTORE_ID_BOOT_MAINT,\r
-      (UINT16) (BOOT_OPTION_DEL_VAR_OFFSET + Index),\r
+      (UINT16) (OPTION_DEL_VAR_OFFSET + Index),\r
       NewMenuEntry->DisplayStringToken,\r
       NewMenuEntry->HelpStringToken,\r
       0,\r
@@ -337,19 +337,19 @@ UpdateDrvDelPage (
 \r
   CreateMenuStringToken (CallbackData, CallbackData->BmmHiiHandle, &DriverOptionMenu);\r
   \r
-  ASSERT (DriverOptionMenu.MenuNumber <= (sizeof (CallbackData->BmmFakeNvData.DriverOptionDel) / sizeof (CallbackData->BmmFakeNvData.DriverOptionDel[0])));\r
+  ASSERT (DriverOptionMenu.MenuNumber <= (sizeof (CallbackData->BmmFakeNvData.OptionDel) / sizeof (CallbackData->BmmFakeNvData.OptionDel[0])));\r
   for (Index = 0; Index < DriverOptionMenu.MenuNumber; Index++) {\r
     NewMenuEntry            = BOpt_GetMenuEntry (&DriverOptionMenu, Index);\r
 \r
     NewLoadContext          = (BM_LOAD_CONTEXT *) NewMenuEntry->VariableContext;\r
     NewLoadContext->Deleted = FALSE;\r
-    CallbackData->BmmFakeNvData.DriverOptionDel[Index] = 0x00;\r
+    CallbackData->BmmFakeNvData.OptionDel[Index] = FALSE;\r
 \r
     HiiCreateCheckBoxOpCode (\r
       mStartOpCodeHandle,\r
-      (EFI_QUESTION_ID) (DRIVER_OPTION_DEL_QUESTION_ID + Index),\r
+      (EFI_QUESTION_ID) (OPTION_DEL_QUESTION_ID + Index),\r
       VARSTORE_ID_BOOT_MAINT,\r
-      (UINT16) (DRIVER_OPTION_DEL_VAR_OFFSET + Index),\r
+      (UINT16) (OPTION_DEL_VAR_OFFSET + Index),\r
       NewMenuEntry->DisplayStringToken,\r
       NewMenuEntry->HelpStringToken,\r
       0,\r
@@ -545,7 +545,7 @@ UpdateOrderPage (
 \r
   CreateMenuStringToken (CallbackData, CallbackData->BmmHiiHandle, OptionMenu);\r
 \r
-  ZeroMem (CallbackData->BmmFakeNvData.OptionOrder, 100);\r
+  ZeroMem (CallbackData->BmmFakeNvData.OptionOrder, sizeof (CallbackData->BmmFakeNvData.OptionOrder));\r
 \r
   OptionsOpCodeHandle = HiiAllocateOpCodeHandle ();\r
   ASSERT (OptionsOpCodeHandle != NULL);\r
@@ -557,7 +557,7 @@ UpdateOrderPage (
           (Index <\r
             (\r
               sizeof (CallbackData->BmmFakeNvData.OptionOrder) /\r
-              sizeof (UINT8)\r
+              sizeof (CallbackData->BmmFakeNvData.OptionOrder[0])\r
             )\r
           )\r
         );\r
@@ -568,10 +568,10 @@ UpdateOrderPage (
       OptionsOpCodeHandle,\r
       NewMenuEntry->DisplayStringToken,\r
       0,\r
-      EFI_IFR_NUMERIC_SIZE_1,\r
-      (UINT8) (NewMenuEntry->OptionNumber + 1)\r
+      EFI_IFR_TYPE_NUM_SIZE_32,\r
+      (UINT32) (NewMenuEntry->OptionNumber + 1)\r
       );\r
-    CallbackData->BmmFakeNvData.OptionOrder[Index] = (UINT8) (NewMenuEntry->OptionNumber + 1);\r
+    CallbackData->BmmFakeNvData.OptionOrder[Index] = (UINT32) (NewMenuEntry->OptionNumber + 1);\r
   }\r
 \r
   if (OptionMenu->MenuNumber > 0) {\r
@@ -584,7 +584,7 @@ UpdateOrderPage (
       STRING_TOKEN (STR_CHANGE_ORDER),             // Question help text                        \r
       0,                                           // 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
+      EFI_IFR_TYPE_NUM_SIZE_32,                    // Data type of Question value               \r
       100,                                         // Maximum container                         \r
       OptionsOpCodeHandle,                         // Option Opcode list                        \r
       NULL                                         // Default Opcode is NULL                    \r
@@ -598,7 +598,7 @@ UpdateOrderPage (
   CopyMem (\r
     CallbackData->BmmOldFakeNVData.OptionOrder,\r
     CallbackData->BmmFakeNvData.OptionOrder,\r
-    100\r
+    sizeof (CallbackData->BmmOldFakeNVData.OptionOrder)\r
     );\r
 }\r
 \r
@@ -641,7 +641,7 @@ UpdateBootNextPage (
           OptionsOpCodeHandle,\r
           NewMenuEntry->DisplayStringToken,\r
           EFI_IFR_OPTION_DEFAULT,\r
-          EFI_IFR_NUMERIC_SIZE_2,\r
+          EFI_IFR_TYPE_NUM_SIZE_16,\r
           Index\r
           );\r
         CallbackData->BmmFakeNvData.BootNext = Index;\r
@@ -650,7 +650,7 @@ UpdateBootNextPage (
           OptionsOpCodeHandle,\r
           NewMenuEntry->DisplayStringToken,\r
           0,\r
-          EFI_IFR_NUMERIC_SIZE_2,\r
+          EFI_IFR_TYPE_NUM_SIZE_16,\r
           Index\r
           );\r
       }\r
@@ -661,7 +661,7 @@ UpdateBootNextPage (
         OptionsOpCodeHandle,\r
         STRING_TOKEN (STR_NONE),\r
         EFI_IFR_OPTION_DEFAULT,\r
-        EFI_IFR_NUMERIC_SIZE_2,\r
+        EFI_IFR_TYPE_NUM_SIZE_16,\r
         Index\r
         );\r
     } else {\r
@@ -669,7 +669,7 @@ UpdateBootNextPage (
         OptionsOpCodeHandle,\r
         STRING_TOKEN (STR_NONE),\r
         0,\r
-        EFI_IFR_NUMERIC_SIZE_2,\r
+        EFI_IFR_TYPE_NUM_SIZE_16,\r
         Index\r
         );\r
     }      \r
@@ -715,7 +715,7 @@ UpdateTimeOutPage (
 \r
   DefaultOpCodeHandle = HiiAllocateOpCodeHandle ();\r
   ASSERT (DefaultOpCodeHandle != NULL);\r
-  HiiCreateDefaultOpCode (DefaultOpCodeHandle, EFI_HII_DEFAULT_CLASS_STANDARD, EFI_IFR_NUMERIC_SIZE_2, BootTimeOut);\r
+  HiiCreateDefaultOpCode (DefaultOpCodeHandle, EFI_HII_DEFAULT_CLASS_STANDARD, EFI_IFR_TYPE_NUM_SIZE_16, BootTimeOut);\r
 \r
   HiiCreateNumericOpCode (\r
     mStartOpCodeHandle,\r
@@ -823,7 +823,7 @@ UpdateConModePage (
         OptionsOpCodeHandle,\r
         ModeToken[Index],\r
         EFI_IFR_OPTION_DEFAULT,\r
-        EFI_IFR_NUMERIC_SIZE_2,\r
+        EFI_IFR_TYPE_NUM_SIZE_16,\r
         (UINT16) Mode\r
         );\r
     } else {\r
@@ -831,7 +831,7 @@ UpdateConModePage (
         OptionsOpCodeHandle,\r
         ModeToken[Index],\r
         0,\r
-        EFI_IFR_NUMERIC_SIZE_2,\r
+        EFI_IFR_TYPE_NUM_SIZE_16,\r
         (UINT16) Mode\r
         );\r
     }\r
@@ -905,7 +905,7 @@ UpdateTerminalPage (
       OptionsOpCodeHandle,\r
       BaudRateList[Index].StringToken,\r
       CheckFlags,\r
-      EFI_IFR_NUMERIC_SIZE_1,\r
+      EFI_IFR_TYPE_NUM_SIZE_8,\r
       Index\r
       );\r
   }\r
@@ -940,7 +940,7 @@ UpdateTerminalPage (
       OptionsOpCodeHandle,\r
       DataBitsList[Index].StringToken,\r
       CheckFlags,\r
-      EFI_IFR_NUMERIC_SIZE_1,\r
+      EFI_IFR_TYPE_NUM_SIZE_8,\r
       Index\r
       );\r
   }\r
@@ -974,7 +974,7 @@ UpdateTerminalPage (
       OptionsOpCodeHandle,\r
       ParityList[Index].StringToken,\r
       CheckFlags,\r
-      EFI_IFR_NUMERIC_SIZE_1,\r
+      EFI_IFR_TYPE_NUM_SIZE_8,\r
       Index\r
       );\r
   }\r
@@ -1008,7 +1008,7 @@ UpdateTerminalPage (
       OptionsOpCodeHandle,\r
       StopBitsList[Index].StringToken,\r
       CheckFlags,\r
-      EFI_IFR_NUMERIC_SIZE_1,\r
+      EFI_IFR_TYPE_NUM_SIZE_8,\r
       Index\r
       );\r
   }\r
@@ -1041,7 +1041,7 @@ UpdateTerminalPage (
       OptionsOpCodeHandle,\r
       (EFI_STRING_ID) TerminalType[Index],\r
       CheckFlags,\r
-      EFI_IFR_NUMERIC_SIZE_1,\r
+      EFI_IFR_TYPE_NUM_SIZE_8,\r
       Index\r
       );\r
   }\r
@@ -1317,7 +1317,7 @@ UpdateSetLegacyDeviceOrderPage (
       OptionsOpCodeHandle,\r
       NewMenuEntry->DisplayStringToken,\r
       (UINT8) ((Index == 0) ? EFI_IFR_OPTION_DEFAULT : 0),\r
-      EFI_IFR_NUMERIC_SIZE_1,\r
+      EFI_IFR_TYPE_NUM_SIZE_8,\r
       (UINT8) ((BM_LEGACY_DEVICE_CONTEXT *) NewMenuEntry->VariableContext)->Index\r
       );\r
   }\r
@@ -1329,7 +1329,7 @@ UpdateSetLegacyDeviceOrderPage (
     OptionsOpCodeHandle,\r
     STRING_TOKEN (STR_DISABLE_LEGACY_DEVICE),\r
     0,\r
-    EFI_IFR_NUMERIC_SIZE_1,\r
+    EFI_IFR_TYPE_NUM_SIZE_8,\r
     0xFF\r
     );\r
 \r