]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Include/Library/ExtendedIfrSupportLib.h
Fix function header
[mirror_edk2.git] / MdeModulePkg / Include / Library / ExtendedIfrSupportLib.h
index e0e6233f0bfb65e2b28fec0f9790b6a1e8e0812e..a154745dfd097f0fcd4bcee5b0149fe13e4c724d 100644 (file)
@@ -2,14 +2,14 @@
   Library header file defines APIs that is related to IFR operations but \r
   specific to EDK II implementation.\r
 \r
-  Copyright (c) 2006 - 2007, Intel Corporation\r
-  All rights reserved. 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
+Copyright (c) 2006 - 2008, Intel Corporation. <BR>\r
+All rights reserved. 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
+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
 \r
 **/\r
 EFI_STATUS\r
+EFIAPI\r
 CreateBannerOpCode (\r
   IN      EFI_STRING_ID       Title,\r
   IN      UINT16              LineNumber,\r
   IN      UINT8               Alignment,\r
   IN OUT  EFI_HII_UPDATE_DATA *Data\r
+  );\r
+\r
+/**\r
+  This function initialize the data structure for dynamic opcode.\r
+\r
+  @param UpdateData     The adding data;\r
+  @param BufferSize     Length of the buffer to fill dynamic opcodes.\r
+\r
+  @retval EFI_SUCCESS           Update data is initialized.\r
+  @retval EFI_INVALID_PARAMETER UpdateData is NULL.\r
+  @retval EFI_OUT_OF_RESOURCES  No enough memory to allocate.\r
+\r
+**/\r
+EFI_STATUS\r
+IfrLibInitUpdateData (\r
+  IN OUT EFI_HII_UPDATE_DATA   *UpdateData,\r
+  IN UINT32                    BufferSize\r
+  )\r
+;\r
+\r
+/**\r
+\r
+  This function free the resource of update data.\r
+\r
+  @param UpdateData      The adding data;\r
+\r
+**/\r
+VOID\r
+IfrLibFreeUpdateData (\r
+  IN EFI_HII_UPDATE_DATA       *UpdateData\r
   )\r
 ;\r
 \r
@@ -62,6 +93,7 @@ CreateBannerOpCode (
 \r
 **/\r
 EFI_STATUS\r
+EFIAPI\r
 IfrLibUpdateForm (\r
   IN EFI_HII_HANDLE            Handle,\r
   IN EFI_GUID                  *FormSetGuid, OPTIONAL\r
@@ -69,8 +101,7 @@ IfrLibUpdateForm (
   IN UINT16                    Label,\r
   IN BOOLEAN                   Insert,\r
   IN EFI_HII_UPDATE_DATA       *Data\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Extract formset class for given HII handle.\r
@@ -83,30 +114,36 @@ IfrLibUpdateForm (
   If FormSetHelp is NULL, then ASSERT.\r
 \r
   @param  HiiHandle              Hii handle\r
-  @param  Class                    On output, Class of the formset\r
-  @param  FormSetTitle          On output,  Formset title string\r
-  @param  FormSetHelp          On output,   Formset help string\r
+  @param  Class                  On output, Class of the formset\r
+  @param  FormSetTitle           On output,  Formset title string\r
+  @param  FormSetHelp            On output,   Formset help string\r
 \r
   @retval EFI_SUCCESS            Successfully extract Class for specified Hii\r
                                  handle.\r
 \r
 **/\r
 EFI_STATUS\r
+EFIAPI\r
 IfrLibExtractClassFromHiiHandle (\r
   IN      EFI_HII_HANDLE      Handle,\r
   OUT     UINT16              *Class,\r
   OUT     EFI_STRING_ID       *FormSetTitle,\r
   OUT     EFI_STRING_ID       *FormSetHelp\r
-  )\r
-;\r
+  );\r
 \r
 /**\r
   Configure the buffer accrording to ConfigBody strings in the format of\r
   <Length:4 bytes>, <Offset: 2 bytes>, <Width:2 bytes>, <Data:n bytes>.\r
+  This ConfigBody strings is generated by UEFI VfrCompiler for the default\r
+  values in a Form Set. The name of the ConfigBody strings is VfrMyIfrNVDataDefault0000\r
+  constructed following this rule: \r
+   "Vfr" + varstore.name + "Default" + defaultstore.attributes.\r
+  Check the generated C file in Output for details.\r
 \r
   @param  Buffer                 the start address of buffer.\r
   @param  BufferSize             the size of buffer.\r
-  @param  Number                 the number of the strings.\r
+  @param  Number                 the number of the ConfigBody strings.\r
+  @param  ...                    the ConfigBody strings\r
 \r
   @retval EFI_BUFFER_TOO_SMALL   the BufferSize is too small to operate.\r
   @retval EFI_INVALID_PARAMETER  Buffer is NULL or BufferSize is 0.\r
@@ -120,8 +157,7 @@ IfrLibExtractDefault(
   IN UINTN                        *BufferSize,\r
   UINTN                           Number,\r
   ...\r
-  )\r
-;\r
+  );\r
 \r
 #endif\r
 \r