diff options
4 files changed, 486 insertions, 932 deletions
diff --git a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrCommon.c b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrCommon.c index fb8b905e12..567eb56a4d 100644 --- a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrCommon.c +++ b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrCommon.c @@ -17,25 +17,21 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. //
#include "IfrSupportLibInternal.h"
+/**
+ Determine what is the current language setting
+ The setting is stored in language variable in flash. This routine
+ will get setting by accesssing that variable. If failed to access
+ language variable, then use default setting that 'eng' as current
+ language setting.
+
+ @param Lang Pointer of system language
+
+ @return whether sucess to get setting from variable
+**/
EFI_STATUS
GetCurrentLanguage (
OUT CHAR16 *Lang
)
-/*++
-
-Routine Description:
-
- Determine what is the current language setting
-
-Arguments:
-
- Lang - Pointer of system language
-
-Returns:
-
- Status code
-
---*/
{
EFI_STATUS Status;
UINTN Size;
@@ -75,7 +71,17 @@ Returns: return Status;
}
-
+/**
+ Add a string to the incoming buffer and return the token and offset data
+
+ @param StringBuffer The incoming buffer
+ @param Language Currrent language
+ @param String The string to be added
+ @param StringToken The index where the string placed
+
+ @retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
+ @retval EFI_SUCCESS String successfully added to the incoming buffer
+**/
EFI_STATUS
AddString (
IN VOID *StringBuffer,
@@ -83,29 +89,6 @@ AddString ( IN CHAR16 *String,
IN OUT STRING_REF *StringToken
)
-/*++
-
-Routine Description:
-
- Add a string to the incoming buffer and return the token and offset data
-
-Arguments:
-
- StringBuffer - The incoming buffer
-
- Language - Currrent language
-
- String - The string to be added
-
- StringToken - The index where the string placed
-
-Returns:
-
- EFI_OUT_OF_RESOURCES - No enough buffer to allocate
-
- EFI_SUCCESS - String successfully added to the incoming buffer
-
---*/
{
EFI_HII_STRING_PACK *StringPack;
EFI_HII_STRING_PACK *StringPackBuffer;
@@ -298,31 +281,20 @@ Returns: return EFI_SUCCESS;
}
-
+/**
+ Add op-code data to the FormBuffer
+
+ @param FormBuffer Form buffer to be inserted to
+ @param OpCodeData Op-code data to be inserted
+
+ @retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
+ @retval EFI_SUCCESS Op-code data successfully inserted
+**/
EFI_STATUS
AddOpCode (
IN VOID *FormBuffer,
IN OUT VOID *OpCodeData
)
-/*++
-
-Routine Description:
-
- Add op-code data to the FormBuffer
-
-Arguments:
-
- FormBuffer - Form buffer to be inserted to
-
- OpCodeData - Op-code data to be inserted
-
-Returns:
-
- EFI_OUT_OF_RESOURCES - No enough buffer to allocate
-
- EFI_SUCCESS - Op-code data successfully inserted
-
---*/
{
EFI_HII_PACK_HEADER *NewBuffer;
UINT8 *Source;
@@ -415,26 +387,18 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Get the HII protocol interface
+
+ @param Hii HII protocol interface
+
+ @return the statue of locating HII protocol
+**/
STATIC
EFI_STATUS
GetHiiInterface (
OUT EFI_HII_PROTOCOL **Hii
)
-/*++
-
-Routine Description:
-
- Get the HII protocol interface
-
-Arguments:
-
- Hii - HII protocol interface
-
-Returns:
-
- Status code
-
---*/
{
EFI_STATUS Status;
@@ -450,7 +414,19 @@ Returns: return Status;;
}
-
+/**
+ Extract information pertaining to the HiiHandle
+
+ @param HiiHandle Hii handle
+ @param ImageLength For input, length of DefaultImage;
+ For output, length of actually required
+ @param DefaultImage Image buffer prepared by caller
+ @param Guid Guid information about the form
+
+ @retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
+ @retval EFI_BUFFER_TOO_SMALL DefualtImage has no enough ImageLength
+ @retval EFI_SUCCESS Successfully extract data from Hii database.
+**/
EFI_STATUS
ExtractDataFromHiiHandle (
IN FRAMEWORK_EFI_HII_HANDLE HiiHandle,
@@ -458,33 +434,6 @@ ExtractDataFromHiiHandle ( OUT UINT8 *DefaultImage,
OUT EFI_GUID *Guid
)
-/*++
-
-Routine Description:
-
- Extract information pertaining to the HiiHandle
-
-Arguments:
-
- HiiHandle - Hii handle
-
- ImageLength - For input, length of DefaultImage;
- For output, length of actually required
-
- DefaultImage - Image buffer prepared by caller
-
- Guid - Guid information about the form
-
-Returns:
-
- EFI_OUT_OF_RESOURCES - No enough buffer to allocate
-
- EFI_BUFFER_TOO_SMALL - DefualtImage has no enough ImageLength
-
- EFI_SUCCESS - Successfully extract data from Hii database.
-
-
---*/
{
EFI_STATUS Status;
EFI_HII_PROTOCOL *Hii;
@@ -630,28 +579,22 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Finds HII handle for given pack GUID previously registered with the HII.
+
+ @param HiiProtocol pointer to pointer to HII protocol interface.
+ If NULL, the interface will be found but not returned.
+ If it points to NULL, the interface will be found and
+ written back to the pointer that is pointed to.
+ @param Guid The GUID of the pack that registered with the HII.
+ @return Handle to the HII pack previously registered by the memory driver.
+**/
FRAMEWORK_EFI_HII_HANDLE
FindHiiHandle (
IN OUT EFI_HII_PROTOCOL **HiiProtocol, OPTIONAL
IN EFI_GUID *Guid
)
-/*++
-
-Routine Description:
- Finds HII handle for given pack GUID previously registered with the HII.
-
-Arguments:
- HiiProtocol - pointer to pointer to HII protocol interface.
- If NULL, the interface will be found but not returned.
- If it points to NULL, the interface will be found and
- written back to the pointer that is pointed to.
- Guid - The GUID of the pack that registered with the HII.
-
-Returns:
- Handle to the HII pack previously registered by the memory driver.
-
---*/
{
EFI_STATUS Status;
@@ -746,34 +689,24 @@ lbl_exit: return HiiHandle;
}
+/**
+ Validate that the data associated with the HiiHandle in NVRAM is within
+ the reasonable parameters for that FormSet. Values for strings and passwords
+ are not verified due to their not having the equivalent of valid range settings.
+
+ @param HiiHandle Handle of the HII database entry to query
+ @param Results If return Status is EFI_SUCCESS, Results provides valid data
+ TRUE = NVRAM Data is within parameters
+ FALSE = NVRAM Data is NOT within parameters
+ @retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
+ @retval EFI_SUCCESS Data successfully validated
+**/
EFI_STATUS
ValidateDataFromHiiHandle (
IN FRAMEWORK_EFI_HII_HANDLE HiiHandle,
OUT BOOLEAN *Results
)
-/*++
-
-Routine Description:
-
- Validate that the data associated with the HiiHandle in NVRAM is within
- the reasonable parameters for that FormSet. Values for strings and passwords
- are not verified due to their not having the equivalent of valid range settings.
-
-Arguments:
-
- HiiHandle - Handle of the HII database entry to query
-
- Results - If return Status is EFI_SUCCESS, Results provides valid data
- TRUE = NVRAM Data is within parameters
- FALSE = NVRAM Data is NOT within parameters
-
-Returns:
-
- EFI_OUT_OF_RESOURCES - No enough buffer to allocate
-
- EFI_SUCCESS - Data successfully validated
---*/
{
EFI_STATUS Status;
EFI_HII_PROTOCOL *Hii;
diff --git a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOnTheFly.c b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOnTheFly.c index db4f52f73b..7772b49925 100644 --- a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOnTheFly.c +++ b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOnTheFly.c @@ -1,4 +1,6 @@ /** @file
+ Library Routines to create IFR on-the-fly
+
Copyright (c) 2006, 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
@@ -8,15 +10,6 @@ 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.
-Module Name:
- IfrOnTheFly.c
-
-Abstract:
-
- Library Routines to create IFR on-the-fly
-
-Revision History:
-
**/
//
@@ -24,6 +17,22 @@ Revision History: //
#include "IfrSupportLibInternal.h"
+/**
+ Create a formset
+
+ The form package is a collection of forms that are intended to describe the pages that will be
+ displayed to the user.
+
+ @param FormSetTitle Title of formset
+ @param Guid Guid of formset
+ @param Class Class of formset
+ @param SubClass Sub class of formset
+ @param FormBuffer Pointer of the formset created
+ @param StringBuffer Pointer of FormSetTitile string created
+
+ @retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
+ @retval EFI_SUCCESS Formset successfully created
+**/
EFI_STATUS
CreateFormSet (
IN CHAR16 *FormSetTitle,
@@ -33,33 +42,6 @@ CreateFormSet ( IN OUT VOID **FormBuffer,
IN OUT VOID **StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a formset
-
-Arguments:
-
- FormSetTitle - Title of formset
-
- Guid - Guid of formset
-
- Class - Class of formset
-
- SubClass - Sub class of formset
-
- FormBuffer - Pointer of the formset created
-
- StringBuffer - Pointer of FormSetTitile string created
-
-Returns:
-
- EFI_OUT_OF_RESOURCES - No enough buffer to allocate
-
- EFI_SUCCESS - Formset successfully created
-
---*/
{
EFI_STATUS Status;
EFI_HII_IFR_PACK IfrPack;
@@ -139,7 +121,19 @@ Returns: return EFI_SUCCESS;
}
-
+/**
+ Create a form
+ A form is the encapsulation of what amounts to a browser page. The header defines a FormId,
+ which is referenced by the form package, among others. It also defines a FormTitle, which is a
+ string to be used as the title for the form
+
+ @param FormTitle Title of the form
+ @param FormId Id of the form
+ @param FormBuffer Pointer of the form created
+ @param StringBuffer Pointer of FormTitil string created
+
+ @retval EFI_SUCCESS Form successfully created
+**/
EFI_STATUS
CreateForm (
IN CHAR16 *FormTitle,
@@ -147,27 +141,6 @@ CreateForm ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a form
-
-Arguments:
-
- FormTitle - Title of the form
-
- FormId - Id of the form
-
- FormBuffer - Pointer of the form created
-
- StringBuffer - Pointer of FormTitil string created
-
-Returns:
-
- EFI_SUCCESS - Form successfully created
-
---*/
{
EFI_STATUS Status;
FRAMEWORK_EFI_IFR_FORM Form;
@@ -202,39 +175,27 @@ Returns: Status = AddOpCode (FormBuffer, &EndForm);
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+ return Status;
}
-
+/**
+ Create a SubTitle
+
+ Subtitle strings are intended to be used by authors to separate sections of questions into semantic
+ groups.
+
+ @param SubTitle Sub title to be created
+ @param FormBuffer Where this subtitle to add to
+ @param StringBuffer String buffer created for subtitle
+
+ @retval EFI_SUCCESS Subtitle successfully created
+**/
EFI_STATUS
CreateSubTitle (
IN CHAR16 *SubTitle,
IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a SubTitle
-
-Arguments:
-
- SubTitle - Sub title to be created
-
- FormBuffer - Where this subtitle to add to
-
- StringBuffer - String buffer created for subtitle
-
-Returns:
-
- EFI_SUCCESS - Subtitle successfully created
-
---*/
{
EFI_STATUS Status;
FRAMEWORK_EFI_IFR_SUBTITLE Subtitle;
@@ -258,14 +219,24 @@ Returns: Status = AddOpCode (FormBuffer, &Subtitle);
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+ return Status;
}
-
+/**
+ Create a line of text
+ Unlike HTML, text is simply another tag.
+ This tag type enables IFR to be more easily localized.
+
+ @param String - First string of the text
+ @param String2 - Second string of the text
+ @param String3 - Help string of the text
+ @param Flags - Flag of the text
+ @param Key - Key of the text
+ @param FormBuffer - The form where this text adds to
+ @param StringBuffer - String buffer created for String, String2 and String3
+
+ @retval EFI_SUCCESS - Text successfully created
+**/
EFI_STATUS
CreateText (
IN CHAR16 *String,
@@ -276,33 +247,6 @@ CreateText ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a line of text
-
-Arguments:
-
- String - First string of the text
-
- String2 - Second string of the text
-
- String3 - Help string of the text
-
- Flags - Flag of the text
-
- Key - Key of the text
-
- FormBuffer - The form where this text adds to
-
- StringBuffer - String buffer created for String, String2 and String3
-
-Returns:
-
- EFI_SUCCESS - Text successfully created
-
---*/
{
EFI_STATUS Status;
FRAMEWORK_EFI_IFR_TEXT Text;
@@ -354,14 +298,19 @@ Returns: Status = AddOpCode (FormBuffer, &Text);
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+ return Status;
}
-
+/**
+ Create a hyperlink
+
+ @param FormId Form ID of the hyperlink
+ @param Prompt Prompt of the hyperlink
+ @param FormBuffer The form where this hyperlink adds to
+ @param StringBuffer String buffer created for Prompt
+
+ @retval EFI_SUCCESS Hyperlink successfully created
+**/
EFI_STATUS
CreateGoto (
IN UINT16 FormId,
@@ -369,27 +318,6 @@ CreateGoto ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a hyperlink
-
-Arguments:
-
- FormId - Form ID of the hyperlink
-
- Prompt - Prompt of the hyperlink
-
- FormBuffer - The form where this hyperlink adds to
-
- StringBuffer - String buffer created for Prompt
-
-Returns:
-
- EFI_SUCCESS - Hyperlink successfully created
-
---*/
{
EFI_STATUS Status;
FRAMEWORK_EFI_IFR_REF Hyperlink;
@@ -414,14 +342,25 @@ Returns: Status = AddOpCode (FormBuffer, &Hyperlink);
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+ return Status;
}
+/**
+ Create a one-of question with a set of options to choose from. The
+ OptionsList is a pointer to a null-terminated list of option descriptions.
+ @param QuestionId - Question ID of the one-of box
+ @param DataWidth - DataWidth of the one-of box
+ @param Prompt - Prompt of the one-of box
+ @param Help - Help of the one-of box
+ @param OptionsList - Each string in it is an option of the one-of box
+ @param OptionCount - Option string count
+ @param FormBuffer - The form where this one-of box adds to
+ @param StringBuffer - String buffer created for Prompt, Help and Option strings
+
+ @retval EFI_DEVICE_ERROR - DataWidth > 2
+ @retval EFI_SUCCESS - One-Of box successfully created.
+**/
EFI_STATUS
CreateOneOf (
IN UINT16 QuestionId,
@@ -433,38 +372,6 @@ CreateOneOf ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a one-of question with a set of options to choose from. The
- OptionsList is a pointer to a null-terminated list of option descriptions.
-
-Arguments:
-
- QuestionId - Question ID of the one-of box
-
- DataWidth - DataWidth of the one-of box
-
- Prompt - Prompt of the one-of box
-
- Help - Help of the one-of box
-
- OptionsList - Each string in it is an option of the one-of box
-
- OptionCount - Option string count
-
- FormBuffer - The form where this one-of box adds to
-
- StringBuffer - String buffer created for Prompt, Help and Option strings
-
-Returns:
-
- EFI_DEVICE_ERROR - DataWidth > 2
-
- EFI_SUCCESS - One-Of box successfully created.
-
---*/
{
EFI_STATUS Status;
UINTN Index;
@@ -551,6 +458,21 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Create a one-of question with a set of options to choose from. The
+ OptionsList is a pointer to a null-terminated list of option descriptions.
+
+ @param QuestionId - Question ID of the ordered list
+ @param MaxEntries - MaxEntries of the ordered list
+ @param Prompt - Prompt of the ordered list
+ @param Help - Help of the ordered list
+ @param OptionsList - Each string in it is an option of the ordered list
+ @param OptionCount - Option string count
+ @param FormBuffer - The form where this ordered list adds to
+ @param StringBuffer - String buffer created for Prompt, Help and Option strings
+
+ @retval EFI_SUCCESS - Ordered list successfully created.
+**/
EFI_STATUS
CreateOrderedList (
IN UINT16 QuestionId,
@@ -562,36 +484,6 @@ CreateOrderedList ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a one-of question with a set of options to choose from. The
- OptionsList is a pointer to a null-terminated list of option descriptions.
-
-Arguments:
-
- QuestionId - Question ID of the ordered list
-
- MaxEntries - MaxEntries of the ordered list
-
- Prompt - Prompt of the ordered list
-
- Help - Help of the ordered list
-
- OptionsList - Each string in it is an option of the ordered list
-
- OptionCount - Option string count
-
- FormBuffer - The form where this ordered list adds to
-
- StringBuffer - String buffer created for Prompt, Help and Option strings
-
-Returns:
-
- EFI_SUCCESS - Ordered list successfully created.
-
---*/
{
EFI_STATUS Status;
UINTN Index;
@@ -664,14 +556,23 @@ Returns: Status = AddOpCode (FormBuffer, &EndOrderedList);
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+ return Status;
}
-
+/**
+ Create a checkbox
+
+ @param QuestionId Question ID of the check box
+ @param DataWidth DataWidth of the check box
+ @param Prompt Prompt of the check box
+ @param Help Help of the check box
+ @param Flags Flags of the check box
+ @param FormBuffer The form where this check box adds to
+ @param StringBuffer String buffer created for Prompt and Help.
+
+ @retval EFI_DEVICE_ERROR DataWidth > 1
+ @retval EFI_SUCCESS Check box successfully created
+**/
EFI_STATUS
CreateCheckBox (
IN UINT16 QuestionId,
@@ -682,35 +583,6 @@ CreateCheckBox ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a checkbox
-
-Arguments:
-
- QuestionId - Question ID of the check box
-
- DataWidth - DataWidth of the check box
-
- Prompt - Prompt of the check box
-
- Help - Help of the check box
-
- Flags - Flags of the check box
-
- FormBuffer - The form where this check box adds to
-
- StringBuffer - String buffer created for Prompt and Help.
-
-Returns:
-
- EFI_DEVICE_ERROR - DataWidth > 1
-
- EFI_SUCCESS - Check box successfully created
-
---*/
{
EFI_STATUS Status;
FRAMEWORK_EFI_IFR_CHECKBOX CheckBox;
@@ -757,15 +629,29 @@ Returns: CheckBox.Flags = (UINT8) (Flags | FRAMEWORK_EFI_IFR_FLAG_CREATED);
Status = AddOpCode (FormBuffer, &CheckBox);
-
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+
+ return Status;
}
-
+/**
+ Create a numeric
+
+ @param QuestionId Question ID of the numeric
+ @param DataWidth DataWidth of the numeric
+ @param Prompt Prompt of the numeric
+ @param Help Help of the numeric
+ @param Minimum Minumun boundary of the numeric
+ @param Maximum Maximum boundary of the numeric
+ @param Step Step of the numeric
+ @param Default Default value
+ @param Flags Flags of the numeric
+ @param Key Key of the numeric
+ @param FormBuffer The form where this numeric adds to
+ @param StringBuffer String buffer created for Prompt and Help.
+
+ @retval EFI_DEVICE_ERROR DataWidth > 2
+ @retval EFI_SUCCESS Numeric is successfully created
+**/
EFI_STATUS
CreateNumeric (
IN UINT16 QuestionId,
@@ -781,45 +667,6 @@ CreateNumeric ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a numeric
-
-Arguments:
-
- QuestionId - Question ID of the numeric
-
- DataWidth - DataWidth of the numeric
-
- Prompt - Prompt of the numeric
-
- Help - Help of the numeric
-
- Minimum - Minumun boundary of the numeric
-
- Maximum - Maximum boundary of the numeric
-
- Step - Step of the numeric
-
- Default - Default value
-
- Flags - Flags of the numeric
-
- Key - Key of the numeric
-
- FormBuffer - The form where this numeric adds to
-
- StringBuffer - String buffer created for Prompt and Help.
-
-Returns:
-
- EFI_DEVICE_ERROR - DataWidth > 2
-
- EFI_SUCCESS - Numeric is successfully created
-
---*/
{
EFI_STATUS Status;
FRAMEWORK_EFI_IFR_NUMERIC Numeric;
@@ -872,14 +719,24 @@ Returns: Status = AddOpCode (FormBuffer, &Numeric);
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+ return Status;
}
-
+/**
+ Create a string
+
+ @param QuestionId - Question ID of the string
+ @param DataWidth - DataWidth of the string
+ @param Prompt - Prompt of the string
+ @param Help - Help of the string
+ @param MinSize - Min size boundary of the string
+ @param MaxSize - Max size boundary of the string
+ @param Flags - Flags of the string
+ @param Key - Key of the string
+ @param FormBuffer - The form where this string adds to
+ @param StringBuffer - String buffer created for Prompt and Help.
+ @retval EFI_SUCCESS - String successfully created.
+**/
EFI_STATUS
CreateString (
IN UINT16 QuestionId,
@@ -893,39 +750,6 @@ CreateString ( IN OUT VOID *FormBuffer,
IN OUT VOID *StringBuffer
)
-/*++
-
-Routine Description:
-
- Create a string
-
-Arguments:
-
- QuestionId - Question ID of the string
-
- DataWidth - DataWidth of the string
-
- Prompt - Prompt of the string
-
- Help - Help of the string
-
- MinSize - Min size boundary of the string
-
- MaxSize - Max size boundary of the string
-
- Flags - Flags of the string
-
- Key - Key of the string
-
- FormBuffer - The form where this string adds to
-
- StringBuffer - String buffer created for Prompt and Help.
-
-Returns:
-
- EFI_SUCCESS - String successfully created.
-
---*/
{
EFI_STATUS Status;
FRAMEWORK_EFI_IFR_STRING String;
@@ -969,9 +793,6 @@ Returns: Status = AddOpCode (FormBuffer, &String);
- if (EFI_ERROR (Status)) {
- return Status;
- }
-
- return EFI_SUCCESS;
+ return Status;
}
+
diff --git a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOpCodeCreation.c b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOpCodeCreation.c index 305532083b..cbb5cfa07c 100644 --- a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOpCodeCreation.c +++ b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrOpCodeCreation.c @@ -1,4 +1,7 @@ /** @file
+ Library Routines to create IFR independent of string data - assume tokens already exist
+ Primarily to be used for exporting op-codes at a label in pre-defined forms.
+
Copyright (c) 2006, 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
@@ -8,15 +11,6 @@ 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.
-Module Name:
- IfrOpCodeCreation.c
-
-Abstract:
-
- Library Routines to create IFR independent of string data - assume tokens already exist
- Primarily to be used for exporting op-codes at a label in pre-defined forms.
-
-Revision History:
**/
@@ -25,31 +19,22 @@ Revision History: //
#include "IfrSupportLibInternal.h"
-EFI_STATUS
-CreateSubTitleOpCode (
- IN STRING_REF StringToken,
- IN OUT VOID *FormBuffer
- )
-/*++
-
-Routine Description:
-
+/**
Create a SubTitle opcode independent of string creation
This is used primarily by users who need to create just one particular valid op-code and the string
data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
location to pre-defined forms in HII)
-Arguments:
+ @param StringToken StringToken of the subtitle
+ @param FormBuffer Output of subtitle as a form
- StringToken - StringToken of the subtitle
-
- FormBuffer - Output of subtitle as a form
-
-Returns:
-
- EFI_SUCCESS - Subtitle created to be a form
-
---*/
+ @retval EFI_SUCCESS Subtitle created to be a form
+**/
+EFI_STATUS
+CreateSubTitleOpCode (
+ IN STRING_REF StringToken,
+ IN OUT VOID *FormBuffer
+ )
{
FRAMEWORK_EFI_IFR_SUBTITLE Subtitle;
@@ -61,7 +46,21 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Create a Text opcode independent of string creation
+ This is used primarily by users who need to create just one particular valid op-code and the string
+ data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
+ location to pre-defined forms in HII)
+
+ @param StringToken - First string token of the text
+ @param StringTokenTwo - Second string token of the text
+ @param StringTokenThree - Help string token of the text
+ @param Flags - Flag of the text
+ @param Key - Key of the text
+ @param FormBuffer - Output of text as a form
+ @retval EFI_SUCCESS - Text created to be a form
+**/
EFI_STATUS
CreateTextOpCode (
IN STRING_REF StringToken,
@@ -71,34 +70,6 @@ CreateTextOpCode ( IN UINT16 Key,
IN OUT VOID *FormBuffer
)
-/*++
-
-Routine Description:
-
- Create a Text opcode independent of string creation
- This is used primarily by users who need to create just one particular valid op-code and the string
- data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
- location to pre-defined forms in HII)
-
-Arguments:
-
- StringToken - First string token of the text
-
- StringTokenTwo - Second string token of the text
-
- StringTokenThree - Help string token of the text
-
- Flags - Flag of the text
-
- Key - Key of the text
-
- FormBuffer - Output of text as a form
-
-Returns:
-
- EFI_SUCCESS - Text created to be a form
-
---*/
{
FRAMEWORK_EFI_IFR_TEXT Text;
@@ -116,7 +87,21 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Create a hyperlink opcode independent of string creation
+ This is used primarily by users who need to create just one particular valid op-code and the string
+ data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
+ location to pre-defined forms in HII)
+
+ @param FormId - Form ID of the hyperlink
+ @param StringToken - Prompt string token of the hyperlink
+ @param StringTokenTwo - Help string token of the hyperlink
+ @param Flags - Flags of the hyperlink
+ @param Key - Key of the hyperlink
+ @param FormBuffer - Output of hyperlink as a form
+ @retval EFI_SUCCESS - Hyperlink created to be a form
+--*/
EFI_STATUS
CreateGotoOpCode (
IN UINT16 FormId,
@@ -126,34 +111,7 @@ CreateGotoOpCode ( IN UINT16 Key,
IN OUT VOID *FormBuffer
)
-/*++
-Routine Description:
-
- Create a hyperlink opcode independent of string creation
- This is used primarily by users who need to create just one particular valid op-code and the string
- data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
- location to pre-defined forms in HII)
-
-Arguments:
-
- FormId - Form ID of the hyperlink
-
- StringToken - Prompt string token of the hyperlink
-
- StringTokenTwo - Help string token of the hyperlink
-
- Flags - Flags of the hyperlink
-
- Key - Key of the hyperlink
-
- FormBuffer - Output of hyperlink as a form
-
-Returns:
-
- EFI_SUCCESS - Hyperlink created to be a form
-
---*/
{
FRAMEWORK_EFI_IFR_REF Hyperlink;
@@ -170,7 +128,27 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Create a one-of opcode with a set of option op-codes to choose from independent of string creation.
+ This is used primarily by users who need to create just one particular valid op-code and the string
+ data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
+ location to pre-defined forms in HII)
+
+ OptionsList is a pointer to a null-terminated list of option descriptions. Ensure that OptionsList[x].StringToken
+ has been filled in since this routine will not generate StringToken values.
+
+ @param QuestionId - Question ID of the one-of box
+ @param DataWidth - DataWidth of the one-of box
+ @param PromptToken - Prompt string token of the one-of box
+ @param HelpToken - Help string token of the one-of box
+ @param OptionsList - Each string in it is an option of the one-of box
+ @param OptionCount - Option string count
+ @param FormBuffer - Output of One-Of box as a form
+
+ @retval EFI_SUCCESS - One-Of box created to be a form
+ @retval EFI_DEVICE_ERROR - DataWidth > 2
+**/
EFI_STATUS
CreateOneOfOpCode (
IN UINT16 QuestionId,
@@ -181,41 +159,6 @@ CreateOneOfOpCode ( IN UINTN OptionCount,
IN OUT VOID *FormBuffer
)
-/*++
-
-Routine Description:
-
- Create a one-of opcode with a set of option op-codes to choose from independent of string creation.
- This is used primarily by users who need to create just one particular valid op-code and the string
- data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
- location to pre-defined forms in HII)
-
- OptionsList is a pointer to a null-terminated list of option descriptions. Ensure that OptionsList[x].StringToken
- has been filled in since this routine will not generate StringToken values.
-
-Arguments:
-
- QuestionId - Question ID of the one-of box
-
- DataWidth - DataWidth of the one-of box
-
- PromptToken - Prompt string token of the one-of box
-
- HelpToken - Help string token of the one-of box
-
- OptionsList - Each string in it is an option of the one-of box
-
- OptionCount - Option string count
-
- FormBuffer - Output of One-Of box as a form
-
-Returns:
-
- EFI_SUCCESS - One-Of box created to be a form
-
- EFI_DEVICE_ERROR - DataWidth > 2
-
---*/
{
UINTN Index;
FRAMEWORK_EFI_IFR_ONE_OF OneOf;
@@ -268,6 +211,25 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Create a ordered list opcode with a set of option op-codes to choose from independent of string creation.
+ This is used primarily by users who need to create just one particular valid op-code and the string
+ data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
+ location to pre-defined forms in HII)
+
+ OptionsList is a pointer to a null-terminated list of option descriptions. Ensure that OptionsList[x].StringToken
+ has been filled in since this routine will not generate StringToken values.
+
+ @param QuestionId - Question ID of the ordered list
+ @param MaxEntries - MaxEntries of the ordered list
+ @param PromptToken - Prompt string token of the ordered list
+ @param HelpToken - Help string token of the ordered list
+ @param OptionsList - Each string in it is an option of the ordered list
+ @param OptionCount - Option string count
+ @param FormBuffer - Output of ordered list as a form
+
+ @retval EFI_SUCCESS - Ordered list created to be a form
+**/
EFI_STATUS
CreateOrderedListOpCode (
IN UINT16 QuestionId,
@@ -278,39 +240,6 @@ CreateOrderedListOpCode ( IN UINTN OptionCount,
IN OUT VOID *FormBuffer
)
-/*++
-
-Routine Description:
-
- Create a ordered list opcode with a set of option op-codes to choose from independent of string creation.
- This is used primarily by users who need to create just one particular valid op-code and the string
- data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
- location to pre-defined forms in HII)
-
- OptionsList is a pointer to a null-terminated list of option descriptions. Ensure that OptionsList[x].StringToken
- has been filled in since this routine will not generate StringToken values.
-
-Arguments:
-
- QuestionId - Question ID of the ordered list
-
- MaxEntries - MaxEntries of the ordered list
-
- PromptToken - Prompt string token of the ordered list
-
- HelpToken - Help string token of the ordered list
-
- OptionsList - Each string in it is an option of the ordered list
-
- OptionCount - Option string count
-
- FormBuffer - Output of ordered list as a form
-
-Returns:
-
- EFI_SUCCESS - Ordered list created to be a form
-
---*/
{
UINTN Index;
FRAMEWORK_EFI_IFR_ORDERED_LIST OrderedList;
@@ -356,6 +285,23 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Create a checkbox opcode independent of string creation
+ This is used primarily by users who need to create just one particular valid op-code and the string
+ data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
+ location to pre-defined forms in HII)
+
+ @param QuestionId - Question ID of the check box
+ @param DataWidth - DataWidth of the check box
+ @param PromptToken - Prompt string token of the check box
+ @param HelpToken - Help string token of the check box
+ @param Flags - Flags of the check box
+ @param Key - Key of the check box
+ @param FormBuffer - Output of the check box as a form
+
+ @retval EFI_SUCCESS - Checkbox created to be a form
+ @retval EFI_DEVICE_ERROR - DataWidth > 1
+**/
EFI_STATUS
CreateCheckBoxOpCode (
IN UINT16 QuestionId,
@@ -366,38 +312,7 @@ CreateCheckBoxOpCode ( IN UINT16 Key,
IN OUT VOID *FormBuffer
)
-/*++
-Routine Description:
-
- Create a checkbox opcode independent of string creation
- This is used primarily by users who need to create just one particular valid op-code and the string
- data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
- location to pre-defined forms in HII)
-
-Arguments:
-
- QuestionId - Question ID of the check box
-
- DataWidth - DataWidth of the check box
-
- PromptToken - Prompt string token of the check box
-
- HelpToken - Help string token of the check box
-
- Flags - Flags of the check box
-
- Key - Key of the check box
-
- FormBuffer - Output of the check box as a form
-
-Returns:
-
- EFI_SUCCESS - Checkbox created to be a form
-
- EFI_DEVICE_ERROR - DataWidth > 1
-
---*/
{
FRAMEWORK_EFI_IFR_CHECKBOX CheckBox;
@@ -423,7 +338,28 @@ Returns: return EFI_SUCCESS;
}
-
+/**
+ Create a numeric opcode independent of string creation
+ This is used primarily by users who need to create just one particular valid op-code and the string
+ data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
+ location to pre-defined forms in HII)
+
+ @param QuestionId - Question ID of the numeric
+ @param DataWidth - DataWidth of the numeric
+ @param PromptToken - Prompt string token of the numeric
+ @param HelpToken - Help string token of the numeric
+ @param Minimum - Minumun boundary of the numeric
+ @param Maximum - Maximum boundary of the numeric
+ @param Step - Step of the numeric
+ @param Default - Default value of the numeric
+ @param Flags - Flags of the numeric
+ @param Key - Key of the numeric
+ @param FormBuffer - Output of the numeric as a form
+
+
+ @retval EFI_SUCCESS - The numeric created to be a form.
+ @retval EFI_DEVICE_ERROR - DataWidth > 2
+**/
EFI_STATUS
CreateNumericOpCode (
IN UINT16 QuestionId,
@@ -438,46 +374,7 @@ CreateNumericOpCode ( IN UINT16 Key,
IN OUT VOID *FormBuffer
)
-/*++
-
-Routine Description:
-
- Create a numeric opcode independent of string creation
- This is used primarily by users who need to create just one particular valid op-code and the string
- data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
- location to pre-defined forms in HII)
-
-Arguments:
-
- QuestionId - Question ID of the numeric
-
- DataWidth - DataWidth of the numeric
-
- PromptToken - Prompt string token of the numeric
-
- HelpToken - Help string token of the numeric
-
- Minimum - Minumun boundary of the numeric
-
- Maximum - Maximum boundary of the numeric
-
- Step - Step of the numeric
-
- Default - Default value of the numeric
-
- Flags - Flags of the numeric
-
- Key - Key of the numeric
-
- FormBuffer - Output of the numeric as a form
-
-Returns:
-
- EFI_SUCCESS - The numeric created to be a form.
-
- EFI_DEVICE_ERROR - DataWidth > 2
---*/
{
FRAMEWORK_EFI_IFR_NUMERIC Numeric;
@@ -507,7 +404,24 @@ Returns: return EFI_SUCCESS;
}
-
+/**
+ Create a numeric opcode independent of string creation
+ This is used primarily by users who need to create just one particular valid op-code and the string
+ data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
+ location to pre-defined forms in HII)
+
+ @param QuestionId Question ID of the string
+ @param DataWidth DataWidth of the string
+ @param PromptToken Prompt token of the string
+ @param HelpToken Help token of the string
+ @param MinSize Min size boundary of the string
+ @param MaxSize Max size boundary of the string
+ @param Flags Flags of the string
+ @param Key Key of the string
+ @param FormBuffer Output of the string as a form
+
+ @retval EFI_SUCCESS String created to be a form.
+**/
EFI_STATUS
CreateStringOpCode (
IN UINT16 QuestionId,
@@ -520,40 +434,7 @@ CreateStringOpCode ( IN UINT16 Key,
IN OUT VOID *FormBuffer
)
-/*++
-
-Routine Description:
- Create a numeric opcode independent of string creation
- This is used primarily by users who need to create just one particular valid op-code and the string
- data will be assumed to exist in the HiiDatabase already. (Useful when exporting op-codes at a label
- location to pre-defined forms in HII)
-
-Arguments:
-
- QuestionId - Question ID of the string
-
- DataWidth - DataWidth of the string
-
- PromptToken - Prompt token of the string
-
- HelpToken - Help token of the string
-
- MinSize - Min size boundary of the string
-
- MaxSize - Max size boundary of the string
-
- Flags - Flags of the string
-
- Key - Key of the string
-
- FormBuffer - Output of the string as a form
-
-Returns:
-
- EFI_SUCCESS - String created to be a form.
-
---*/
{
FRAMEWORK_EFI_IFR_STRING String;
@@ -574,7 +455,16 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Create a banner opcode. This is primarily used by the FrontPage implementation from BDS.
+
+ @param Title - Title of the banner
+ @param LineNumber - LineNumber of the banner
+ @param Alignment - Alignment of the banner
+ @param FormBuffer - Output of banner as a form
+ @retval EFI_SUCCESS - Banner created to be a form.
+**/
EFI_STATUS
CreateBannerOpCode (
IN UINT16 Title,
@@ -582,27 +472,7 @@ CreateBannerOpCode ( IN UINT8 Alignment,
IN OUT VOID *FormBuffer
)
-/*++
-
-Routine Description:
-
- Create a banner opcode. This is primarily used by the FrontPage implementation from BDS.
-
-Arguments:
-
- Title - Title of the banner
-
- LineNumber - LineNumber of the banner
-
- Alignment - Alignment of the banner
-
- FormBuffer - Output of banner as a form
-
-Returns:
-
- EFI_SUCCESS - Banner created to be a form.
---*/
{
FRAMEWORK_EFI_IFR_BANNER Banner;
@@ -616,3 +486,5 @@ Returns: return EFI_SUCCESS;
}
+
+
diff --git a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrVariable.c b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrVariable.c index c48c497bdd..8c662b6064 100644 --- a/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrVariable.c +++ b/IntelFrameworkPkg/Library/FrameworkIfrSupportLib/IfrVariable.c @@ -1,5 +1,6 @@ /** @file
-
+ Variable/Map manipulations routines
+
Copyright (c) 2006, 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
@@ -9,12 +10,6 @@ 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.
-Module Name:
- IfrVariable.c
-
-Abstract:
- Variable/Map manipulations routines
-
**/
//
@@ -22,6 +17,15 @@ Abstract: //
#include "IfrSupportLibInternal.h"
+/**
+ Extracts a variable form a Pack.
+
+ @param Pack - List of variables
+ @param Name - Name of the variable/map
+ @param Guid - GUID of the variable/map
+ @param Var - Pointer to the variable/map
+ @param Size - Size of the variable/map in bytes
+**/
VOID
EfiLibHiiVariablePackGetMap (
IN EFI_HII_VARIABLE_PACK *Pack,
@@ -31,25 +35,7 @@ EfiLibHiiVariablePackGetMap ( OUT VOID **Var, OPTIONAL
OUT UINTN *Size OPTIONAL
)
-/*++
-Routine Description:
-
- Extracts a variable form a Pack.
-
-Arguments:
-
- Pack - List of variables
- Name - Name of the variable/map
- Guid - GUID of the variable/map
- Var - Pointer to the variable/map
- Size - Size of the variable/map in bytes
-
-Returns:
-
- VOID
-
---*/
{
if (NULL != Name) {
*Name = (VOID *) (Pack + 1);
@@ -73,28 +59,17 @@ Returns: }
}
+/**
+ Finds a count of the variables/maps in the List.
+
+ @param List - List of variables
+ @return The number of map count.
+**/
UINTN
EfiLibHiiVariablePackListGetMapCnt (
IN EFI_HII_VARIABLE_PACK_LIST *List
)
-
-/*++
-
-Routine Description:
-
- Finds a count of the variables/maps in the List.
-
-Arguments:
-
- List - List of variables
-
-Returns:
-
- UINTN - The number of map count.
-
---*/
-
{
UINTN Cnt = 0;
while (NULL != List) {
@@ -104,29 +79,20 @@ Returns: return Cnt;
}
+/**
+ Will iterate all variable/maps as appearing
+ in List and for each, it will call the Callback.
+
+ @param List - List of variables
+ @param Callback - Routine to be called for each iterated variable.
+**/
VOID
EfiLibHiiVariablePackListForEachVar (
IN EFI_HII_VARIABLE_PACK_LIST *List,
IN EFI_LIB_HII_VARIABLE_PACK_LIST_CALLBACK *Callback
)
-/*++
-
-Routine Description:
- Will iterate all variable/maps as appearing
- in List and for each, it will call the Callback.
-
-Arguments:
-
- List - List of variables
- Callback - Routine to be called for each iterated variable.
-
-Returns:
-
- VOID
-
---*/
{
CHAR16 *MapName;
@@ -145,7 +111,20 @@ Returns: }
}
+/**
+ Finds a variable form List given
+ the order number as appears in the List.
+
+ @param Idx - The index of the variable/map to retrieve
+ @param List - List of variables
+ @param Name - Name of the variable/map
+ @param Guid - GUID of the variable/map
+ @param Var - Pointer to the variable/map
+ @param Size - Size of the variable/map in bytes
+ @param EFI_SUCCESS - Variable is found, OUT parameters are valid
+ @param EFI_NOT_FOUND - Variable is not found, OUT parameters are not valid
+**/
EFI_STATUS
EfiLibHiiVariablePackListGetMapByIdx (
IN UINTN Idx,
@@ -157,28 +136,7 @@ EfiLibHiiVariablePackListGetMapByIdx ( OUT UINTN *Size
)
-/*++
-Routine Description:
-
- Finds a variable form List given
- the order number as appears in the List.
-
-Arguments:
-
- Idx - The index of the variable/map to retrieve
- List - List of variables
- Name - Name of the variable/map
- Guid - GUID of the variable/map
- Var - Pointer to the variable/map
- Size - Size of the variable/map in bytes
-
-Returns:
-
- EFI_SUCCESS - Variable is found, OUT parameters are valid
- EFI_NOT_FOUND - Variable is not found, OUT parameters are not valid
-
---*/
{
CHAR16 *MapName;
EFI_GUID *MapGuid;
@@ -214,7 +172,21 @@ Returns: return EFI_NOT_FOUND;
}
+/**
+ Finds a variable form List given the
+ order number as appears in the List.
+
+ @param Id - The ID of the variable/map to retrieve
+ @param List - List of variables
+ @param Name - Name of the variable/map
+ @param Guid - GUID of the variable/map
+ @param Var - Pointer to the variable/map
+ @param Size - Size of the variable/map in bytes
+ @retval EFI_SUCCESS - Variable is found, OUT parameters are valid
+ @retval EFI_NOT_FOUND - Variable is not found, OUT parameters are not valid
+
+**/
EFI_STATUS
EfiLibHiiVariablePackListGetMapById (
IN UINT16 Id,
@@ -224,30 +196,6 @@ EfiLibHiiVariablePackListGetMapById ( OUT VOID **Var,
OUT UINTN *Size
)
-
-/*++
-
-Routine Description:
-
- Finds a variable form List given the
- order number as appears in the List.
-
-Arguments:
-
- Id - The ID of the variable/map to retrieve
- List - List of variables
- Name - Name of the variable/map
- Guid - GUID of the variable/map
- Var - Pointer to the variable/map
- Size - Size of the variable/map in bytes
-
-Returns:
-
- EFI_SUCCESS - Variable is found, OUT parameters are valid
- EFI_NOT_FOUND - Variable is not found, OUT parameters are not valid
-
---*/
-
{
CHAR16 *MapName;
EFI_GUID *MapGuid;
@@ -279,7 +227,18 @@ Returns: return EFI_NOT_FOUND;
}
+/**
+ Finds a variable form EFI_HII_VARIABLE_PACK_LIST given name and GUID.
+ @param List - List of variables
+ @param Name - Name of the variable/map to be found
+ @param Guid - GUID of the variable/map to be found
+ @param Var - Pointer to the variable/map found
+ @param Size - Size of the variable/map in bytes found
+
+ @retval EFI_SUCCESS - variable is found, OUT parameters are valid
+ @retval EFI_NOT_FOUND - variable is not found, OUT parameters are not valid
+**/
EFI_STATUS
EfiLibHiiVariablePackListGetMap (
IN EFI_HII_VARIABLE_PACK_LIST *List,
@@ -289,28 +248,6 @@ EfiLibHiiVariablePackListGetMap ( OUT VOID **Var,
OUT UINTN *Size
)
-
-/*++
-
-Routine Description:
-
- Finds a variable form EFI_HII_VARIABLE_PACK_LIST given name and GUID.
-
-Arguments:
-
- List - List of variables
- Name - Name of the variable/map to be found
- Guid - GUID of the variable/map to be found
- Var - Pointer to the variable/map found
- Size - Size of the variable/map in bytes found
-
-Returns:
-
- EFI_SUCCESS - variable is found, OUT parameters are valid
- EFI_NOT_FOUND - variable is not found, OUT parameters are not valid
-
---*/
-
{
VOID *Map;
UINTN MapSize;
@@ -334,6 +271,21 @@ Returns: return EFI_NOT_FOUND;
}
+/**
+ Finds out if a variable of specific Name/Guid/Size exists in NV.
+ If it does, it will retrieve it into the Var.
+
+ @param Name Parameters of the variable to retrieve. Must match exactly.
+ @param Guid Parameters of the variable to retrieve. Must match exactly.
+ @param Size Parameters of the variable to retrieve. Must match exactly.
+ @param Var Variable will be retrieved into buffer pointed by this pointer.
+ If pointing to NULL, the buffer will be allocated. Caller is responsible for releasing the buffer.
+
+ @retval EFI_SUCCESS - The variable of exact Name/Guid/Size parameters was retrieved and written to Var.
+ @retval EFI_NOT_FOUND - The variable of this Name/Guid was not found in the NV.
+ @retval EFI_LOAD_ERROR - The variable in the NV was of different size, or NV API returned error.
+
+**/
EFI_STATUS
EfiLibHiiVariableRetrieveFromNv (
IN CHAR16 *Name,
@@ -341,22 +293,7 @@ EfiLibHiiVariableRetrieveFromNv ( IN UINTN Size,
OUT VOID **Var
)
-/*++
-
-Routine Description:
- Finds out if a variable of specific Name/Guid/Size exists in NV.
- If it does, it will retrieve it into the Var.
-Arguments:
- Name, Guid, Size - Parameters of the variable to retrieve. Must match exactly.
- Var - Variable will be retrieved into buffer pointed by this pointer.
- If pointing to NULL, the buffer will be allocated. Caller is responsible for releasing the buffer.
-Returns:
- EFI_SUCCESS - The variable of exact Name/Guid/Size parameters was retrieved and written to Var.
- EFI_NOT_FOUND - The variable of this Name/Guid was not found in the NV.
- EFI_LOAD_ERROR - The variable in the NV was of different size, or NV API returned error.
-
---*/
{
EFI_STATUS Status;
UINTN SizeNv;
@@ -394,8 +331,23 @@ Returns: return EFI_SUCCESS;
}
+/**
+ Overrrides the variable with NV data if found.
+ But it only does it if the Name ends with specified Suffix.
+ For example, if Suffix="MyOverride" and the Name="XyzSetupMyOverride",
+ the Suffix matches the end of Name, so the variable will be loaded from NV
+ provided the variable exists and the GUID and Size matches.
+ @param Suffix Suffix the Name should end with.
+ @param Name, Guid, Size Parameters of the variable to retrieve. Must match exactly.
+ @param Var Variable will be retrieved into this buffer.
+ Caller is responsible for providing storage of exactly Size size in bytes.
+ @retval EFI_SUCCESS - The variable was overriden with NV variable of same Name/Guid/Size.
+ @retval EFI_INVALID_PARAMETER - The name of the variable does not end with <Suffix>.
+ @retval EFI_NOT_FOUND - The variable of this Name/Guid was not found in the NV.
+ @retval EFI_LOAD_ERROR - The variable in the NV was of different size, or NV API returned error.
+**/
EFI_STATUS
EfiLibHiiVariableOverrideIfSuffix (
IN CHAR16 *Suffix,
@@ -404,27 +356,6 @@ EfiLibHiiVariableOverrideIfSuffix ( IN UINTN Size,
OUT VOID *Var
)
-/*++
-
-Routine Description:
- Overrrides the variable with NV data if found.
- But it only does it if the Name ends with specified Suffix.
- For example, if Suffix="MyOverride" and the Name="XyzSetupMyOverride",
- the Suffix matches the end of Name, so the variable will be loaded from NV
- provided the variable exists and the GUID and Size matches.
-
-Arguments:
- Suffix - Suffix the Name should end with.
- Name, Guid, Size - Parameters of the variable to retrieve. Must match exactly.
- Var - Variable will be retrieved into this buffer.
- Caller is responsible for providing storage of exactly Size size in bytes.
-Returns:
- EFI_SUCCESS - The variable was overriden with NV variable of same Name/Guid/Size.
- EFI_INVALID_PARAMETER - The name of the variable does not end with <Suffix>.
- EFI_NOT_FOUND - The variable of this Name/Guid was not found in the NV.
- EFI_LOAD_ERROR - The variable in the NV was of different size, or NV API returned error.
-
---*/
{
UINTN StrLength;
UINTN StrLenSuffix;
@@ -440,35 +371,32 @@ Returns: return EfiLibHiiVariableRetrieveFromNv (Name, Guid, Size, &Var);
}
-EFI_STATUS
-EfiLibHiiVariableOverrideBySuffix (
- IN CHAR16 *Suffix,
- IN CHAR16 *Name,
- IN EFI_GUID *Guid,
- IN UINTN Size,
- OUT VOID *Var
- )
-/*++
-
-Routine Description:
+/**
Overrrides the variable with NV data if found.
But it only does it if the NV contains the same variable with Name is appended with Suffix.
For example, if Suffix="MyOverride" and the Name="XyzSetup",
the Suffix will be appended to the end of Name, and the variable with Name="XyzSetupMyOverride"
will be loaded from NV provided the variable exists and the GUID and Size matches.
-Arguments:
- Suffix - Suffix the variable will be appended with.
- Name, Guid, Size - Parameters of the variable to retrieve. Must match exactly.
- Var - Variable will be retrieved into this buffer.
- Caller is responsible for providing storage of exactly Size size in bytes.
+ @param Suffix Suffix the variable will be appended with.
+ @param Name, Guid, Size Parameters of the variable to retrieve. Must match exactly.
+ @param Var Variable will be retrieved into this buffer.
+ Caller is responsible for providing storage of exactly Size size in bytes.
-Returns:
- EFI_SUCCESS - The variable was overriden with NV variable of same Name/Guid/Size.
- EFI_NOT_FOUND - The variable of this Name/Guid was not found in the NV.
- EFI_LOAD_ERROR - The variable in the NV was of different size, or NV API returned error.
+ @retval EFI_SUCCESS - The variable was overriden with NV variable of same Name/Guid/Size.
+ @retval EFI_NOT_FOUND - The variable of this Name/Guid was not found in the NV.
+ @retval EFI_LOAD_ERROR - The variable in the NV was of different size, or NV API returned error.
--*/
+EFI_STATUS
+EfiLibHiiVariableOverrideBySuffix (
+ IN CHAR16 *Suffix,
+ IN CHAR16 *Name,
+ IN EFI_GUID *Guid,
+ IN UINTN Size,
+ OUT VOID *Var
+ )
+
{
EFI_STATUS Status;
CHAR16 *NameSuffixed;
|