ShellPkg/UefiShellDebug1CommandsLib: Update to support SmBios 3.3.0

Shell command smbiosview updates for SMBIOS 3.3.0 spec.

Bugzilla link,
https://bugzilla.tianocore.org/show_bug.cgi?id=2202

Signed-off-by: Abner Chang <abner.chang@hpe.com>

Cc: Jaben Carsey <jaben.carsey@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Zhichao Gao <zhichao.gao@intel.com>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Cc: Gilbert Chen <gilbert.chen@hpe.com>
Reviewed-by: Zhichao Gao <zhichao.gao@intel.com>
This commit is contained in:
Abner Chang 2019-10-15 15:45:45 +08:00 committed by Liming Gao
parent f06c92a656
commit e797a806a8
5 changed files with 100 additions and 5 deletions

View File

@ -3,7 +3,7 @@
Copyright (c) 2005 - 2018, Intel Corporation. All rights reserved.<BR>
(C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
(C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP<BR>
(C) Copyright 2015-2019 Hewlett Packard Enterprise Development LP<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@ -1168,6 +1168,13 @@ SmbiosPrintStructure (
PRINT_STRUCT_VALUE_H (Struct, Type43, OemDefined);
break;
//
// Processor Additional Information (Type 44)
//
case 44:
DisplayProcessorArchitectureType (Struct->Type44->ProcessorSpecificBlock.ProcessorArchType, Option);
break;
//
// Inactive (Type 126)
//
@ -2350,6 +2357,18 @@ DisplayProcessorFamily2 (
Print (L"Video Processor\n");
break;
case 0x200:
Print (L"RISC-V RV32\n");
break;
case 0x201:
Print (L"RISC-V RV64\n");
break;
case 0x202:
Print (L"RISC-V RV128\n");
break;
default:
ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNDEFINED_PROC_FAMILY), gShellDebug1HiiHandle);
}

View File

@ -2,7 +2,7 @@
Module to clarify the element info of the smbios structure.
Copyright (c) 2005 - 2015, Intel Corporation. All rights reserved.<BR>
(C) Copyright 2017 Hewlett Packard Enterprise Development LP<BR>
(C) Copyright 2017 - 2019 Hewlett Packard Enterprise Development LP<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@ -427,4 +427,15 @@ DisplayTpmDeviceCharacteristics (
IN UINT8 Option
);
/**
Display Processor Architecture Type (Type 44).
@param[in] Key The key of the structure.
@param[in] Option The optional information.
**/
VOID
DisplayProcessorArchitectureType (
IN UINT8 Key,
IN UINT8 Option
);
#endif

View File

@ -3,7 +3,7 @@
And give a interface of query a string out of a table.
Copyright (c) 2005 - 2018, Intel Corporation. All rights reserved.<BR>
(C) Copyright 2016-2017 Hewlett Packard Enterprise Development LP<BR>
(C) Copyright 2016-2019 Hewlett Packard Enterprise Development LP<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@ -620,6 +620,10 @@ TABLE_ITEM ProcessorCharacteristicsTable[] = {
{
7,
L" Power/Performance Control"
},
{
8,
L" 128-bit Capable"
}
};
@ -3268,6 +3272,44 @@ TABLE_ITEM MCHostInterfaceTypeTable[] = {
},
};
TABLE_ITEM ProcessorArchitectureTypesTable[] = {
{
0,
L" Reserved "
},
{
1,
L" IA32 (x86) "
},
{
2,
L" x64 (x86-64, intel64, AMD64, EM64T) "
},
{
3,
L" Intel Itanium architecture "
},
{
4,
L" 32-bit ARM (Aarch32) "
},
{
5,
L" 64-bit ARM (Aarch64) "
},
{
6,
L" 32-bit RISC-V (RV32) "
},
{
7,
L" 64-bit RISC-V (RV64) "
},
{
8,
L" 128-bit RISC-V (RV128) "
}
};
TABLE_ITEM StructureTypeInfoTable[] = {
{
@ -3446,6 +3488,10 @@ TABLE_ITEM StructureTypeInfoTable[] = {
43,
L" TPM Device"
},
{
44,
L" Processor Additional Information"
},
{
0x7E,
L" Inactive"
@ -4696,6 +4742,23 @@ DisplayMCHostInterfaceType (
PRINT_TABLE_ITEM (MCHostInterfaceTypeTable, Key);
}
/**
Display Processor Architecture Type (Type 44).
@param[in] Key The key of the structure.
@param[in] Option The optional information.
**/
VOID
DisplayProcessorArchitectureType (
IN UINT8 Key,
IN UINT8 Option
)
{
ShellPrintHiiEx (-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PROCESSOR_ARCH_TYPE), gShellDebug1HiiHandle);
PRINT_INFO_OPTION (Key, Option);
PRINT_TABLE_ITEM (ProcessorArchitectureTypesTable, Key);
}
/**
Display the structure type information.

View File

@ -2,7 +2,7 @@
//
// Copyright (c) 2005 - 2018, Intel Corporation. All rights reserved.<BR>
// (C) Copyright 2014-2015 Hewlett-Packard Development Company, L.P.<BR>
// (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP<BR>
// (C) Copyright 2015-2019 Hewlett Packard Enterprise Development LP<BR>
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// Module Name:
@ -447,6 +447,7 @@
#string STR_SMBIOSVIEW_QUERYTABLE_BMC_INTERFACE_TYPE #language en-US "BMC Interface Type:"
#string STR_SMBIOSVIEW_QUERYTABLE_MC_HOST_INTERFACE_TYPE #language en-US "MC Host Interface Type:"
#string STR_SMBIOSVIEW_QUERYTABLE_STRUCT_TYPE #language en-US "Structure Type:"
#string STR_SMBIOSVIEW_QUERYTABLE_PROCESSOR_ARCH_TYPE #language en-US "Processor Architecture Type:"
#string STR_SMBIOSVIEW_SMBIOSVIEW_ONE_VAR_ARGV #language en-US "%s "
#string STR_SMBIOSVIEW_SMBIOSVIEW_QUERY_STRUCT_COND #language en-US "Query Structure, conditions are:\r\n"
#string STR_SMBIOSVIEW_SMBIOSVIEW_QUERYTYPE_RANDOM #language en-US "QueryType = Random \r\n"

View File

@ -2,7 +2,7 @@
//
// Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.<BR>
// (C) Copyright 2013-2015 Hewlett-Packard Development Company, L.P.<BR>
// (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
// (C) Copyright 2016 - 2019 Hewlett Packard Enterprise Development LP<BR>
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// Module Name:
@ -976,6 +976,7 @@
" 41 - Onboard Devices Extended Information\r\n"
" 42 - Management Controller Host Interface\r\n"
" 43 - TPM Device\r\n"
" 44 - Processor Additional Information\r\n"
" 2. Enter the SmbiosHandle parameter in hexadecimal format.\r\n"
" Do not use the '0x' prefix format for hexadecimal values.\r\n"
" 3. Internal commands:\r\n"