mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-28 08:04:07 +02:00
Removes dependencies on SMBIOS in the IntelFrameworkModulePkg’s BDS.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Olivier Martin <olivier.martin@arm.com> Reviewed-by: Eric Dong <eric.dong@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16207 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
ebb9235329
commit
6d5b88f372
@ -741,66 +741,66 @@ UpdateFrontPageStrings (
|
|||||||
NULL,
|
NULL,
|
||||||
(VOID **) &Smbios
|
(VOID **) &Smbios
|
||||||
);
|
);
|
||||||
ASSERT_EFI_ERROR (Status);
|
if (!EFI_ERROR (Status)) {
|
||||||
|
SmbiosHandle = SMBIOS_HANDLE_PI_RESERVED;
|
||||||
|
do {
|
||||||
|
Status = Smbios->GetNext (Smbios, &SmbiosHandle, NULL, &Record, NULL);
|
||||||
|
if (EFI_ERROR(Status)) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
SmbiosHandle = SMBIOS_HANDLE_PI_RESERVED;
|
if (Record->Type == EFI_SMBIOS_TYPE_BIOS_INFORMATION) {
|
||||||
do {
|
Type0Record = (SMBIOS_TABLE_TYPE0 *) Record;
|
||||||
Status = Smbios->GetNext (Smbios, &SmbiosHandle, NULL, &Record, NULL);
|
StrIndex = Type0Record->BiosVersion;
|
||||||
if (EFI_ERROR(Status)) {
|
GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type0Record + Type0Record->Hdr.Length), StrIndex, &NewString);
|
||||||
break;
|
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_BIOS_VERSION);
|
||||||
}
|
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
||||||
|
FreePool (NewString);
|
||||||
|
Find[0] = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
if (Record->Type == EFI_SMBIOS_TYPE_BIOS_INFORMATION) {
|
if (Record->Type == EFI_SMBIOS_TYPE_SYSTEM_INFORMATION) {
|
||||||
Type0Record = (SMBIOS_TABLE_TYPE0 *) Record;
|
Type1Record = (SMBIOS_TABLE_TYPE1 *) Record;
|
||||||
StrIndex = Type0Record->BiosVersion;
|
StrIndex = Type1Record->ProductName;
|
||||||
GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type0Record + Type0Record->Hdr.Length), StrIndex, &NewString);
|
GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type1Record + Type1Record->Hdr.Length), StrIndex, &NewString);
|
||||||
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_BIOS_VERSION);
|
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_COMPUTER_MODEL);
|
||||||
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
||||||
FreePool (NewString);
|
FreePool (NewString);
|
||||||
Find[0] = TRUE;
|
Find[1] = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Record->Type == EFI_SMBIOS_TYPE_SYSTEM_INFORMATION) {
|
if (Record->Type == EFI_SMBIOS_TYPE_PROCESSOR_INFORMATION) {
|
||||||
Type1Record = (SMBIOS_TABLE_TYPE1 *) Record;
|
Type4Record = (SMBIOS_TABLE_TYPE4 *) Record;
|
||||||
StrIndex = Type1Record->ProductName;
|
StrIndex = Type4Record->ProcessorVersion;
|
||||||
GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type1Record + Type1Record->Hdr.Length), StrIndex, &NewString);
|
GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type4Record + Type4Record->Hdr.Length), StrIndex, &NewString);
|
||||||
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_COMPUTER_MODEL);
|
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_CPU_MODEL);
|
||||||
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
||||||
FreePool (NewString);
|
FreePool (NewString);
|
||||||
Find[1] = TRUE;
|
Find[2] = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Record->Type == EFI_SMBIOS_TYPE_PROCESSOR_INFORMATION) {
|
|
||||||
Type4Record = (SMBIOS_TABLE_TYPE4 *) Record;
|
|
||||||
StrIndex = Type4Record->ProcessorVersion;
|
|
||||||
GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type4Record + Type4Record->Hdr.Length), StrIndex, &NewString);
|
|
||||||
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_CPU_MODEL);
|
|
||||||
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
|
||||||
FreePool (NewString);
|
|
||||||
Find[2] = TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Record->Type == EFI_SMBIOS_TYPE_PROCESSOR_INFORMATION) {
|
if (Record->Type == EFI_SMBIOS_TYPE_PROCESSOR_INFORMATION) {
|
||||||
Type4Record = (SMBIOS_TABLE_TYPE4 *) Record;
|
Type4Record = (SMBIOS_TABLE_TYPE4 *) Record;
|
||||||
ConvertProcessorToString(Type4Record->CurrentSpeed, 6, &NewString);
|
ConvertProcessorToString(Type4Record->CurrentSpeed, 6, &NewString);
|
||||||
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_CPU_SPEED);
|
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_CPU_SPEED);
|
||||||
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
||||||
FreePool (NewString);
|
FreePool (NewString);
|
||||||
Find[3] = TRUE;
|
Find[3] = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( Record->Type == EFI_SMBIOS_TYPE_MEMORY_ARRAY_MAPPED_ADDRESS ) {
|
if ( Record->Type == EFI_SMBIOS_TYPE_MEMORY_ARRAY_MAPPED_ADDRESS ) {
|
||||||
Type19Record = (SMBIOS_TABLE_TYPE19 *) Record;
|
Type19Record = (SMBIOS_TABLE_TYPE19 *) Record;
|
||||||
ConvertMemorySizeToString (
|
ConvertMemorySizeToString (
|
||||||
(UINT32)(RShiftU64((Type19Record->EndingAddress - Type19Record->StartingAddress + 1), 10)),
|
(UINT32)(RShiftU64((Type19Record->EndingAddress - Type19Record->StartingAddress + 1), 10)),
|
||||||
&NewString
|
&NewString
|
||||||
);
|
);
|
||||||
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_MEMORY_SIZE);
|
TokenToUpdate = STRING_TOKEN (STR_FRONT_PAGE_MEMORY_SIZE);
|
||||||
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
HiiSetString (gFrontPagePrivate.HiiHandle, TokenToUpdate, NewString, NULL);
|
||||||
FreePool (NewString);
|
FreePool (NewString);
|
||||||
Find[4] = TRUE;
|
Find[4] = TRUE;
|
||||||
}
|
}
|
||||||
} while ( !(Find[0] && Find[1] && Find[2] && Find[3] && Find[4]));
|
} while ( !(Find[0] && Find[1] && Find[2] && Find[3] && Find[4]));
|
||||||
|
}
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user