[edk2-devel] [PATCH v6 3/3] ShellPkg/UefiShellDebug1CommandsLib: Update to support SmBios 3.3.0

Abner Chang abner.chang at hpe.com
Tue Oct 15 08:19:00 UTC 2019


I got it, v7 just sent. Please check it out.

Thanks
Abner

> -----Original Message-----
> From: devel at edk2.groups.io [mailto:devel at edk2.groups.io] On Behalf Of
> Gao, Zhichao
> Sent: Wednesday, October 9, 2019 3:46 PM
> To: devel at edk2.groups.io; Chang, Abner (HPS SW/FW Technologist)
> <abner.chang at hpe.com>
> Cc: Carsey, Jaben <jaben.carsey at intel.com>; Ni, Ray <ray.ni at intel.com>;
> Leif Lindholm <leif.lindholm at linaro.org>; Chen, Gilbert
> <gilbert.chen at hpe.com>
> Subject: Re: [edk2-devel] [PATCH v6 3/3]
> ShellPkg/UefiShellDebug1CommandsLib: Update to support SmBios 3.3.0
> 
> Thanks for take my suggestion. But you may forget the other one.
> What I said is that moving the display functions into one function, not just
> removing one of them.
> Here is the example:
> 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); }
> 
> And you should add the
> STR_SMBIOSVIEW_QUERYTABLE_PROCESSOR_ARCH_TYPE to the
> SmbiosViewStrings.uni file with an appropriate string like "Process
> Architecture Type:".
> 
> In my opinion, PRINT_STRUCT_VALUE_H is used to print the field's name and
> hex value without any explain of the value. And DisplayXXX function is used
> to display the field's name, field's value and the meaning of the value.
> 
> Thanks,
> Zhichao
> 
> > -----Original Message-----
> > From: devel at edk2.groups.io [mailto:devel at edk2.groups.io] On Behalf Of
> > Abner Chang
> > Sent: Wednesday, October 9, 2019 2:48 PM
> > To: devel at edk2.groups.io
> > Cc: abner.chang at hpe.com; Carsey, Jaben <jaben.carsey at intel.com>; Ni,
> > Ray <ray.ni at intel.com>; Gao, Zhichao <zhichao.gao at intel.com>; Leif
> > Lindholm <leif.lindholm at linaro.org>; Gilbert Chen
> > <gilbert.chen at hpe.com>
> > Subject: [edk2-devel] [PATCH v6 3/3]
> > ShellPkg/UefiShellDebug1CommandsLib: Update to support SmBios 3.3.0
> >
> > Shell command smbiosview updates for SMBIOS 3.3.0 spec.
> >
> > Bugzilla link,
> > INVALID URI REMOVED
> > e.org_show-5Fbug.cgi-3Fid-
> 3D2202&d=DwIFAg&c=C5b8zRQO1miGmBeVZ2LFWg&r=_
> > SN6FZBN4Vgi4Ulkskz6qU3NYRO03nHp9P7Z5q59A3E&m=Ts3QFi-
> 9F2sWNpLDpzAZ7jo9i
> > 58P5EIBxBTKE-hNKlw&s=74gcG5cccnAwHeMzaoABWbMurL1drLiJ02LFb8n-
> POw&e=
> >
> > Signed-off-by: Abner Chang <abner.chang at hpe.com>
> >
> > Cc: Jaben Carsey <jaben.carsey at intel.com>
> > Cc: Ray Ni <ray.ni at intel.com>
> > Cc: Zhichao Gao <zhichao.gao at intel.com>
> > Cc: Leif Lindholm <leif.lindholm at linaro.org>
> > Cc: Gilbert Chen <gilbert.chen at hpe.com>
> > ---
> >  .../SmbiosView/PrintInfo.c                         | 22 +++++++-
> >  .../SmbiosView/PrintInfo.h                         | 13 ++++-
> >  .../SmbiosView/QueryTable.c                        | 63 +++++++++++++++++++++-
> >  .../UefiShellDebug1CommandsLib.uni                 |  3 +-
> >  4 files changed, 97 insertions(+), 4 deletions(-)
> >
> > diff --git
> > a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
> > b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
> > index cfd7a2b..4989102 100644
> > ---
> > a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
> > +++
> > b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
> > @@ -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
> >
> >  **/
> > @@ -1169,6 +1169,14 @@ SmbiosPrintStructure (
> >      break;
> >
> >    //
> > +  // Processor Additional Information (Type 44)  //  case 44:
> > +    PRINT_STRUCT_VALUE_H (Struct, Type44, RefHandle);
> > +    DisplayProcessorArchitectureType (Struct->Type44-
> > >ProcessorSpecificBlock.ProcessorArchType, Option);
> > +    break;
> > +
> > +  //
> >    // Inactive (Type 126)
> >    //
> >    case 126:
> > @@ -2350,6 +2358,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);
> >    }
> > diff --git
> > a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h
> > b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h
> > index a8c32ab..77a86fc 100644
> > ---
> > a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h
> > +++
> > b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h
> > @@ -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
> > diff --git
> >
> a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.
> > c
> >
> b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.
> > c
> > index bfb7c3b..ef098ad 100644
> > ---
> >
> a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.
> > c
> > +++
> >
> b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.
> > +++ c
> > @@ -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[] = {
> >    {
> > @@ -3447,6 +3489,10 @@ TABLE_ITEM  StructureTypeInfoTable[] = {
> >      L" TPM Device"
> >    },
> >    {
> > +    44,
> > +    L" Processor Additional Information"
> > +  },
> > +  {
> >      0x7E,
> >      L" Inactive"
> >    },
> > @@ -4697,6 +4743,21 @@ DisplayMCHostInterfaceType (  }
> >
> >  /**
> > +  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
> > +  )
> > +{
> > +  PRINT_TABLE_ITEM (ProcessorArchitectureTypesTable, Key); }
> > +
> > +/**
> >    Display the structure type information.
> >
> >    @param[in] Key      The key of the structure.
> > diff --git
> >
> a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> > dsLib.uni
> >
> b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> > dsLib.uni
> > index 42a9295..6693be2 100644
> > ---
> >
> a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> > dsLib.uni
> > +++
> >
> b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> > d
> > +++ sLib.uni
> > @@ -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"
> > --
> > 2.7.4
> >
> >
> >
> 
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#48985): https://edk2.groups.io/g/devel/message/48985
Mute This Topic: https://groups.io/mt/34460664/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list