]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/SetupBrowserDxe/Setup.h
Correct comments
[mirror_edk2.git] / MdeModulePkg / Universal / SetupBrowserDxe / Setup.h
index e41f953ac9c1d0af3f4583b1936e0b0a46355fe0..ad63a5d95897fe436c145b985a6646ab9a8cb5b5 100644 (file)
@@ -17,10 +17,8 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #define _SETUP_H_\r
 \r
 \r
-#include <Uefi.h>\r
+#include <PiDxe.h>\r
 \r
-#include <Protocol/Print.h>\r
-#include <Protocol/Print2.h>\r
 #include <Protocol/SimpleTextOut.h>\r
 #include <Protocol/SimpleTextIn.h>\r
 #include <Protocol/FormBrowser2.h>\r
@@ -31,9 +29,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Protocol/HiiDatabase.h>\r
 #include <Protocol/HiiString.h>\r
 \r
-#include <MdeModuleHii.h>\r
+#include <Guid/MdeModuleHii.h>\r
+#include <Guid/HiiPlatformSetupFormset.h>\r
 \r
-#include <Library/GraphicsLib.h>\r
 #include <Library/PrintLib.h>\r
 #include <Library/DebugLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
@@ -42,11 +40,9 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #include <Library/UefiBootServicesTableLib.h>\r
 #include <Library/BaseLib.h>\r
 #include <Library/MemoryAllocationLib.h>\r
-#include <Library/IfrSupportLib.h>\r
-#include <Library/ExtendedIfrSupportLib.h>\r
 #include <Library/HiiLib.h>\r
-#include <Library/ExtendedHiiLib.h>\r
 #include <Library/PcdLib.h>\r
+#include <Library/DevicePathLib.h>\r
 \r
 #include "Colors.h"\r
 \r
@@ -163,7 +159,7 @@ typedef struct {
          (((EFI_SPECIFICATION_VERSION) & 0xf) << 4) | \\r
          ((EFI_SPECIFICATION_ERRATA_VERSION) & 0xf))\r
 \r
-#define SETUP_DRIVER_SIGNATURE EFI_SIGNATURE_32 ('F', 'B', 'D', 'V')\r
+#define SETUP_DRIVER_SIGNATURE SIGNATURE_32 ('F', 'B', 'D', 'V')\r
 typedef struct {\r
   UINT32                             Signature;\r
 \r
@@ -173,7 +169,6 @@ typedef struct {
   // Produced protocol\r
   //\r
   EFI_FORM_BROWSER2_PROTOCOL         FormBrowser2;\r
-  EFI_PRINT2_PROTOCOL                Print;\r
 \r
 } SETUP_DRIVER_PRIVATE_DATA;\r
 \r
@@ -199,12 +194,15 @@ typedef struct {
 #define FORM_INCONSISTENT_VALIDATION         0\r
 #define FORM_NO_SUBMIT_VALIDATION            1\r
 \r
+#define FORMSET_CLASS_PLATFORM_SETUP         0\r
+#define FORMSET_CLASS_FRONT_PAGE             1\r
+\r
 typedef struct {\r
   UINT8               Type;\r
   EFI_IFR_TYPE_VALUE  Value;\r
 } EFI_HII_VALUE;\r
 \r
-#define NAME_VALUE_NODE_SIGNATURE  EFI_SIGNATURE_32 ('N', 'V', 'S', 'T')\r
+#define NAME_VALUE_NODE_SIGNATURE  SIGNATURE_32 ('N', 'V', 'S', 'T')\r
 \r
 typedef struct {\r
   UINTN            Signature;\r
@@ -216,7 +214,7 @@ typedef struct {
 \r
 #define NAME_VALUE_NODE_FROM_LINK(a)  CR (a, NAME_VALUE_NODE, Link, NAME_VALUE_NODE_SIGNATURE)\r
 \r
-#define FORMSET_STORAGE_SIGNATURE  EFI_SIGNATURE_32 ('F', 'S', 'T', 'G')\r
+#define FORMSET_STORAGE_SIGNATURE  SIGNATURE_32 ('F', 'S', 'T', 'G')\r
 \r
 typedef struct {\r
   UINTN            Signature;\r
@@ -244,7 +242,7 @@ typedef struct {
 \r
 #define FORMSET_STORAGE_FROM_LINK(a)  CR (a, FORMSET_STORAGE, Link, FORMSET_STORAGE_SIGNATURE)\r
 \r
-#define EXPRESSION_OPCODE_SIGNATURE  EFI_SIGNATURE_32 ('E', 'X', 'O', 'P')\r
+#define EXPRESSION_OPCODE_SIGNATURE  SIGNATURE_32 ('E', 'X', 'O', 'P')\r
 \r
 typedef struct {\r
   UINTN             Signature;\r
@@ -270,7 +268,7 @@ typedef struct {
 \r
 #define EXPRESSION_OPCODE_FROM_LINK(a)  CR (a, EXPRESSION_OPCODE, Link, EXPRESSION_OPCODE_SIGNATURE)\r
 \r
-#define FORM_EXPRESSION_SIGNATURE  EFI_SIGNATURE_32 ('F', 'E', 'X', 'P')\r
+#define FORM_EXPRESSION_SIGNATURE  SIGNATURE_32 ('F', 'E', 'X', 'P')\r
 \r
 typedef struct {\r
   UINTN             Signature;\r
@@ -288,7 +286,7 @@ typedef struct {
 \r
 #define FORM_EXPRESSION_FROM_LINK(a)  CR (a, FORM_EXPRESSION, Link, FORM_EXPRESSION_SIGNATURE)\r
 \r
-#define QUESTION_DEFAULT_SIGNATURE  EFI_SIGNATURE_32 ('Q', 'D', 'F', 'T')\r
+#define QUESTION_DEFAULT_SIGNATURE  SIGNATURE_32 ('Q', 'D', 'F', 'T')\r
 \r
 typedef struct {\r
   UINTN               Signature;\r
@@ -302,7 +300,7 @@ typedef struct {
 \r
 #define QUESTION_DEFAULT_FROM_LINK(a)  CR (a, QUESTION_DEFAULT, Link, QUESTION_DEFAULT_SIGNATURE)\r
 \r
-#define QUESTION_OPTION_SIGNATURE  EFI_SIGNATURE_32 ('Q', 'O', 'P', 'T')\r
+#define QUESTION_OPTION_SIGNATURE  SIGNATURE_32 ('Q', 'O', 'P', 'T')\r
 \r
 typedef struct {\r
   UINTN               Signature;\r
@@ -318,7 +316,7 @@ typedef struct {
 \r
 #define QUESTION_OPTION_FROM_LINK(a)  CR (a, QUESTION_OPTION, Link, QUESTION_OPTION_SIGNATURE)\r
 \r
-#define FORM_BROWSER_STATEMENT_SIGNATURE  EFI_SIGNATURE_32 ('F', 'S', 'T', 'A')\r
+#define FORM_BROWSER_STATEMENT_SIGNATURE  SIGNATURE_32 ('F', 'S', 'T', 'A')\r
 typedef struct {\r
   UINTN                 Signature;\r
   LIST_ENTRY            Link;\r
@@ -385,12 +383,13 @@ typedef struct {
   LIST_ENTRY            NoSubmitListHead;    // nested nosubmit expression list (FORM_EXPRESSION)\r
   FORM_EXPRESSION       *GrayOutExpression;  // nesting inside of GrayOutIf\r
   FORM_EXPRESSION       *SuppressExpression; // nesting inside of SuppressIf\r
+  FORM_EXPRESSION       *DisableExpression;  // nesting inside of DisableIf\r
 \r
 } FORM_BROWSER_STATEMENT;\r
 \r
 #define FORM_BROWSER_STATEMENT_FROM_LINK(a)  CR (a, FORM_BROWSER_STATEMENT, Link, FORM_BROWSER_STATEMENT_SIGNATURE)\r
 \r
-#define FORM_BROWSER_FORM_SIGNATURE  EFI_SIGNATURE_32 ('F', 'F', 'R', 'M')\r
+#define FORM_BROWSER_FORM_SIGNATURE  SIGNATURE_32 ('F', 'F', 'R', 'M')\r
 \r
 typedef struct {\r
   UINTN             Signature;\r
@@ -407,7 +406,7 @@ typedef struct {
 \r
 #define FORM_BROWSER_FORM_FROM_LINK(a)  CR (a, FORM_BROWSER_FORM, Link, FORM_BROWSER_FORM_SIGNATURE)\r
 \r
-#define FORMSET_DEFAULTSTORE_SIGNATURE  EFI_SIGNATURE_32 ('F', 'D', 'F', 'S')\r
+#define FORMSET_DEFAULTSTORE_SIGNATURE  SIGNATURE_32 ('F', 'D', 'F', 'S')\r
 \r
 typedef struct {\r
   UINTN            Signature;\r
@@ -431,8 +430,10 @@ typedef struct {
   EFI_GUID                        Guid;\r
   EFI_STRING_ID                   FormSetTitle;\r
   EFI_STRING_ID                   Help;\r
-  UINT16                          Class;\r
-  UINT16                          SubClass;\r
+  UINT8                           NumberOfClassGuid;\r
+  EFI_GUID                        ClassGuid[3];         // Up to three ClassGuid\r
+  UINT16                          Class;                // Tiano extended Class code\r
+  UINT16                          SubClass;             // Tiano extended Subclass code\r
   EFI_IMAGE_ID                    ImageId;\r
 \r
   FORM_BROWSER_STATEMENT          *StatementBuffer;     // Buffer for all Statements and Questions\r
@@ -448,8 +449,8 @@ extern EFI_HII_DATABASE_PROTOCOL         *mHiiDatabase;
 extern EFI_HII_STRING_PROTOCOL           *mHiiString;\r
 extern EFI_HII_CONFIG_ROUTING_PROTOCOL   *mHiiConfigRouting;\r
 \r
-extern BANNER_DATA           *BannerData;\r
-extern EFI_HII_HANDLE        FrontPageHandle;\r
+extern BANNER_DATA           *gBannerData;\r
+extern EFI_HII_HANDLE        gFrontPageHandle;\r
 extern UINTN                 gClassOfVfr;\r
 extern UINTN                 gFunctionKeySetting;\r
 extern BOOLEAN               gResetRequired;\r
@@ -469,6 +470,7 @@ extern CHAR16            *gFunctionNineString;
 extern CHAR16            *gFunctionTenString;\r
 extern CHAR16            *gEnterString;\r
 extern CHAR16            *gEnterCommitString;\r
+extern CHAR16            *gEnterEscapeString;\r
 extern CHAR16            *gEscapeString;\r
 extern CHAR16            *gSaveFailed;\r
 extern CHAR16            *gMoveHighlight;\r
@@ -492,6 +494,7 @@ extern CHAR16            *gPlusString;
 extern CHAR16            *gMinusString;\r
 extern CHAR16            *gAdjustNumber;\r
 extern CHAR16            *gSaveChanges;\r
+extern CHAR16            *gOptionMismatch;\r
 \r
 extern CHAR16            gPromptBlockWidth;\r
 extern CHAR16            gOptionBlockWidth;\r
@@ -511,8 +514,7 @@ extern EFI_GUID          gTianoHiiIfrGuid;
 VOID\r
 InitializeBrowserStrings (\r
   VOID\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Prints a unicode string to the default console,\r
@@ -526,8 +528,7 @@ InitializeBrowserStrings (
 UINTN\r
 PrintString (\r
   IN CHAR16       *String\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Prints a chracter to the default console,\r
@@ -541,8 +542,7 @@ PrintString (
 UINTN\r
 PrintChar (\r
   CHAR16       Character\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Prints a formatted unicode string to the default console, at\r
@@ -562,8 +562,7 @@ PrintAt (
   IN UINTN     Row,\r
   IN CHAR16    *Fmt,\r
   ...\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Prints a unicode string to the default console, at\r
@@ -581,8 +580,7 @@ PrintStringAt (
   IN UINTN     Column,\r
   IN UINTN     Row,\r
   IN CHAR16    *String\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Prints a chracter to the default console, at\r
@@ -600,8 +598,7 @@ PrintCharAt (
   IN UINTN     Column,\r
   IN UINTN     Row,\r
   CHAR16       Character\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Parse opcodes in the formset IFR binary.\r
@@ -615,8 +612,7 @@ PrintCharAt (
 EFI_STATUS\r
 ParseOpCodes (\r
   IN FORM_BROWSER_FORMSET              *FormSet\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Free resources allocated for a FormSet.\r
@@ -627,8 +623,7 @@ ParseOpCodes (
 VOID\r
 DestroyFormSet (\r
   IN OUT FORM_BROWSER_FORMSET  *FormSet\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   This function displays the page frame.\r
@@ -637,8 +632,7 @@ DestroyFormSet (
 VOID\r
 DisplayPageFrame (\r
   VOID\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Create a new string in HII Package List.\r
@@ -654,8 +648,7 @@ EFI_STRING_ID
 NewString (\r
   IN  CHAR16                   *String,\r
   IN  EFI_HII_HANDLE           HiiHandle\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Delete a string from HII Package List.\r
@@ -670,8 +663,7 @@ EFI_STATUS
 DeleteString (\r
   IN  EFI_STRING_ID            StringId,\r
   IN  EFI_HII_HANDLE           HiiHandle\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Get the string based on the StringId and HII Package List Handle.\r
@@ -687,8 +679,7 @@ CHAR16 *
 GetToken (\r
   IN  EFI_STRING_ID                Token,\r
   IN  EFI_HII_HANDLE               HiiHandle\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Draw a pop up windows based on the dimension, number of lines and\r
@@ -704,8 +695,7 @@ CreateSharedPopUp (
   IN  UINTN                       RequestedWidth,\r
   IN  UINTN                       NumberOfLines,\r
   IN  VA_LIST                     Marker\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Routine used to abstract a generic dialog interface and return the selected key or string\r
@@ -723,7 +713,6 @@ CreateSharedPopUp (
   @param  StringBuffer           The passed in pointer to the buffer which will\r
                                  hold the typed in string if HotKey is FALSE\r
   @param  KeyValue               The EFI_KEY value returned if HotKey is TRUE..\r
-  @param  String                 Pointer to the first string in the list\r
   @param  ...                    A series of (quantity == NumberOfLines) text\r
                                  strings which will be used to construct the dialog\r
                                  box\r
@@ -742,8 +731,7 @@ CreateDialog (
   OUT CHAR16                      *StringBuffer,\r
   OUT EFI_INPUT_KEY               *KeyValue,\r
   ...\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Get Question's current Value.\r
@@ -763,8 +751,7 @@ GetQuestionValue (
   IN FORM_BROWSER_FORM                *Form,\r
   IN OUT FORM_BROWSER_STATEMENT       *Question,\r
   IN BOOLEAN                          Cached\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Save Question Value to edit copy(cached) or Storage(uncached).\r
@@ -784,8 +771,7 @@ SetQuestionValue (
   IN FORM_BROWSER_FORM                *Form,\r
   IN OUT FORM_BROWSER_STATEMENT       *Question,\r
   IN BOOLEAN                          Cached\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Perform inconsistent check for a Form.\r
@@ -805,8 +791,7 @@ ValidateQuestion (
   IN  FORM_BROWSER_FORM               *Form,\r
   IN  FORM_BROWSER_STATEMENT          *Question,\r
   IN  UINTN                           Type\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Submit a Form.\r
@@ -821,8 +806,7 @@ EFI_STATUS
 SubmitForm (\r
   IN FORM_BROWSER_FORMSET             *FormSet,\r
   IN FORM_BROWSER_FORM                *Form\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Reset Question to its default value.\r
@@ -841,8 +825,7 @@ GetQuestionDefault (
   IN FORM_BROWSER_FORM                *Form,\r
   IN FORM_BROWSER_STATEMENT           *Question,\r
   IN UINT16                           DefaultId\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Get current setting of Questions.\r
@@ -855,8 +838,7 @@ GetQuestionDefault (
 EFI_STATUS\r
 InitializeCurrentSetting (\r
   IN OUT FORM_BROWSER_FORMSET             *FormSet\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Initialize the internal data structure of a FormSet.\r
@@ -876,8 +858,7 @@ InitializeFormSet (
   IN  EFI_HII_HANDLE                   Handle,\r
   IN OUT EFI_GUID                      *FormSetGuid,\r
   OUT FORM_BROWSER_FORMSET             *FormSet\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Reset Questions in a Form to their default value.\r
@@ -894,8 +875,7 @@ ExtractFormDefault (
   IN FORM_BROWSER_FORMSET             *FormSet,\r
   IN  FORM_BROWSER_FORM               *Form,\r
   IN UINT16                           DefaultId\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Initialize Question's Edit copy from Storage.\r
@@ -910,8 +890,7 @@ EFI_STATUS
 LoadFormConfig (\r
   IN FORM_BROWSER_FORMSET             *FormSet,\r
   IN FORM_BROWSER_FORM                *Form\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Convert setting of Buffer Storage or NameValue Storage to <ConfigResp>.\r
@@ -927,8 +906,7 @@ EFI_STATUS
 StorageToConfigResp (\r
   IN FORMSET_STORAGE         *Storage,\r
   IN CHAR16                  **ConfigResp\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Convert <ConfigResp> to settings in Buffer Storage or NameValue Storage.\r
@@ -944,8 +922,7 @@ EFI_STATUS
 ConfigRespToStorage (\r
   IN FORMSET_STORAGE         *Storage,\r
   IN CHAR16                  *ConfigResp\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Fill storage's edit copy with settings requested from Configuration Driver.\r
@@ -960,8 +937,7 @@ EFI_STATUS
 LoadStorage (\r
   IN FORM_BROWSER_FORMSET    *FormSet,\r
   IN FORMSET_STORAGE         *Storage\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Fetch the Ifr binary data of a FormSet.\r
@@ -986,8 +962,7 @@ GetIfrBinaryData (
   IN OUT EFI_GUID      *FormSetGuid,\r
   OUT UINTN            *BinaryLength,\r
   OUT UINT8            **BinaryData\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   This is the routine which an external caller uses to direct the browser\r
@@ -1027,8 +1002,7 @@ SendForm (
   IN  UINT16                           FormId, OPTIONAL\r
   IN  CONST EFI_SCREEN_DESCRIPTOR      *ScreenDimensions, OPTIONAL\r
   OUT EFI_BROWSER_ACTION_REQUEST       *ActionRequest  OPTIONAL\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   This function is called by a callback handler to retrieve uncommitted state\r
@@ -1066,7 +1040,6 @@ BrowserCallback (
   IN BOOLEAN                           RetrieveData,\r
   IN CONST EFI_GUID                    *VariableGuid, OPTIONAL\r
   IN CONST CHAR16                      *VariableName  OPTIONAL\r
-  )\r
-;\r
+  );\r
 \r
 #endif\r