X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=MdeModulePkg%2FInclude%2FLibrary%2FExtendedIfrSupportLib.h;h=a154745dfd097f0fcd4bcee5b0149fe13e4c724d;hb=c3a78fc8f9b35f16f3465e580a3b685f70eb714f;hp=e0e6233f0bfb65e2b28fec0f9790b6a1e8e0812e;hpb=9226efe5ebb83ad0d5882e3eb7a54f3d63f81e9d;p=mirror_edk2.git diff --git a/MdeModulePkg/Include/Library/ExtendedIfrSupportLib.h b/MdeModulePkg/Include/Library/ExtendedIfrSupportLib.h index e0e6233f0b..a154745dfd 100644 --- a/MdeModulePkg/Include/Library/ExtendedIfrSupportLib.h +++ b/MdeModulePkg/Include/Library/ExtendedIfrSupportLib.h @@ -2,14 +2,14 @@ Library header file defines APIs that is related to IFR operations but specific to EDK II implementation. - Copyright (c) 2006 - 2007, Intel Corporation - All rights reserved. This program and the accompanying materials - are licensed and made available under the terms and conditions of the BSD License - which accompanies this distribution. The full text of the license may be found at - http://opensource.org/licenses/bsd-license.php +Copyright (c) 2006 - 2008, Intel Corporation.
+All rights reserved. This program and the accompanying materials +are licensed and made available under the terms and conditions of the BSD License +which accompanies this distribution. The full text of the license may be found at +http://opensource.org/licenses/bsd-license.php - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. **/ @@ -31,11 +31,42 @@ **/ EFI_STATUS +EFIAPI CreateBannerOpCode ( IN EFI_STRING_ID Title, IN UINT16 LineNumber, IN UINT8 Alignment, IN OUT EFI_HII_UPDATE_DATA *Data + ); + +/** + This function initialize the data structure for dynamic opcode. + + @param UpdateData The adding data; + @param BufferSize Length of the buffer to fill dynamic opcodes. + + @retval EFI_SUCCESS Update data is initialized. + @retval EFI_INVALID_PARAMETER UpdateData is NULL. + @retval EFI_OUT_OF_RESOURCES No enough memory to allocate. + +**/ +EFI_STATUS +IfrLibInitUpdateData ( + IN OUT EFI_HII_UPDATE_DATA *UpdateData, + IN UINT32 BufferSize + ) +; + +/** + + This function free the resource of update data. + + @param UpdateData The adding data; + +**/ +VOID +IfrLibFreeUpdateData ( + IN EFI_HII_UPDATE_DATA *UpdateData ) ; @@ -62,6 +93,7 @@ CreateBannerOpCode ( **/ EFI_STATUS +EFIAPI IfrLibUpdateForm ( IN EFI_HII_HANDLE Handle, IN EFI_GUID *FormSetGuid, OPTIONAL @@ -69,8 +101,7 @@ IfrLibUpdateForm ( IN UINT16 Label, IN BOOLEAN Insert, IN EFI_HII_UPDATE_DATA *Data - ) -; + ); /** Extract formset class for given HII handle. @@ -83,30 +114,36 @@ IfrLibUpdateForm ( If FormSetHelp is NULL, then ASSERT. @param HiiHandle Hii handle - @param Class On output, Class of the formset - @param FormSetTitle On output, Formset title string - @param FormSetHelp On output, Formset help string + @param Class On output, Class of the formset + @param FormSetTitle On output, Formset title string + @param FormSetHelp On output, Formset help string @retval EFI_SUCCESS Successfully extract Class for specified Hii handle. **/ EFI_STATUS +EFIAPI IfrLibExtractClassFromHiiHandle ( IN EFI_HII_HANDLE Handle, OUT UINT16 *Class, OUT EFI_STRING_ID *FormSetTitle, OUT EFI_STRING_ID *FormSetHelp - ) -; + ); /** Configure the buffer accrording to ConfigBody strings in the format of , , , . + This ConfigBody strings is generated by UEFI VfrCompiler for the default + values in a Form Set. The name of the ConfigBody strings is VfrMyIfrNVDataDefault0000 + constructed following this rule: + "Vfr" + varstore.name + "Default" + defaultstore.attributes. + Check the generated C file in Output for details. @param Buffer the start address of buffer. @param BufferSize the size of buffer. - @param Number the number of the strings. + @param Number the number of the ConfigBody strings. + @param ... the ConfigBody strings @retval EFI_BUFFER_TOO_SMALL the BufferSize is too small to operate. @retval EFI_INVALID_PARAMETER Buffer is NULL or BufferSize is 0. @@ -120,8 +157,7 @@ IfrLibExtractDefault( IN UINTN *BufferSize, UINTN Number, ... - ) -; + ); #endif