mirror of https://github.com/acidanthera/audk.git
correct some coding style issues.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7112 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
ef9273606b
commit
49a049e6d2
|
@ -21,19 +21,19 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
language variable, then use default setting that 'eng' as current
|
language variable, then use default setting that 'eng' as current
|
||||||
language setting.
|
language setting.
|
||||||
|
|
||||||
@param Lang Pointer of system language
|
@param Lang Pointer of system language
|
||||||
|
|
||||||
@return whether sucess to get setting from variable
|
@return whether sucess to get setting from variable
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
GetCurrentLanguage (
|
GetCurrentLanguage (
|
||||||
OUT CHAR16 *Lang
|
OUT CHAR16 *Lang
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
UINTN Size;
|
UINTN Size;
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
CHAR8 Language[4];
|
CHAR8 Language[4];
|
||||||
|
|
||||||
//
|
//
|
||||||
// Getting the system language and placing it into our Global Data
|
// Getting the system language and placing it into our Global Data
|
||||||
|
@ -69,35 +69,35 @@ GetCurrentLanguage (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Add a string to the incoming buffer and return the token and offset data
|
Add a string to the incoming buffer and return the token and offset data.
|
||||||
|
|
||||||
@param StringBuffer The incoming buffer
|
@param StringBuffer The incoming buffer
|
||||||
@param Language Currrent language
|
@param Language Currrent language
|
||||||
@param String The string to be added
|
@param String The string to be added
|
||||||
@param StringToken The index where the string placed
|
@param StringToken The index where the string placed
|
||||||
|
|
||||||
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
||||||
@retval EFI_SUCCESS String successfully added to the incoming buffer
|
@retval EFI_SUCCESS String successfully added to the incoming buffer
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
AddString (
|
AddString (
|
||||||
IN VOID *StringBuffer,
|
IN VOID *StringBuffer,
|
||||||
IN CHAR16 *Language,
|
IN CHAR16 *Language,
|
||||||
IN CHAR16 *String,
|
IN CHAR16 *String,
|
||||||
IN OUT STRING_REF *StringToken
|
IN OUT STRING_REF *StringToken
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_HII_STRING_PACK *StringPack;
|
EFI_HII_STRING_PACK *StringPack;
|
||||||
EFI_HII_STRING_PACK *StringPackBuffer;
|
EFI_HII_STRING_PACK *StringPackBuffer;
|
||||||
VOID *NewBuffer;
|
VOID *NewBuffer;
|
||||||
RELOFST *PackSource;
|
RELOFST *PackSource;
|
||||||
RELOFST *PackDestination;
|
RELOFST *PackDestination;
|
||||||
UINT8 *Source;
|
UINT8 *Source;
|
||||||
UINT8 *Destination;
|
UINT8 *Destination;
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
BOOLEAN Finished;
|
BOOLEAN Finished;
|
||||||
UINTN SizeofLanguage;
|
UINTN SizeofLanguage;
|
||||||
UINTN SizeofString;
|
UINTN SizeofString;
|
||||||
|
|
||||||
StringPack = (EFI_HII_STRING_PACK *) StringBuffer;
|
StringPack = (EFI_HII_STRING_PACK *) StringBuffer;
|
||||||
Finished = FALSE;
|
Finished = FALSE;
|
||||||
|
@ -279,23 +279,23 @@ AddString (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Add op-code data to the FormBuffer
|
Add op-code data to the FormBuffer.
|
||||||
|
|
||||||
@param FormBuffer Form buffer to be inserted to
|
@param FormBuffer Form buffer to be inserted to
|
||||||
@param OpCodeData Op-code data to be inserted
|
@param OpCodeData Op-code data to be inserted
|
||||||
|
|
||||||
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
||||||
@retval EFI_SUCCESS Op-code data successfully inserted
|
@retval EFI_SUCCESS Op-code data successfully inserted
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
AddOpCode (
|
AddOpCode (
|
||||||
IN VOID *FormBuffer,
|
IN VOID *FormBuffer,
|
||||||
IN OUT VOID *OpCodeData
|
IN OUT VOID *OpCodeData
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_HII_PACK_HEADER *NewBuffer;
|
EFI_HII_PACK_HEADER *NewBuffer;
|
||||||
UINT8 *Source;
|
UINT8 *Source;
|
||||||
UINT8 *Destination;
|
UINT8 *Destination;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Pre-allocate a buffer sufficient for us to work on.
|
// Pre-allocate a buffer sufficient for us to work on.
|
||||||
|
@ -385,18 +385,18 @@ AddOpCode (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Get the HII protocol interface
|
Get the HII protocol interface.
|
||||||
|
|
||||||
@param Hii HII protocol interface
|
@param Hii HII protocol interface
|
||||||
|
|
||||||
@return the statue of locating HII protocol
|
@return the statue of locating HII protocol
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
GetHiiInterface (
|
GetHiiInterface (
|
||||||
OUT EFI_HII_PROTOCOL **Hii
|
OUT EFI_HII_PROTOCOL **Hii
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
|
|
||||||
//
|
//
|
||||||
// There should only be one HII protocol
|
// There should only be one HII protocol
|
||||||
|
@ -411,42 +411,41 @@ GetHiiInterface (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Extract information pertaining to the HiiHandle
|
Extract information pertaining to the HiiHandle.
|
||||||
|
|
||||||
@param HiiHandle Hii handle
|
@param HiiHandle Hii handle
|
||||||
@param ImageLength For input, length of DefaultImage;
|
@param ImageLength For input, length of DefaultImage;
|
||||||
For output, length of actually required
|
For output, length of actually required
|
||||||
@param DefaultImage Image buffer prepared by caller
|
@param DefaultImage Image buffer prepared by caller
|
||||||
@param Guid Guid information about the form
|
@param Guid Guid information about the form
|
||||||
|
|
||||||
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
||||||
@retval EFI_BUFFER_TOO_SMALL DefualtImage has no enough ImageLength
|
@retval EFI_BUFFER_TOO_SMALL DefualtImage has no enough ImageLength
|
||||||
@retval EFI_SUCCESS Successfully extract data from Hii database.
|
@retval EFI_SUCCESS Successfully extract data from Hii database.
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
ExtractDataFromHiiHandle (
|
ExtractDataFromHiiHandle (
|
||||||
IN FRAMEWORK_EFI_HII_HANDLE HiiHandle,
|
IN FRAMEWORK_EFI_HII_HANDLE HiiHandle,
|
||||||
IN OUT UINT16 *ImageLength,
|
IN OUT UINT16 *ImageLength,
|
||||||
OUT UINT8 *DefaultImage,
|
OUT UINT8 *DefaultImage,
|
||||||
OUT EFI_GUID *Guid
|
OUT EFI_GUID *Guid
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
EFI_HII_PROTOCOL *Hii;
|
EFI_HII_PROTOCOL *Hii;
|
||||||
UINTN DataLength;
|
UINTN DataLength;
|
||||||
UINT8 *RawData;
|
UINT8 *RawData;
|
||||||
UINT8 *OldData;
|
UINT8 *OldData;
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
UINTN Temp;
|
UINTN Temp;
|
||||||
UINTN SizeOfNvStore;
|
UINTN SizeOfNvStore;
|
||||||
UINTN CachedStart;
|
UINTN CachedStart;
|
||||||
|
|
||||||
DataLength = DEFAULT_FORM_BUFFER_SIZE;
|
DataLength = DEFAULT_FORM_BUFFER_SIZE;
|
||||||
SizeOfNvStore = 0;
|
SizeOfNvStore = 0;
|
||||||
CachedStart = 0;
|
CachedStart = 0;
|
||||||
|
|
||||||
Status = GetHiiInterface (&Hii);
|
Status = GetHiiInterface (&Hii);
|
||||||
|
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
@ -463,7 +462,6 @@ ExtractDataFromHiiHandle (
|
||||||
// Get all the forms associated with this HiiHandle
|
// Get all the forms associated with this HiiHandle
|
||||||
//
|
//
|
||||||
Status = Hii->GetForms (Hii, HiiHandle, 0, &DataLength, RawData);
|
Status = Hii->GetForms (Hii, HiiHandle, 0, &DataLength, RawData);
|
||||||
|
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
gBS->FreePool (RawData);
|
gBS->FreePool (RawData);
|
||||||
|
|
||||||
|
@ -490,6 +488,7 @@ ExtractDataFromHiiHandle (
|
||||||
|
|
||||||
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
||||||
switch (RawData[Index]) {
|
switch (RawData[Index]) {
|
||||||
|
|
||||||
case FRAMEWORK_EFI_IFR_FORM_SET_OP:
|
case FRAMEWORK_EFI_IFR_FORM_SET_OP:
|
||||||
//
|
//
|
||||||
// Copy the GUID information from this handle
|
// Copy the GUID information from this handle
|
||||||
|
@ -538,6 +537,7 @@ ExtractDataFromHiiHandle (
|
||||||
//
|
//
|
||||||
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
||||||
switch (RawData[Index]) {
|
switch (RawData[Index]) {
|
||||||
|
|
||||||
case FRAMEWORK_EFI_IFR_ONE_OF_OP:
|
case FRAMEWORK_EFI_IFR_ONE_OF_OP:
|
||||||
CachedStart = ((FRAMEWORK_EFI_IFR_ONE_OF *) &RawData[Index])->QuestionId;
|
CachedStart = ((FRAMEWORK_EFI_IFR_ONE_OF *) &RawData[Index])->QuestionId;
|
||||||
break;
|
break;
|
||||||
|
@ -578,30 +578,29 @@ ExtractDataFromHiiHandle (
|
||||||
/**
|
/**
|
||||||
Finds HII handle for given pack GUID previously registered with the HII.
|
Finds HII handle for given pack GUID previously registered with the HII.
|
||||||
|
|
||||||
@param HiiProtocol pointer to pointer to HII protocol interface.
|
@param HiiProtocol pointer to pointer to HII protocol interface.
|
||||||
If NULL, the interface will be found but not returned.
|
If NULL, the interface will be found but not returned.
|
||||||
If it points to NULL, the interface will be found and
|
If it points to NULL, the interface will be found and
|
||||||
written back to the pointer that is pointed to.
|
written back to the pointer that is pointed to.
|
||||||
@param Guid The GUID of the pack that registered with the HII.
|
@param Guid The GUID of the pack that registered with the HII.
|
||||||
|
|
||||||
@return Handle to the HII pack previously registered by the memory driver.
|
@return Handle to the HII pack previously registered by the memory driver.
|
||||||
**/
|
**/
|
||||||
FRAMEWORK_EFI_HII_HANDLE
|
FRAMEWORK_EFI_HII_HANDLE
|
||||||
FindHiiHandle (
|
FindHiiHandle (
|
||||||
IN OUT EFI_HII_PROTOCOL **HiiProtocol, OPTIONAL
|
IN OUT EFI_HII_PROTOCOL **HiiProtocol, OPTIONAL
|
||||||
IN EFI_GUID *Guid
|
IN EFI_GUID *Guid
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
|
FRAMEWORK_EFI_HII_HANDLE *HiiHandleBuffer;
|
||||||
FRAMEWORK_EFI_HII_HANDLE *HiiHandleBuffer;
|
FRAMEWORK_EFI_HII_HANDLE HiiHandle;
|
||||||
FRAMEWORK_EFI_HII_HANDLE HiiHandle;
|
UINT16 HiiHandleBufferLength;
|
||||||
UINT16 HiiHandleBufferLength;
|
UINT32 NumberOfHiiHandles;
|
||||||
UINT32 NumberOfHiiHandles;
|
EFI_GUID HiiGuid;
|
||||||
EFI_GUID HiiGuid;
|
EFI_HII_PROTOCOL *HiiProt;
|
||||||
EFI_HII_PROTOCOL *HiiProt;
|
UINT32 Index;
|
||||||
UINT32 Index;
|
UINT16 Length;
|
||||||
UINT16 Length;
|
|
||||||
|
|
||||||
HiiHandle = 0;
|
HiiHandle = 0;
|
||||||
if ((HiiProtocol != NULL) && (*HiiProtocol != NULL)) {
|
if ((HiiProtocol != NULL) && (*HiiProtocol != NULL)) {
|
||||||
|
@ -674,7 +673,6 @@ FindHiiHandle (
|
||||||
ExtractDataFromHiiHandle (HiiHandleBuffer[Index], &Length, NULL, &HiiGuid);
|
ExtractDataFromHiiHandle (HiiHandleBuffer[Index], &Length, NULL, &HiiGuid);
|
||||||
|
|
||||||
if (CompareGuid (&HiiGuid, Guid)) {
|
if (CompareGuid (&HiiGuid, Guid)) {
|
||||||
|
|
||||||
HiiHandle = HiiHandleBuffer[Index];
|
HiiHandle = HiiHandleBuffer[Index];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -690,32 +688,32 @@ lbl_exit:
|
||||||
the reasonable parameters for that FormSet. Values for strings and passwords
|
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.
|
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 HiiHandle Handle of the HII database entry to query
|
||||||
|
@param Results If return Status is EFI_SUCCESS, Results provides valid data
|
||||||
@param Results If return Status is EFI_SUCCESS, Results provides valid data
|
|
||||||
TRUE = NVRAM Data is within parameters
|
TRUE = NVRAM Data is within parameters
|
||||||
FALSE = NVRAM Data is NOT 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
|
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
||||||
|
@retval EFI_SUCCESS Data successfully validated
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
ValidateDataFromHiiHandle (
|
ValidateDataFromHiiHandle (
|
||||||
IN FRAMEWORK_EFI_HII_HANDLE HiiHandle,
|
IN FRAMEWORK_EFI_HII_HANDLE HiiHandle,
|
||||||
OUT BOOLEAN *Results
|
OUT BOOLEAN *Results
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
EFI_HII_PROTOCOL *Hii;
|
EFI_HII_PROTOCOL *Hii;
|
||||||
EFI_GUID Guid;
|
EFI_GUID Guid;
|
||||||
UINT8 *RawData;
|
UINT8 *RawData;
|
||||||
UINT8 *OldData;
|
UINT8 *OldData;
|
||||||
UINTN RawDataLength;
|
UINTN RawDataLength;
|
||||||
UINT8 *VariableData;
|
UINT8 *VariableData;
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
UINTN Temp;
|
UINTN Temp;
|
||||||
UINTN SizeOfNvStore;
|
UINTN SizeOfNvStore;
|
||||||
UINTN CachedStart;
|
UINTN CachedStart;
|
||||||
BOOLEAN GotMatch;
|
BOOLEAN GotMatch;
|
||||||
|
|
||||||
RawDataLength = DEFAULT_FORM_BUFFER_SIZE;
|
RawDataLength = DEFAULT_FORM_BUFFER_SIZE;
|
||||||
SizeOfNvStore = 0;
|
SizeOfNvStore = 0;
|
||||||
|
@ -724,7 +722,6 @@ ValidateDataFromHiiHandle (
|
||||||
*Results = TRUE;
|
*Results = TRUE;
|
||||||
|
|
||||||
Status = GetHiiInterface (&Hii);
|
Status = GetHiiInterface (&Hii);
|
||||||
|
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
@ -741,7 +738,6 @@ ValidateDataFromHiiHandle (
|
||||||
// Get all the forms associated with this HiiHandle
|
// Get all the forms associated with this HiiHandle
|
||||||
//
|
//
|
||||||
Status = Hii->GetForms (Hii, HiiHandle, 0, &RawDataLength, RawData);
|
Status = Hii->GetForms (Hii, HiiHandle, 0, &RawDataLength, RawData);
|
||||||
|
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
gBS->FreePool (RawData);
|
gBS->FreePool (RawData);
|
||||||
|
|
||||||
|
@ -777,6 +773,7 @@ ValidateDataFromHiiHandle (
|
||||||
|
|
||||||
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
||||||
switch (RawData[Index]) {
|
switch (RawData[Index]) {
|
||||||
|
|
||||||
case FRAMEWORK_EFI_IFR_FORM_SET_OP:
|
case FRAMEWORK_EFI_IFR_FORM_SET_OP:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -856,6 +853,7 @@ ValidateDataFromHiiHandle (
|
||||||
//
|
//
|
||||||
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
for (Index = 0; RawData[Index] != FRAMEWORK_EFI_IFR_END_FORM_SET_OP;) {
|
||||||
switch (RawData[Index]) {
|
switch (RawData[Index]) {
|
||||||
|
|
||||||
case FRAMEWORK_EFI_IFR_ONE_OF_OP:
|
case FRAMEWORK_EFI_IFR_ONE_OF_OP:
|
||||||
//
|
//
|
||||||
// A one_of has no data, its the option that does - cache the storage Id
|
// A one_of has no data, its the option that does - cache the storage Id
|
||||||
|
|
|
@ -20,33 +20,33 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
The form package is a collection of forms that are intended to describe the pages that will be
|
The form package is a collection of forms that are intended to describe the pages that will be
|
||||||
displayed to the user.
|
displayed to the user.
|
||||||
|
|
||||||
@param FormSetTitle Title of formset
|
@param FormSetTitle Title of formset
|
||||||
@param Guid Guid of formset
|
@param Guid Guid of formset
|
||||||
@param Class Class of formset
|
@param Class Class of formset
|
||||||
@param SubClass Sub class of formset
|
@param SubClass Sub class of formset
|
||||||
@param FormBuffer Pointer of the formset created
|
@param FormBuffer Pointer of the formset created
|
||||||
@param StringBuffer Pointer of FormSetTitile string created
|
@param StringBuffer Pointer of FormSetTitile string created
|
||||||
|
|
||||||
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
@retval EFI_OUT_OF_RESOURCES No enough buffer to allocate
|
||||||
@retval EFI_SUCCESS Formset successfully created
|
@retval EFI_SUCCESS Formset successfully created
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateFormSet (
|
CreateFormSet (
|
||||||
IN CHAR16 *FormSetTitle,
|
IN CHAR16 *FormSetTitle,
|
||||||
IN EFI_GUID *Guid,
|
IN EFI_GUID *Guid,
|
||||||
IN UINT8 Class,
|
IN UINT8 Class,
|
||||||
IN UINT8 SubClass,
|
IN UINT8 SubClass,
|
||||||
IN OUT VOID **FormBuffer,
|
IN OUT VOID **FormBuffer,
|
||||||
IN OUT VOID **StringBuffer
|
IN OUT VOID **StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
EFI_HII_IFR_PACK IfrPack;
|
EFI_HII_IFR_PACK IfrPack;
|
||||||
FRAMEWORK_EFI_IFR_FORM_SET FormSet;
|
FRAMEWORK_EFI_IFR_FORM_SET FormSet;
|
||||||
FRAMEWORK_EFI_IFR_END_FORM_SET EndFormSet;
|
FRAMEWORK_EFI_IFR_END_FORM_SET EndFormSet;
|
||||||
UINT8 *Destination;
|
UINT8 *Destination;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Pre-allocate a buffer sufficient for us to work from.
|
// Pre-allocate a buffer sufficient for us to work from.
|
||||||
|
@ -119,31 +119,31 @@ CreateFormSet (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a form
|
Create a form.
|
||||||
A form is the encapsulation of what amounts to a browser page. The header defines a FormId,
|
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
|
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
|
string to be used as the title for the form
|
||||||
|
|
||||||
@param FormTitle Title of the form
|
@param FormTitle Title of the form
|
||||||
@param FormId Id of the form
|
@param FormId Id of the form
|
||||||
@param FormBuffer Pointer of the form created
|
@param FormBuffer Pointer of the form created
|
||||||
@param StringBuffer Pointer of FormTitil string created
|
@param StringBuffer Pointer of FormTitil string created
|
||||||
|
|
||||||
@retval EFI_SUCCESS Form successfully created
|
@retval EFI_SUCCESS Form successfully created
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateForm (
|
CreateForm (
|
||||||
IN CHAR16 *FormTitle,
|
IN CHAR16 *FormTitle,
|
||||||
IN UINT16 FormId,
|
IN UINT16 FormId,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
FRAMEWORK_EFI_IFR_FORM Form;
|
FRAMEWORK_EFI_IFR_FORM Form;
|
||||||
FRAMEWORK_EFI_IFR_END_FORM EndForm;
|
FRAMEWORK_EFI_IFR_END_FORM EndForm;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Obtain current language value
|
// Obtain current language value
|
||||||
|
@ -181,23 +181,23 @@ CreateForm (
|
||||||
Subtitle strings are intended to be used by authors to separate sections of questions into semantic
|
Subtitle strings are intended to be used by authors to separate sections of questions into semantic
|
||||||
groups.
|
groups.
|
||||||
|
|
||||||
@param SubTitle Sub title to be created
|
@param SubTitle Sub title to be created
|
||||||
@param FormBuffer Where this subtitle to add to
|
@param FormBuffer Where this subtitle to add to
|
||||||
@param StringBuffer String buffer created for subtitle
|
@param StringBuffer String buffer created for subtitle
|
||||||
|
|
||||||
@retval EFI_SUCCESS Subtitle successfully created
|
@retval EFI_SUCCESS Subtitle successfully created
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateSubTitle (
|
CreateSubTitle (
|
||||||
IN CHAR16 *SubTitle,
|
IN CHAR16 *SubTitle,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
FRAMEWORK_EFI_IFR_SUBTITLE Subtitle;
|
FRAMEWORK_EFI_IFR_SUBTITLE Subtitle;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Obtain current language value
|
// Obtain current language value
|
||||||
|
@ -224,31 +224,31 @@ CreateSubTitle (
|
||||||
Unlike HTML, text is simply another tag.
|
Unlike HTML, text is simply another tag.
|
||||||
This tag type enables IFR to be more easily localized.
|
This tag type enables IFR to be more easily localized.
|
||||||
|
|
||||||
@param String - First string of the text
|
@param String First string of the text
|
||||||
@param String2 - Second string of the text
|
@param String2 Second string of the text
|
||||||
@param String3 - Help string of the text
|
@param String3 Help string of the text
|
||||||
@param Flags - Flag of the text
|
@param Flags Flag of the text
|
||||||
@param Key - Key of the text
|
@param Key Key of the text
|
||||||
@param FormBuffer - The form where this text adds to
|
@param FormBuffer The form where this text adds to
|
||||||
@param StringBuffer - String buffer created for String, String2 and String3
|
@param StringBuffer String buffer created for String, String2 and String3
|
||||||
|
|
||||||
@retval EFI_SUCCESS - Text successfully created
|
@retval EFI_SUCCESS Text successfully created
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateText (
|
CreateText (
|
||||||
IN CHAR16 *String,
|
IN CHAR16 *String,
|
||||||
IN CHAR16 *String2,
|
IN CHAR16 *String2,
|
||||||
IN CHAR16 *String3,
|
IN CHAR16 *String3,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
FRAMEWORK_EFI_IFR_TEXT Text;
|
FRAMEWORK_EFI_IFR_TEXT Text;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Obtain current language value
|
// Obtain current language value
|
||||||
|
@ -299,27 +299,27 @@ CreateText (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a hyperlink
|
Create a hyperlink.
|
||||||
|
|
||||||
@param FormId Form ID of the hyperlink
|
@param FormId Form ID of the hyperlink
|
||||||
@param Prompt Prompt of the hyperlink
|
@param Prompt Prompt of the hyperlink
|
||||||
@param FormBuffer The form where this hyperlink adds to
|
@param FormBuffer The form where this hyperlink adds to
|
||||||
@param StringBuffer String buffer created for Prompt
|
@param StringBuffer String buffer created for Prompt
|
||||||
|
|
||||||
@retval EFI_SUCCESS Hyperlink successfully created
|
@retval EFI_SUCCESS Hyperlink successfully created
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateGoto (
|
CreateGoto (
|
||||||
IN UINT16 FormId,
|
IN UINT16 FormId,
|
||||||
IN CHAR16 *Prompt,
|
IN CHAR16 *Prompt,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
FRAMEWORK_EFI_IFR_REF Hyperlink;
|
FRAMEWORK_EFI_IFR_REF Hyperlink;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Obtain current language value
|
// Obtain current language value
|
||||||
|
@ -346,37 +346,37 @@ CreateGoto (
|
||||||
Create a one-of question with a set of options to choose from. The
|
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.
|
OptionsList is a pointer to a null-terminated list of option descriptions.
|
||||||
|
|
||||||
@param QuestionId - Question ID of the one-of box
|
@param QuestionId Question ID of the one-of box
|
||||||
@param DataWidth - DataWidth of the one-of box
|
@param DataWidth DataWidth of the one-of box
|
||||||
@param Prompt - Prompt of the one-of box
|
@param Prompt Prompt of the one-of box
|
||||||
@param Help - Help 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 OptionsList Each string in it is an option of the one-of box
|
||||||
@param OptionCount - Option string count
|
@param OptionCount Option string count
|
||||||
@param FormBuffer - The form where this one-of box adds to
|
@param FormBuffer The form where this one-of box adds to
|
||||||
@param StringBuffer - String buffer created for Prompt, Help and Option strings
|
@param StringBuffer String buffer created for Prompt, Help and Option strings
|
||||||
|
|
||||||
@retval EFI_DEVICE_ERROR - DataWidth > 2
|
@retval EFI_DEVICE_ERROR DataWidth > 2
|
||||||
@retval EFI_SUCCESS - One-Of box successfully created.
|
@retval EFI_SUCCESS One-Of box successfully created.
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateOneOf (
|
CreateOneOf (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN CHAR16 *Prompt,
|
IN CHAR16 *Prompt,
|
||||||
IN CHAR16 *Help,
|
IN CHAR16 *Help,
|
||||||
IN IFR_OPTION *OptionsList,
|
IN IFR_OPTION *OptionsList,
|
||||||
IN UINTN OptionCount,
|
IN UINTN OptionCount,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
FRAMEWORK_EFI_IFR_ONE_OF OneOf;
|
FRAMEWORK_EFI_IFR_ONE_OF OneOf;
|
||||||
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OneOfOption;
|
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OneOfOption;
|
||||||
FRAMEWORK_EFI_IFR_END_ONE_OF EndOneOf;
|
FRAMEWORK_EFI_IFR_END_ONE_OF EndOneOf;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// We do not create op-code storage widths for one-of in excess of 16 bits for now
|
// We do not create op-code storage widths for one-of in excess of 16 bits for now
|
||||||
|
@ -459,36 +459,36 @@ CreateOneOf (
|
||||||
Create a one-of question with a set of options to choose from. The
|
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.
|
OptionsList is a pointer to a null-terminated list of option descriptions.
|
||||||
|
|
||||||
@param QuestionId - Question ID of the ordered list
|
@param QuestionId Question ID of the ordered list
|
||||||
@param MaxEntries - MaxEntries of the ordered list
|
@param MaxEntries MaxEntries of the ordered list
|
||||||
@param Prompt - Prompt of the ordered list
|
@param Prompt Prompt of the ordered list
|
||||||
@param Help - Help 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 OptionsList Each string in it is an option of the ordered list
|
||||||
@param OptionCount - Option string count
|
@param OptionCount Option string count
|
||||||
@param FormBuffer - The form where this ordered list adds to
|
@param FormBuffer The form where this ordered list adds to
|
||||||
@param StringBuffer - String buffer created for Prompt, Help and Option strings
|
@param StringBuffer String buffer created for Prompt, Help and Option strings
|
||||||
|
|
||||||
@retval EFI_SUCCESS - Ordered list successfully created.
|
@retval EFI_SUCCESS Ordered list successfully created.
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateOrderedList (
|
CreateOrderedList (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 MaxEntries,
|
IN UINT8 MaxEntries,
|
||||||
IN CHAR16 *Prompt,
|
IN CHAR16 *Prompt,
|
||||||
IN CHAR16 *Help,
|
IN CHAR16 *Help,
|
||||||
IN IFR_OPTION *OptionsList,
|
IN IFR_OPTION *OptionsList,
|
||||||
IN UINTN OptionCount,
|
IN UINTN OptionCount,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
FRAMEWORK_EFI_IFR_ORDERED_LIST OrderedList;
|
FRAMEWORK_EFI_IFR_ORDERED_LIST OrderedList;
|
||||||
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OrderedListOption;
|
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OrderedListOption;
|
||||||
FRAMEWORK_EFI_IFR_END_ONE_OF EndOrderedList;
|
FRAMEWORK_EFI_IFR_END_ONE_OF EndOrderedList;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Obtain current language value
|
// Obtain current language value
|
||||||
|
@ -557,34 +557,34 @@ CreateOrderedList (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a checkbox
|
Create a checkbox.
|
||||||
|
|
||||||
@param QuestionId Question ID of the check box
|
@param QuestionId Question ID of the check box
|
||||||
@param DataWidth DataWidth of the check box
|
@param DataWidth DataWidth of the check box
|
||||||
@param Prompt Prompt of the check box
|
@param Prompt Prompt of the check box
|
||||||
@param Help Help of the check box
|
@param Help Help of the check box
|
||||||
@param Flags Flags of the check box
|
@param Flags Flags of the check box
|
||||||
@param FormBuffer The form where this check box adds to
|
@param FormBuffer The form where this check box adds to
|
||||||
@param StringBuffer String buffer created for Prompt and Help.
|
@param StringBuffer String buffer created for Prompt and Help.
|
||||||
|
|
||||||
@retval EFI_DEVICE_ERROR DataWidth > 1
|
@retval EFI_DEVICE_ERROR DataWidth > 1
|
||||||
@retval EFI_SUCCESS Check box successfully created
|
@retval EFI_SUCCESS Check box successfully created
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateCheckBox (
|
CreateCheckBox (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN CHAR16 *Prompt,
|
IN CHAR16 *Prompt,
|
||||||
IN CHAR16 *Help,
|
IN CHAR16 *Help,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
FRAMEWORK_EFI_IFR_CHECKBOX CheckBox;
|
FRAMEWORK_EFI_IFR_CHECKBOX CheckBox;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// We do not create op-code storage widths for checkbox in excess of 8 bits for now
|
// We do not create op-code storage widths for checkbox in excess of 8 bits for now
|
||||||
|
@ -633,42 +633,42 @@ CreateCheckBox (
|
||||||
/**
|
/**
|
||||||
Create a numeric
|
Create a numeric
|
||||||
|
|
||||||
@param QuestionId Question ID of the numeric
|
@param QuestionId Question ID of the numeric
|
||||||
@param DataWidth DataWidth of the numeric
|
@param DataWidth DataWidth of the numeric
|
||||||
@param Prompt Prompt of the numeric
|
@param Prompt Prompt of the numeric
|
||||||
@param Help Help of the numeric
|
@param Help Help of the numeric
|
||||||
@param Minimum Minumun boundary of the numeric
|
@param Minimum Minumun boundary of the numeric
|
||||||
@param Maximum Maximum boundary of the numeric
|
@param Maximum Maximum boundary of the numeric
|
||||||
@param Step Step of the numeric
|
@param Step Step of the numeric
|
||||||
@param Default Default value
|
@param Default Default value
|
||||||
@param Flags Flags of the numeric
|
@param Flags Flags of the numeric
|
||||||
@param Key Key of the numeric
|
@param Key Key of the numeric
|
||||||
@param FormBuffer The form where this numeric adds to
|
@param FormBuffer The form where this numeric adds to
|
||||||
@param StringBuffer String buffer created for Prompt and Help.
|
@param StringBuffer String buffer created for Prompt and Help.
|
||||||
|
|
||||||
@retval EFI_DEVICE_ERROR DataWidth > 2
|
@retval EFI_DEVICE_ERROR DataWidth > 2
|
||||||
@retval EFI_SUCCESS Numeric is successfully created
|
@retval EFI_SUCCESS Numeric is successfully created
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateNumeric (
|
CreateNumeric (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN CHAR16 *Prompt,
|
IN CHAR16 *Prompt,
|
||||||
IN CHAR16 *Help,
|
IN CHAR16 *Help,
|
||||||
IN UINT16 Minimum,
|
IN UINT16 Minimum,
|
||||||
IN UINT16 Maximum,
|
IN UINT16 Maximum,
|
||||||
IN UINT16 Step,
|
IN UINT16 Step,
|
||||||
IN UINT16 Default,
|
IN UINT16 Default,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
FRAMEWORK_EFI_IFR_NUMERIC Numeric;
|
FRAMEWORK_EFI_IFR_NUMERIC Numeric;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// We do not create op-code storage widths for numerics in excess of 16 bits for now
|
// We do not create op-code storage widths for numerics in excess of 16 bits for now
|
||||||
|
@ -720,38 +720,39 @@ CreateNumeric (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a string
|
Create a string.
|
||||||
|
|
||||||
@param QuestionId - Question ID of the string
|
@param QuestionId Question ID of the string
|
||||||
@param DataWidth - DataWidth of the string
|
@param DataWidth DataWidth of the string
|
||||||
@param Prompt - Prompt of the string
|
@param Prompt Prompt of the string
|
||||||
@param Help - Help of the string
|
@param Help Help of the string
|
||||||
@param MinSize - Min size boundary of the string
|
@param MinSize Min size boundary of the string
|
||||||
@param MaxSize - Max size boundary of the string
|
@param MaxSize Max size boundary of the string
|
||||||
@param Flags - Flags of the string
|
@param Flags Flags of the string
|
||||||
@param Key - Key of the string
|
@param Key Key of the string
|
||||||
@param FormBuffer - The form where this string adds to
|
@param FormBuffer The form where this string adds to
|
||||||
@param StringBuffer - String buffer created for Prompt and Help.
|
@param StringBuffer String buffer created for Prompt and Help.
|
||||||
@retval EFI_SUCCESS - String successfully created.
|
|
||||||
|
@retval EFI_SUCCESS String successfully created.
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateString (
|
CreateString (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN CHAR16 *Prompt,
|
IN CHAR16 *Prompt,
|
||||||
IN CHAR16 *Help,
|
IN CHAR16 *Help,
|
||||||
IN UINT8 MinSize,
|
IN UINT8 MinSize,
|
||||||
IN UINT8 MaxSize,
|
IN UINT8 MaxSize,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer,
|
IN OUT VOID *FormBuffer,
|
||||||
IN OUT VOID *StringBuffer
|
IN OUT VOID *StringBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
FRAMEWORK_EFI_IFR_STRING String;
|
FRAMEWORK_EFI_IFR_STRING String;
|
||||||
CHAR16 CurrentLanguage[4];
|
CHAR16 CurrentLanguage[4];
|
||||||
STRING_REF StringToken;
|
STRING_REF StringToken;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Obtain current language value
|
// Obtain current language value
|
||||||
|
|
|
@ -11,29 +11,28 @@ http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
|
|
||||||
|
|
||||||
**/
|
**/
|
||||||
|
|
||||||
#include "IfrSupportLibInternal.h"
|
#include "IfrSupportLibInternal.h"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a SubTitle opcode independent of string creation
|
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
|
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
|
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)
|
location to pre-defined forms in HII)
|
||||||
|
|
||||||
@param StringToken StringToken of the subtitle
|
@param StringToken StringToken of the subtitle
|
||||||
@param FormBuffer Output of subtitle as a form
|
@param FormBuffer Output of subtitle as a form
|
||||||
|
|
||||||
@retval EFI_SUCCESS Subtitle created to be a form
|
@retval EFI_SUCCESS Subtitle created to be a form
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateSubTitleOpCode (
|
CreateSubTitleOpCode (
|
||||||
IN STRING_REF StringToken,
|
IN STRING_REF StringToken,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
FRAMEWORK_EFI_IFR_SUBTITLE Subtitle;
|
FRAMEWORK_EFI_IFR_SUBTITLE Subtitle;
|
||||||
|
|
||||||
Subtitle.Header.OpCode = FRAMEWORK_EFI_IFR_SUBTITLE_OP;
|
Subtitle.Header.OpCode = FRAMEWORK_EFI_IFR_SUBTITLE_OP;
|
||||||
Subtitle.Header.Length = sizeof (FRAMEWORK_EFI_IFR_SUBTITLE);
|
Subtitle.Header.Length = sizeof (FRAMEWORK_EFI_IFR_SUBTITLE);
|
||||||
|
@ -44,31 +43,32 @@ CreateSubTitleOpCode (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a Text opcode independent of string creation
|
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
|
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
|
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)
|
location to pre-defined forms in HII)
|
||||||
|
|
||||||
@param StringToken - First string token of the text
|
@param StringToken First string token of the text
|
||||||
@param StringTokenTwo - Second string token of the text
|
@param StringTokenTwo Second string token of the text
|
||||||
@param StringTokenThree - Help string token of the text
|
@param StringTokenThree Help string token of the text
|
||||||
@param Flags - Flag of the text
|
@param Flags Flag of the text
|
||||||
@param Key - Key of the text
|
@param Key Key of the text
|
||||||
@param FormBuffer - Output of text as a form
|
@param FormBuffer Output of text as a form
|
||||||
|
|
||||||
@retval EFI_SUCCESS - Text created to be a form
|
@retval EFI_SUCCESS Text created to be a form
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateTextOpCode (
|
CreateTextOpCode (
|
||||||
IN STRING_REF StringToken,
|
IN STRING_REF StringToken,
|
||||||
IN STRING_REF StringTokenTwo,
|
IN STRING_REF StringTokenTwo,
|
||||||
IN STRING_REF StringTokenThree,
|
IN STRING_REF StringTokenThree,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
FRAMEWORK_EFI_IFR_TEXT Text;
|
FRAMEWORK_EFI_IFR_TEXT Text;
|
||||||
|
|
||||||
Text.Header.OpCode = FRAMEWORK_EFI_IFR_TEXT_OP;
|
Text.Header.OpCode = FRAMEWORK_EFI_IFR_TEXT_OP;
|
||||||
Text.Header.Length = sizeof (FRAMEWORK_EFI_IFR_TEXT);
|
Text.Header.Length = sizeof (FRAMEWORK_EFI_IFR_TEXT);
|
||||||
|
@ -85,32 +85,32 @@ CreateTextOpCode (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a hyperlink opcode independent of string creation
|
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
|
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
|
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)
|
location to pre-defined forms in HII)
|
||||||
|
|
||||||
|
@param FormId Form ID of the hyperlink
|
||||||
@param FormId - Form ID of the hyperlink
|
@param StringToken Prompt string token of the hyperlink
|
||||||
@param StringToken - Prompt string token of the hyperlink
|
@param StringTokenTwo Help string token of the hyperlink
|
||||||
@param StringTokenTwo - Help string token of the hyperlink
|
@param Flags Flags of the hyperlink
|
||||||
@param Flags - Flags of the hyperlink
|
@param Key Key of the hyperlink
|
||||||
@param Key - Key of the hyperlink
|
@param FormBuffer Output of hyperlink as a form
|
||||||
@param FormBuffer - Output of hyperlink as a form
|
|
||||||
@retval EFI_SUCCESS - Hyperlink created to be a form
|
@retval EFI_SUCCESS Hyperlink created to be a form
|
||||||
--*/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateGotoOpCode (
|
CreateGotoOpCode (
|
||||||
IN UINT16 FormId,
|
IN UINT16 FormId,
|
||||||
IN STRING_REF StringToken,
|
IN STRING_REF StringToken,
|
||||||
IN STRING_REF StringTokenTwo,
|
IN STRING_REF StringTokenTwo,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
FRAMEWORK_EFI_IFR_REF Hyperlink;
|
FRAMEWORK_EFI_IFR_REF Hyperlink;
|
||||||
|
|
||||||
Hyperlink.Header.OpCode = FRAMEWORK_EFI_IFR_REF_OP;
|
Hyperlink.Header.OpCode = FRAMEWORK_EFI_IFR_REF_OP;
|
||||||
Hyperlink.Header.Length = sizeof (FRAMEWORK_EFI_IFR_REF);
|
Hyperlink.Header.Length = sizeof (FRAMEWORK_EFI_IFR_REF);
|
||||||
|
@ -134,34 +134,34 @@ CreateGotoOpCode (
|
||||||
OptionsList is a pointer to a null-terminated list of option descriptions. Ensure that OptionsList[x].StringToken
|
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.
|
has been filled in since this routine will not generate StringToken values.
|
||||||
|
|
||||||
@param QuestionId - Question ID of the one-of box
|
@param QuestionId Question ID of the one-of box
|
||||||
@param DataWidth - DataWidth of the one-of box
|
@param DataWidth DataWidth of the one-of box
|
||||||
@param PromptToken - Prompt string token 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 HelpToken Help string token of the one-of box
|
||||||
@param OptionsList - Each string in it is an option 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 OptionCount Option string count
|
||||||
@param FormBuffer - Output of One-Of box as a form
|
@param FormBuffer Output of One-Of box as a form
|
||||||
|
|
||||||
|
|
||||||
@retval EFI_SUCCESS - One-Of box created to be a form
|
@retval EFI_SUCCESS One-Of box created to be a form
|
||||||
@retval EFI_DEVICE_ERROR - DataWidth > 2
|
@retval EFI_DEVICE_ERROR DataWidth > 2
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateOneOfOpCode (
|
CreateOneOfOpCode (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN STRING_REF PromptToken,
|
IN STRING_REF PromptToken,
|
||||||
IN STRING_REF HelpToken,
|
IN STRING_REF HelpToken,
|
||||||
IN IFR_OPTION *OptionsList,
|
IN IFR_OPTION *OptionsList,
|
||||||
IN UINTN OptionCount,
|
IN UINTN OptionCount,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
FRAMEWORK_EFI_IFR_ONE_OF OneOf;
|
FRAMEWORK_EFI_IFR_ONE_OF OneOf;
|
||||||
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OneOfOption;
|
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OneOfOption;
|
||||||
FRAMEWORK_EFI_IFR_END_ONE_OF EndOneOf;
|
FRAMEWORK_EFI_IFR_END_ONE_OF EndOneOf;
|
||||||
UINT8 *LocalBuffer;
|
UINT8 *LocalBuffer;
|
||||||
|
|
||||||
//
|
//
|
||||||
// We do not create op-code storage widths for one-of in excess of 16 bits for now
|
// We do not create op-code storage widths for one-of in excess of 16 bits for now
|
||||||
|
@ -175,9 +175,7 @@ CreateOneOfOpCode (
|
||||||
OneOf.QuestionId = QuestionId;
|
OneOf.QuestionId = QuestionId;
|
||||||
OneOf.Width = DataWidth;
|
OneOf.Width = DataWidth;
|
||||||
OneOf.Prompt = PromptToken;
|
OneOf.Prompt = PromptToken;
|
||||||
|
|
||||||
OneOf.Help = HelpToken;
|
OneOf.Help = HelpToken;
|
||||||
|
|
||||||
LocalBuffer = (UINT8 *) FormBuffer;
|
LocalBuffer = (UINT8 *) FormBuffer;
|
||||||
|
|
||||||
CopyMem (LocalBuffer, &OneOf, sizeof (FRAMEWORK_EFI_IFR_ONE_OF));
|
CopyMem (LocalBuffer, &OneOf, sizeof (FRAMEWORK_EFI_IFR_ONE_OF));
|
||||||
|
@ -217,41 +215,39 @@ CreateOneOfOpCode (
|
||||||
OptionsList is a pointer to a null-terminated list of option descriptions. Ensure that OptionsList[x].StringToken
|
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.
|
has been filled in since this routine will not generate StringToken values.
|
||||||
|
|
||||||
@param QuestionId - Question ID of the ordered list
|
@param QuestionId Question ID of the ordered list
|
||||||
@param MaxEntries - MaxEntries of the ordered list
|
@param MaxEntries MaxEntries of the ordered list
|
||||||
@param PromptToken - Prompt string token of the ordered list
|
@param PromptToken Prompt string token of the ordered list
|
||||||
@param HelpToken - Help 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 OptionsList Each string in it is an option of the ordered list
|
||||||
@param OptionCount - Option string count
|
@param OptionCount Option string count
|
||||||
@param FormBuffer - Output of ordered list as a form
|
@param FormBuffer Output of ordered list as a form
|
||||||
|
|
||||||
@retval EFI_SUCCESS - Ordered list created to be a form
|
@retval EFI_SUCCESS Ordered list created to be a form
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateOrderedListOpCode (
|
CreateOrderedListOpCode (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 MaxEntries,
|
IN UINT8 MaxEntries,
|
||||||
IN STRING_REF PromptToken,
|
IN STRING_REF PromptToken,
|
||||||
IN STRING_REF HelpToken,
|
IN STRING_REF HelpToken,
|
||||||
IN IFR_OPTION *OptionsList,
|
IN IFR_OPTION *OptionsList,
|
||||||
IN UINTN OptionCount,
|
IN UINTN OptionCount,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
FRAMEWORK_EFI_IFR_ORDERED_LIST OrderedList;
|
FRAMEWORK_EFI_IFR_ORDERED_LIST OrderedList;
|
||||||
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OrderedListOption;
|
FRAMEWORK_EFI_IFR_ONE_OF_OPTION OrderedListOption;
|
||||||
FRAMEWORK_EFI_IFR_END_ONE_OF EndOrderedList;
|
FRAMEWORK_EFI_IFR_END_ONE_OF EndOrderedList;
|
||||||
UINT8 *LocalBuffer;
|
UINT8 *LocalBuffer;
|
||||||
|
|
||||||
OrderedList.Header.OpCode = FRAMEWORK_EFI_IFR_ORDERED_LIST_OP;
|
OrderedList.Header.OpCode = FRAMEWORK_EFI_IFR_ORDERED_LIST_OP;
|
||||||
OrderedList.Header.Length = sizeof (FRAMEWORK_EFI_IFR_ORDERED_LIST);
|
OrderedList.Header.Length = sizeof (FRAMEWORK_EFI_IFR_ORDERED_LIST);
|
||||||
OrderedList.QuestionId = QuestionId;
|
OrderedList.QuestionId = QuestionId;
|
||||||
OrderedList.MaxEntries = MaxEntries;
|
OrderedList.MaxEntries = MaxEntries;
|
||||||
OrderedList.Prompt = PromptToken;
|
OrderedList.Prompt = PromptToken;
|
||||||
|
|
||||||
OrderedList.Help = HelpToken;
|
OrderedList.Help = HelpToken;
|
||||||
|
|
||||||
LocalBuffer = (UINT8 *) FormBuffer;
|
LocalBuffer = (UINT8 *) FormBuffer;
|
||||||
|
|
||||||
CopyMem (LocalBuffer, &OrderedList, sizeof (FRAMEWORK_EFI_IFR_ORDERED_LIST));
|
CopyMem (LocalBuffer, &OrderedList, sizeof (FRAMEWORK_EFI_IFR_ORDERED_LIST));
|
||||||
|
@ -283,35 +279,34 @@ CreateOrderedListOpCode (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a checkbox opcode independent of string creation
|
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
|
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
|
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)
|
location to pre-defined forms in HII)
|
||||||
|
|
||||||
@param QuestionId - Question ID of the check box
|
@param QuestionId Question ID of the check box
|
||||||
@param DataWidth - DataWidth of the check box
|
@param DataWidth DataWidth of the check box
|
||||||
@param PromptToken - Prompt string token of the check box
|
@param PromptToken Prompt string token of the check box
|
||||||
@param HelpToken - Help string token of the check box
|
@param HelpToken Help string token of the check box
|
||||||
@param Flags - Flags of the check box
|
@param Flags Flags of the check box
|
||||||
@param Key - Key of the check box
|
@param Key Key of the check box
|
||||||
@param FormBuffer - Output of the check box as a form
|
@param FormBuffer Output of the check box as a form
|
||||||
|
|
||||||
@retval EFI_SUCCESS - Checkbox created to be a form
|
@retval EFI_SUCCESS Checkbox created to be a form
|
||||||
@retval EFI_DEVICE_ERROR - DataWidth > 1
|
@retval EFI_DEVICE_ERROR DataWidth > 1
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateCheckBoxOpCode (
|
CreateCheckBoxOpCode (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN STRING_REF PromptToken,
|
IN STRING_REF PromptToken,
|
||||||
IN STRING_REF HelpToken,
|
IN STRING_REF HelpToken,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
FRAMEWORK_EFI_IFR_CHECKBOX CheckBox;
|
FRAMEWORK_EFI_IFR_CHECKBOX CheckBox;
|
||||||
|
|
||||||
//
|
//
|
||||||
// We do not create op-code storage widths for checkbox in excess of 8 bits for now
|
// We do not create op-code storage widths for checkbox in excess of 8 bits for now
|
||||||
|
@ -325,7 +320,6 @@ CreateCheckBoxOpCode (
|
||||||
CheckBox.QuestionId = QuestionId;
|
CheckBox.QuestionId = QuestionId;
|
||||||
CheckBox.Width = DataWidth;
|
CheckBox.Width = DataWidth;
|
||||||
CheckBox.Prompt = PromptToken;
|
CheckBox.Prompt = PromptToken;
|
||||||
|
|
||||||
CheckBox.Help = HelpToken;
|
CheckBox.Help = HelpToken;
|
||||||
CheckBox.Flags = Flags;
|
CheckBox.Flags = Flags;
|
||||||
CheckBox.Key = Key;
|
CheckBox.Key = Key;
|
||||||
|
@ -336,44 +330,43 @@ CreateCheckBoxOpCode (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a numeric opcode independent of string creation
|
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
|
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
|
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)
|
location to pre-defined forms in HII)
|
||||||
|
|
||||||
@param QuestionId - Question ID of the numeric
|
@param QuestionId Question ID of the numeric
|
||||||
@param DataWidth - DataWidth of the numeric
|
@param DataWidth DataWidth of the numeric
|
||||||
@param PromptToken - Prompt string token of the numeric
|
@param PromptToken Prompt string token of the numeric
|
||||||
@param HelpToken - Help string token of the numeric
|
@param HelpToken Help string token of the numeric
|
||||||
@param Minimum - Minumun boundary of the numeric
|
@param Minimum Minumun boundary of the numeric
|
||||||
@param Maximum - Maximum boundary of the numeric
|
@param Maximum Maximum boundary of the numeric
|
||||||
@param Step - Step of the numeric
|
@param Step Step of the numeric
|
||||||
@param Default - Default value of the numeric
|
@param Default Default value of the numeric
|
||||||
@param Flags - Flags of the numeric
|
@param Flags Flags of the numeric
|
||||||
@param Key - Key of the numeric
|
@param Key Key of the numeric
|
||||||
@param FormBuffer - Output of the numeric as a form
|
@param FormBuffer Output of the numeric as a form
|
||||||
|
|
||||||
|
|
||||||
@retval EFI_SUCCESS - The numeric created to be a form.
|
@retval EFI_SUCCESS The numeric created to be a form.
|
||||||
@retval EFI_DEVICE_ERROR - DataWidth > 2
|
@retval EFI_DEVICE_ERROR DataWidth > 2
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateNumericOpCode (
|
CreateNumericOpCode (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN STRING_REF PromptToken,
|
IN STRING_REF PromptToken,
|
||||||
IN STRING_REF HelpToken,
|
IN STRING_REF HelpToken,
|
||||||
IN UINT16 Minimum,
|
IN UINT16 Minimum,
|
||||||
IN UINT16 Maximum,
|
IN UINT16 Maximum,
|
||||||
IN UINT16 Step,
|
IN UINT16 Step,
|
||||||
IN UINT16 Default,
|
IN UINT16 Default,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
FRAMEWORK_EFI_IFR_NUMERIC Numeric;
|
FRAMEWORK_EFI_IFR_NUMERIC Numeric;
|
||||||
|
|
||||||
//
|
//
|
||||||
// We do not create op-code storage widths for numerics in excess of 16 bits for now
|
// We do not create op-code storage widths for numerics in excess of 16 bits for now
|
||||||
|
@ -387,7 +380,6 @@ CreateNumericOpCode (
|
||||||
Numeric.QuestionId = QuestionId;
|
Numeric.QuestionId = QuestionId;
|
||||||
Numeric.Width = DataWidth;
|
Numeric.Width = DataWidth;
|
||||||
Numeric.Prompt = PromptToken;
|
Numeric.Prompt = PromptToken;
|
||||||
|
|
||||||
Numeric.Help = HelpToken;
|
Numeric.Help = HelpToken;
|
||||||
Numeric.Minimum = Minimum;
|
Numeric.Minimum = Minimum;
|
||||||
Numeric.Maximum = Maximum;
|
Numeric.Maximum = Maximum;
|
||||||
|
@ -402,45 +394,43 @@ CreateNumericOpCode (
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Create a numeric opcode independent of string creation
|
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
|
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
|
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)
|
location to pre-defined forms in HII)
|
||||||
|
|
||||||
@param QuestionId Question ID of the string
|
@param QuestionId Question ID of the string
|
||||||
@param DataWidth DataWidth of the string
|
@param DataWidth DataWidth of the string
|
||||||
@param PromptToken Prompt token of the string
|
@param PromptToken Prompt token of the string
|
||||||
@param HelpToken Help token of the string
|
@param HelpToken Help token of the string
|
||||||
@param MinSize Min size boundary of the string
|
@param MinSize Min size boundary of the string
|
||||||
@param MaxSize Max size boundary of the string
|
@param MaxSize Max size boundary of the string
|
||||||
@param Flags Flags of the string
|
@param Flags Flags of the string
|
||||||
@param Key Key of the string
|
@param Key Key of the string
|
||||||
@param FormBuffer Output of the string as a form
|
@param FormBuffer Output of the string as a form
|
||||||
|
|
||||||
@retval EFI_SUCCESS String created to be a form.
|
@retval EFI_SUCCESS String created to be a form.
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateStringOpCode (
|
CreateStringOpCode (
|
||||||
IN UINT16 QuestionId,
|
IN UINT16 QuestionId,
|
||||||
IN UINT8 DataWidth,
|
IN UINT8 DataWidth,
|
||||||
IN STRING_REF PromptToken,
|
IN STRING_REF PromptToken,
|
||||||
IN STRING_REF HelpToken,
|
IN STRING_REF HelpToken,
|
||||||
IN UINT8 MinSize,
|
IN UINT8 MinSize,
|
||||||
IN UINT8 MaxSize,
|
IN UINT8 MaxSize,
|
||||||
IN UINT8 Flags,
|
IN UINT8 Flags,
|
||||||
IN UINT16 Key,
|
IN UINT16 Key,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
FRAMEWORK_EFI_IFR_STRING String;
|
FRAMEWORK_EFI_IFR_STRING String;
|
||||||
|
|
||||||
String.Header.OpCode = FRAMEWORK_EFI_IFR_STRING_OP;
|
String.Header.OpCode = FRAMEWORK_EFI_IFR_STRING_OP;
|
||||||
String.Header.Length = sizeof (FRAMEWORK_EFI_IFR_STRING);
|
String.Header.Length = sizeof (FRAMEWORK_EFI_IFR_STRING);
|
||||||
String.QuestionId = QuestionId;
|
String.QuestionId = QuestionId;
|
||||||
String.Width = DataWidth;
|
String.Width = DataWidth;
|
||||||
String.Prompt = PromptToken;
|
String.Prompt = PromptToken;
|
||||||
|
|
||||||
String.Help = HelpToken;
|
String.Help = HelpToken;
|
||||||
String.MinSize = MinSize;
|
String.MinSize = MinSize;
|
||||||
String.MaxSize = MaxSize;
|
String.MaxSize = MaxSize;
|
||||||
|
@ -455,23 +445,22 @@ CreateStringOpCode (
|
||||||
/**
|
/**
|
||||||
Create a banner opcode. This is primarily used by the FrontPage implementation from BDS.
|
Create a banner opcode. This is primarily used by the FrontPage implementation from BDS.
|
||||||
|
|
||||||
@param Title - Title of the banner
|
@param Title Title of the banner
|
||||||
@param LineNumber - LineNumber of the banner
|
@param LineNumber LineNumber of the banner
|
||||||
@param Alignment - Alignment of the banner
|
@param Alignment Alignment of the banner
|
||||||
@param FormBuffer - Output of banner as a form
|
@param FormBuffer Output of banner as a form
|
||||||
|
|
||||||
@retval EFI_SUCCESS - Banner created to be a form.
|
@retval EFI_SUCCESS Banner created to be a form.
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
CreateBannerOpCode (
|
CreateBannerOpCode (
|
||||||
IN UINT16 Title,
|
IN UINT16 Title,
|
||||||
IN UINT16 LineNumber,
|
IN UINT16 LineNumber,
|
||||||
IN UINT8 Alignment,
|
IN UINT8 Alignment,
|
||||||
IN OUT VOID *FormBuffer
|
IN OUT VOID *FormBuffer
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
FRAMEWORK_EFI_IFR_BANNER Banner;
|
FRAMEWORK_EFI_IFR_BANNER Banner;
|
||||||
|
|
||||||
Banner.Header.OpCode = FRAMEWORK_EFI_IFR_BANNER_OP;
|
Banner.Header.OpCode = FRAMEWORK_EFI_IFR_BANNER_OP;
|
||||||
Banner.Header.Length = sizeof (FRAMEWORK_EFI_IFR_BANNER);
|
Banner.Header.Length = sizeof (FRAMEWORK_EFI_IFR_BANNER);
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/**@file
|
/** @file
|
||||||
Common header file shared by all source files.
|
Common header file shared by all source files.
|
||||||
|
|
||||||
This file includes package header files, library classes and protocol, PPI & GUID definitions.
|
This file includes package header files, library classes and protocol, PPI & GUID definitions.
|
||||||
|
@ -10,6 +10,7 @@
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
|
|
||||||
#ifndef __IFRSUPPORT_LIB_INTERNAL_H_
|
#ifndef __IFRSUPPORT_LIB_INTERNAL_H_
|
||||||
|
|
|
@ -17,23 +17,22 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
/**
|
/**
|
||||||
Extracts a variable form a Pack.
|
Extracts a variable form a Pack.
|
||||||
|
|
||||||
@param Pack - List of variables
|
@param Pack List of variables
|
||||||
@param Name - Name of the variable/map
|
@param Name Name of the variable/map
|
||||||
@param Guid - GUID of the variable/map
|
@param Guid GUID of the variable/map
|
||||||
@param Id - The index of the variable/map to retrieve
|
@param Id The index of the variable/map to retrieve
|
||||||
@param Var - Pointer to the variable/map
|
@param Var Pointer to the variable/map
|
||||||
@param Size - Size of the variable/map in bytes
|
@param Size Size of the variable/map in bytes
|
||||||
**/
|
**/
|
||||||
VOID
|
VOID
|
||||||
EfiLibHiiVariablePackGetMap (
|
EfiLibHiiVariablePackGetMap (
|
||||||
IN EFI_HII_VARIABLE_PACK *Pack,
|
IN EFI_HII_VARIABLE_PACK *Pack,
|
||||||
OUT CHAR16 **Name, OPTIONAL
|
OUT CHAR16 **Name, OPTIONAL
|
||||||
OUT EFI_GUID **Guid, OPTIONAL
|
OUT EFI_GUID **Guid, OPTIONAL
|
||||||
OUT UINT16 *Id, OPTIONAL
|
OUT UINT16 *Id, OPTIONAL
|
||||||
OUT VOID **Var, OPTIONAL
|
OUT VOID **Var, OPTIONAL
|
||||||
OUT UINTN *Size OPTIONAL
|
OUT UINTN *Size OPTIONAL
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
if (NULL != Name) {
|
if (NULL != Name) {
|
||||||
*Name = (VOID *) (Pack + 1);
|
*Name = (VOID *) (Pack + 1);
|
||||||
|
@ -60,16 +59,18 @@ EfiLibHiiVariablePackGetMap (
|
||||||
/**
|
/**
|
||||||
Finds a count of the variables/maps in the List.
|
Finds a count of the variables/maps in the List.
|
||||||
|
|
||||||
@param List - List of variables
|
@param List List of variables
|
||||||
|
|
||||||
@return The number of map count.
|
@return The number of map count.
|
||||||
**/
|
**/
|
||||||
UINTN
|
UINTN
|
||||||
EfiLibHiiVariablePackListGetMapCnt (
|
EfiLibHiiVariablePackListGetMapCnt (
|
||||||
IN EFI_HII_VARIABLE_PACK_LIST *List
|
IN EFI_HII_VARIABLE_PACK_LIST *List
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UINTN Cnt = 0;
|
UINTN Cnt;
|
||||||
|
|
||||||
|
Cnt = 0;
|
||||||
while (NULL != List) {
|
while (NULL != List) {
|
||||||
Cnt++;
|
Cnt++;
|
||||||
List = List->NextVariablePack;
|
List = List->NextVariablePack;
|
||||||
|
@ -81,23 +82,20 @@ EfiLibHiiVariablePackListGetMapCnt (
|
||||||
Will iterate all variable/maps as appearing
|
Will iterate all variable/maps as appearing
|
||||||
in List and for each, it will call the Callback.
|
in List and for each, it will call the Callback.
|
||||||
|
|
||||||
@param List - List of variables
|
@param List List of variables
|
||||||
@param Callback - Routine to be called for each iterated variable.
|
@param Callback Routine to be called for each iterated variable.
|
||||||
|
|
||||||
**/
|
**/
|
||||||
VOID
|
VOID
|
||||||
EfiLibHiiVariablePackListForEachVar (
|
EfiLibHiiVariablePackListForEachVar (
|
||||||
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
||||||
IN EFI_LIB_HII_VARIABLE_PACK_LIST_CALLBACK *Callback
|
IN EFI_LIB_HII_VARIABLE_PACK_LIST_CALLBACK *Callback
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
CHAR16 *MapName;
|
CHAR16 *MapName;
|
||||||
EFI_GUID *MapGuid;
|
EFI_GUID *MapGuid;
|
||||||
UINT16 MapId;
|
UINT16 MapId;
|
||||||
VOID *Map;
|
VOID *Map;
|
||||||
UINTN MapSize;
|
UINTN MapSize;
|
||||||
|
|
||||||
while (NULL != List) {
|
while (NULL != List) {
|
||||||
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
||||||
|
@ -113,35 +111,33 @@ EfiLibHiiVariablePackListForEachVar (
|
||||||
Finds a variable form List given
|
Finds a variable form List given
|
||||||
the order number as appears in the List.
|
the order number as appears in the List.
|
||||||
|
|
||||||
@param Idx - The index of the variable/map to retrieve
|
@param Idx The index of the variable/map to retrieve
|
||||||
@param List - List of variables
|
@param List List of variables
|
||||||
@param Name - Name of the variable/map
|
@param Name Name of the variable/map
|
||||||
@param Guid - GUID of the variable/map
|
@param Guid GUID of the variable/map
|
||||||
@param Id - Id of the variable/map
|
@param Id Id of the variable/map
|
||||||
@param Var - Pointer to the variable/map
|
@param Var Pointer to the variable/map
|
||||||
@param Size - Size of the variable/map in bytes
|
@param Size Size of the variable/map in bytes
|
||||||
|
|
||||||
@return EFI_SUCCESS - Variable is found, OUT parameters are valid
|
@return EFI_SUCCESS Variable is found, OUT parameters are valid
|
||||||
@return EFI_NOT_FOUND - Variable is not found, OUT parameters are not valid
|
@return EFI_NOT_FOUND Variable is not found, OUT parameters are not valid
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EfiLibHiiVariablePackListGetMapByIdx (
|
EfiLibHiiVariablePackListGetMapByIdx (
|
||||||
IN UINTN Idx,
|
IN UINTN Idx,
|
||||||
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
||||||
OUT CHAR16 **Name, OPTIONAL
|
OUT CHAR16 **Name, OPTIONAL
|
||||||
OUT EFI_GUID **Guid, OPTIONAL
|
OUT EFI_GUID **Guid, OPTIONAL
|
||||||
OUT UINT16 *Id, OPTIONAL
|
OUT UINT16 *Id, OPTIONAL
|
||||||
OUT VOID **Var,
|
OUT VOID **Var,
|
||||||
OUT UINTN *Size
|
OUT UINTN *Size
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
CHAR16 *MapName;
|
CHAR16 *MapName;
|
||||||
EFI_GUID *MapGuid;
|
EFI_GUID *MapGuid;
|
||||||
UINT16 MapId;
|
UINT16 MapId;
|
||||||
VOID *Map;
|
VOID *Map;
|
||||||
UINTN MapSize;
|
UINTN MapSize;
|
||||||
|
|
||||||
while (NULL != List) {
|
while (NULL != List) {
|
||||||
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
||||||
|
@ -175,32 +171,31 @@ EfiLibHiiVariablePackListGetMapByIdx (
|
||||||
Finds a variable form List given the
|
Finds a variable form List given the
|
||||||
order number as appears in the List.
|
order number as appears in the List.
|
||||||
|
|
||||||
@param Id - The ID of the variable/map to retrieve
|
@param Id The ID of the variable/map to retrieve
|
||||||
@param List - List of variables
|
@param List List of variables
|
||||||
@param Name - Name of the variable/map
|
@param Name Name of the variable/map
|
||||||
@param Guid - GUID of the variable/map
|
@param Guid GUID of the variable/map
|
||||||
@param Var - Pointer to the variable/map
|
@param Var Pointer to the variable/map
|
||||||
@param Size - Size of the variable/map in bytes
|
@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
|
|
||||||
|
|
||||||
|
@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
|
EFI_STATUS
|
||||||
EfiLibHiiVariablePackListGetMapById (
|
EfiLibHiiVariablePackListGetMapById (
|
||||||
IN UINT16 Id,
|
IN UINT16 Id,
|
||||||
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
||||||
OUT CHAR16 **Name, OPTIONAL
|
OUT CHAR16 **Name, OPTIONAL
|
||||||
OUT EFI_GUID **Guid, OPTIONAL
|
OUT EFI_GUID **Guid, OPTIONAL
|
||||||
OUT VOID **Var,
|
OUT VOID **Var,
|
||||||
OUT UINTN *Size
|
OUT UINTN *Size
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
CHAR16 *MapName;
|
CHAR16 *MapName;
|
||||||
EFI_GUID *MapGuid;
|
EFI_GUID *MapGuid;
|
||||||
UINT16 MapId;
|
UINT16 MapId;
|
||||||
VOID *Map;
|
VOID *Map;
|
||||||
UINTN MapSize;
|
UINTN MapSize;
|
||||||
|
|
||||||
while (NULL != List) {
|
while (NULL != List) {
|
||||||
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
||||||
|
@ -229,31 +224,31 @@ EfiLibHiiVariablePackListGetMapById (
|
||||||
/**
|
/**
|
||||||
Finds a variable form EFI_HII_VARIABLE_PACK_LIST given name and GUID.
|
Finds a variable form EFI_HII_VARIABLE_PACK_LIST given name and GUID.
|
||||||
|
|
||||||
@param List - List of variables
|
@param List List of variables
|
||||||
@param Name - Name of the variable/map to be found
|
@param Name Name of the variable/map to be found
|
||||||
@param Guid - GUID of the variable/map to be found
|
@param Guid GUID of the variable/map to be found
|
||||||
@param Id - Id of the variable/map to be found
|
@param Id Id of the variable/map to be found
|
||||||
@param Var - Pointer to the variable/map found
|
@param Var Pointer to the variable/map found
|
||||||
@param Size - Size of the variable/map in bytes found
|
@param Size Size of the variable/map in bytes found
|
||||||
|
|
||||||
@retval EFI_SUCCESS - variable is found, OUT parameters are valid
|
@retval EFI_SUCCESS variable is found, OUT parameters are valid
|
||||||
@retval EFI_NOT_FOUND - variable is not found, OUT parameters are not valid
|
@retval EFI_NOT_FOUND variable is not found, OUT parameters are not valid
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EfiLibHiiVariablePackListGetMap (
|
EfiLibHiiVariablePackListGetMap (
|
||||||
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
IN EFI_HII_VARIABLE_PACK_LIST *List,
|
||||||
IN CHAR16 *Name,
|
IN CHAR16 *Name,
|
||||||
IN EFI_GUID *Guid,
|
IN EFI_GUID *Guid,
|
||||||
OUT UINT16 *Id,
|
OUT UINT16 *Id,
|
||||||
OUT VOID **Var,
|
OUT VOID **Var,
|
||||||
OUT UINTN *Size
|
OUT UINTN *Size
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
VOID *Map;
|
VOID *Map;
|
||||||
UINTN MapSize;
|
UINTN MapSize;
|
||||||
UINT16 MapId;
|
UINT16 MapId;
|
||||||
CHAR16 *MapName;
|
CHAR16 *MapName;
|
||||||
EFI_GUID *MapGuid;
|
EFI_GUID *MapGuid;
|
||||||
|
|
||||||
while (NULL != List) {
|
while (NULL != List) {
|
||||||
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
EfiLibHiiVariablePackGetMap (List->VariablePack, &MapName, &MapGuid, &MapId, &Map, &MapSize);
|
||||||
|
@ -275,28 +270,27 @@ EfiLibHiiVariablePackListGetMap (
|
||||||
Finds out if a variable of specific Name/Guid/Size exists in NV.
|
Finds out if a variable of specific Name/Guid/Size exists in NV.
|
||||||
If it does, it will retrieve it into the Var.
|
If it does, it will retrieve it into the Var.
|
||||||
|
|
||||||
@param Name Parameters of the variable to retrieve. Must match exactly.
|
@param Name Parameters of the variable to retrieve. Must match exactly.
|
||||||
@param Guid 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 Size Parameters of the variable to retrieve. Must match exactly.
|
||||||
@param Var Variable will be retrieved into buffer pointed by this pointer.
|
@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.
|
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.
|
|
||||||
|
|
||||||
|
@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
|
EFI_STATUS
|
||||||
EfiLibHiiVariableRetrieveFromNv (
|
EfiLibHiiVariableRetrieveFromNv (
|
||||||
IN CHAR16 *Name,
|
IN CHAR16 *Name,
|
||||||
IN EFI_GUID *Guid,
|
IN EFI_GUID *Guid,
|
||||||
IN UINTN Size,
|
IN UINTN Size,
|
||||||
OUT VOID **Var
|
OUT VOID **Var
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
UINTN SizeNv;
|
UINTN SizeNv;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Test for existence of the variable.
|
// Test for existence of the variable.
|
||||||
|
@ -338,27 +332,29 @@ EfiLibHiiVariableRetrieveFromNv (
|
||||||
the Suffix matches the end of Name, so the variable will be loaded from NV
|
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.
|
provided the variable exists and the GUID and Size matches.
|
||||||
|
|
||||||
@param Suffix Suffix the Name should end with.
|
@param Suffix Suffix the Name should end with.
|
||||||
@param Name, Guid, Size Parameters of the variable to retrieve. Must match exactly.
|
@param Name Name of the variable to retrieve.
|
||||||
@param Var Variable will be retrieved into this buffer.
|
@Param Guid Guid of the variable to retrieve.
|
||||||
|
@Param Size Parameters of the variable to retrieve.
|
||||||
|
@param Var Variable will be retrieved into this buffer.
|
||||||
Caller is responsible for providing storage of exactly Size size in bytes.
|
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_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_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_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.
|
@retval EFI_LOAD_ERROR The variable in the NV was of different size, or NV API returned error.
|
||||||
**/
|
**/
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EfiLibHiiVariableOverrideIfSuffix (
|
EfiLibHiiVariableOverrideIfSuffix (
|
||||||
IN CHAR16 *Suffix,
|
IN CHAR16 *Suffix,
|
||||||
IN CHAR16 *Name,
|
IN CHAR16 *Name,
|
||||||
IN EFI_GUID *Guid,
|
IN EFI_GUID *Guid,
|
||||||
IN UINTN Size,
|
IN UINTN Size,
|
||||||
OUT VOID *Var
|
OUT VOID *Var
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
UINTN StrLength;
|
UINTN StrLength;
|
||||||
UINTN StrLenSuffix;
|
UINTN StrLenSuffix;
|
||||||
|
|
||||||
StrLength = StrLen (Name);
|
StrLength = StrLen (Name);
|
||||||
StrLenSuffix = StrLen (Suffix);
|
StrLenSuffix = StrLen (Suffix);
|
||||||
|
@ -378,30 +374,30 @@ EfiLibHiiVariableOverrideIfSuffix (
|
||||||
the Suffix will be appended to the end of Name, and the variable with Name="XyzSetupMyOverride"
|
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.
|
will be loaded from NV provided the variable exists and the GUID and Size matches.
|
||||||
|
|
||||||
@param Suffix Suffix the variable will be appended with.
|
@param Suffix Suffix the variable will be appended with.
|
||||||
@param Name, Guid, Size Parameters of the variable to retrieve. Must match exactly.
|
@param Name Parameters of the Name variable to retrieve.
|
||||||
@param Var Variable will be retrieved into this buffer.
|
@param Guid Parameters of the Guid variable to retrieve.
|
||||||
Caller is responsible for providing storage of exactly Size size in bytes.
|
@param Size Parameters of the Size variable to retrieve.
|
||||||
|
@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_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_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.
|
@retval EFI_LOAD_ERROR The variable in the NV was of different size, or NV API returned error.
|
||||||
|
**/
|
||||||
--*/
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EfiLibHiiVariableOverrideBySuffix (
|
EfiLibHiiVariableOverrideBySuffix (
|
||||||
IN CHAR16 *Suffix,
|
IN CHAR16 *Suffix,
|
||||||
IN CHAR16 *Name,
|
IN CHAR16 *Name,
|
||||||
IN EFI_GUID *Guid,
|
IN EFI_GUID *Guid,
|
||||||
IN UINTN Size,
|
IN UINTN Size,
|
||||||
OUT VOID *Var
|
OUT VOID *Var
|
||||||
)
|
)
|
||||||
|
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
CHAR16 *NameSuffixed;
|
CHAR16 *NameSuffixed;
|
||||||
UINTN NameLength;
|
UINTN NameLength;
|
||||||
UINTN SuffixLength;
|
UINTN SuffixLength;
|
||||||
|
|
||||||
//
|
//
|
||||||
// enough to concatenate both strings.
|
// enough to concatenate both strings.
|
||||||
|
|
Loading…
Reference in New Issue