X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Nt32Pkg%2FPlatformBdsDxe%2FGeneric%2FFrontPage.c;h=6df4d86426cce5ff24db0a80cfce5646eebe440b;hp=4b4caf2460a64c448921cbb957cc05003e1c2741;hb=6bfce83ac45f2cb829178c619ee6907d640cc847;hpb=bc11b82964c116a64e8e453777c8b61d62e38e11 diff --git a/Nt32Pkg/PlatformBdsDxe/Generic/FrontPage.c b/Nt32Pkg/PlatformBdsDxe/Generic/FrontPage.c index 4b4caf2460..6df4d86426 100644 --- a/Nt32Pkg/PlatformBdsDxe/Generic/FrontPage.c +++ b/Nt32Pkg/PlatformBdsDxe/Generic/FrontPage.c @@ -18,16 +18,10 @@ Abstract: FrontPage routines to handle the callbacks and browser calls --*/ - -// -// Include common header file for this module. -// -#include "CommonHeader.h" - #include "Bds.h" #include "BdsPlatform.h" #include "FrontPage.h" -#include "String.h" +#include "BdsString.h" EFI_GUID mProcessorSubClass = EFI_PROCESSOR_SUBCLASS_GUID; EFI_GUID mMemorySubClass = EFI_MEMORY_SUBCLASS_GUID; @@ -42,7 +36,6 @@ UINTN gCallbackKey; BOOLEAN gConnectAllHappened = FALSE; extern EFI_HII_HANDLE gFrontPageHandle; -extern EFI_GUID gBdsStringPackGuid; EFI_STATUS EFIAPI @@ -106,7 +99,7 @@ Returns: // // Collect the languages from what our current Language support is based on our VFR // - Hii->GetPrimaryLanguages (Hii, gFrontPageHandle, &LanguageString); + gHii->GetPrimaryLanguages (gHii, gFrontPageHandle, &LanguageString); // // Based on the DataArray->Data->Data value, we can determine @@ -255,9 +248,9 @@ Returns: gCallbackKey = 0; - PackageList = PreparePackages (1, &gBdsStringPackGuid, FrontPageVfrBin); + PackageList = PreparePackages (1, &gEfiCallerIdGuid, FrontPageVfrBin); - Status = Hii->NewPack (Hii, PackageList, &gFrontPageHandle); + Status = gHii->NewPack (gHii, PackageList, &gFrontPageHandle); FreePool (PackageList); @@ -335,21 +328,10 @@ ReInitStrings: // // Collect the languages from what our current Language support is based on our VFR // - Hii->GetPrimaryLanguages (Hii, gFrontPageHandle, &LanguageString); + gHii->GetPrimaryLanguages (gHii, gFrontPageHandle, &LanguageString); OptionCount = 0; - // - // Try for a 512 byte Buffer - // - BufferSize = 0x200; - - // - // Allocate memory for our Form binary - // - StringBuffer = AllocateZeroPool (BufferSize); - ASSERT (StringBuffer != NULL); - for (Index = 0; LanguageString[Index] != 0; Index += 3) { Token = 0; CopyMem (Lang, &LanguageString[Index], 6); @@ -359,8 +341,14 @@ ReInitStrings: mLastSelection = (UINT16) OptionCount; } - Status = Hii->GetString (Hii, gStringPackHandle, 1, TRUE, Lang, &BufferSize, StringBuffer); - Hii->NewString (Hii, NULL, gStringPackHandle, &Token, StringBuffer); + BufferSize = 0; + Status = gHii->GetString (gHii, gStringPackHandle, 1, TRUE, Lang, &BufferSize, NULL); + ASSERT(Status == EFI_BUFFER_TOO_SMALL); + StringBuffer = AllocateZeroPool (BufferSize); + ASSERT (StringBuffer != NULL); + Status = gHii->GetString (gHii, gStringPackHandle, 1, TRUE, Lang, &BufferSize, StringBuffer); + gHii->NewString (gHii, NULL, gStringPackHandle, &Token, StringBuffer); + FreePool (StringBuffer); CopyMem (&OptionList[OptionCount].StringToken, &Token, sizeof (UINT16)); CopyMem (&OptionList[OptionCount].Value, &OptionCount, sizeof (UINT16)); Key = 0x1234; @@ -372,7 +360,6 @@ ReInitStrings: FreePool (LanguageString); if (ReInitializeStrings) { - FreePool (StringBuffer); FreePool (OptionList); return EFI_SUCCESS; } @@ -392,13 +379,12 @@ ReInitStrings: // UpdateData->DataCount = (UINT8) (OptionCount + 2); - Hii->UpdateForm (Hii, gFrontPageHandle, (EFI_FORM_LABEL) 0x0002, TRUE, UpdateData); + gHii->UpdateForm (gHii, gFrontPageHandle, (EFI_FORM_LABEL) 0x0002, TRUE, UpdateData); FreePool (UpdateData); // // FreePool (OptionList); // - FreePool (StringBuffer); return Status; } @@ -452,7 +438,7 @@ Returns: EnableResetRequired (); } - Hii->ResetStrings (Hii, gFrontPageHandle); + gHii->ResetStrings (gHii, gFrontPageHandle); return Status; } @@ -499,11 +485,11 @@ Returns: // // Get all the Hii handles // - Status = BdsLibGetHiiHandles (Hii, &HandleBufferLength, &HiiHandleBuffer); + Status = BdsLibGetHiiHandles (gHii, &HandleBufferLength, &HiiHandleBuffer); ASSERT_EFI_ERROR (Status); // - // Get the Hii Handle that matches the StructureNode->ProducerName + // Get the gHii Handle that matches the StructureNode->ProducerName // NumberOfHiiHandles = HandleBufferLength / sizeof (EFI_HII_HANDLE); for (Index = 0; Index < NumberOfHiiHandles; Index++) { @@ -523,8 +509,8 @@ Returns: // StringBufferLength = 0x100; *String = AllocateZeroPool (0x100); - Status = Hii->GetString ( - Hii, + Status = gHii->GetString ( + gHii, HiiHandleBuffer[Index], Token, FALSE, @@ -693,7 +679,7 @@ Returns: BiosVendor = (EFI_MISC_BIOS_VENDOR_DATA *) (DataHeader + 1); GetStringFromToken (&Record->ProducerName, BiosVendor->BiosVersion, &NewString); TokenToUpdate = (STRING_REF) STR_FRONT_PAGE_BIOS_VERSION; - Hii->NewString (Hii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); + gHii->NewString (gHii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); FreePool (NewString); Find[0] = TRUE; } @@ -704,7 +690,7 @@ Returns: SystemManufacturer = (EFI_MISC_SYSTEM_MANUFACTURER_DATA *) (DataHeader + 1); GetStringFromToken (&Record->ProducerName, SystemManufacturer->SystemProductName, &NewString); TokenToUpdate = (STRING_REF) STR_FRONT_PAGE_COMPUTER_MODEL; - Hii->NewString (Hii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); + gHii->NewString (gHii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); FreePool (NewString); Find[1] = TRUE; } @@ -715,7 +701,7 @@ Returns: ProcessorVersion = (EFI_PROCESSOR_VERSION_DATA *) (DataHeader + 1); GetStringFromToken (&Record->ProducerName, *ProcessorVersion, &NewString); TokenToUpdate = (STRING_REF) STR_FRONT_PAGE_CPU_MODEL; - Hii->NewString (Hii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); + gHii->NewString (gHii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); FreePool (NewString); Find[2] = TRUE; } @@ -726,7 +712,7 @@ Returns: ProcessorFrequency = (EFI_PROCESSOR_CORE_FREQUENCY_DATA *) (DataHeader + 1); ConvertProcessorToString (ProcessorFrequency, &NewString); TokenToUpdate = (STRING_REF) STR_FRONT_PAGE_CPU_SPEED; - Hii->NewString (Hii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); + gHii->NewString (gHii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); FreePool (NewString); Find[3] = TRUE; } @@ -739,7 +725,7 @@ Returns: MemoryArray->MemoryArrayStartAddress + 1), 20)), &NewString); TokenToUpdate = (STRING_REF) STR_FRONT_PAGE_MEMORY_SIZE; - Hii->NewString (Hii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); + gHii->NewString (gHii, Lang, gFrontPageHandle, &TokenToUpdate, NewString); FreePool (NewString); Find[4] = TRUE; } @@ -797,7 +783,7 @@ Returns: // // Remove Banner Op-code if any at this label // - Hii->UpdateForm (Hii, gFrontPageHandle, (EFI_FORM_LABEL) 0xFFFF, FALSE, UpdateData); + gHii->UpdateForm (gHii, gFrontPageHandle, (EFI_FORM_LABEL) 0xFFFF, FALSE, UpdateData); // // Create Banner Op-code which reflects correct timeout value @@ -812,7 +798,7 @@ Returns: // // Add Banner Op-code at this label // - Hii->UpdateForm (Hii, gFrontPageHandle, (EFI_FORM_LABEL) 0xFFFF, TRUE, UpdateData); + gHii->UpdateForm (gHii, gFrontPageHandle, (EFI_FORM_LABEL) 0xFFFF, TRUE, UpdateData); do {