public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 0/3] Add SMBIOS spec 3.1.0 support
@ 2017-01-17  3:24 Star Zeng
  2017-01-17  3:24 ` [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0 Star Zeng
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Star Zeng @ 2017-01-17  3:24 UTC (permalink / raw)
  To: edk2-devel
  Cc: Star Zeng, Liming Gao, Michael Kinney, Feng Tian, Ruiyu Ni,
	Jaben Carsey

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340

TPM Device (Type 43) support has been added at
713e4b007cb791829397522ad8f366dd1e08bee6 and
e9f0be021b7649c15d823e193110c0088cda9a89.

These patch are to add support for below items.
• BIOS Information (Type 0):
– Add new entry for extended BIOS ROM size
• System Enclosure or Chassis (Type 3):
– Add new chassis types: IoT Gateway and Embedded PC
– Add new chassis types: Mini PC and Stick PC
• Processor Information (Type 4):
– Add Intel Core m3 m5 m7 processors
– Add processor socket AM4
– Add processor socket LGA1151
– Add processor socket BGA1356, BGA1440, BGA1515
– Add AMD Opteron A-Series processor
– Add processor socket LGA3647-1
– Add processor socket SP3 Processors
– Add families for ARMv7 and ARMv8
– Add family for AMD Opteron(TM) X3000 Series APU
• Cache Information (Type 7):
– Extend to support Cache sizes >2047 MB
• System Slots (Type 9):
– Add Mini PCIe support

Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Jaben Carsey <jaben.carsey@intel.com>

Star Zeng (3):
  MdePkg: Add definitions for SMBIOS spec 3.1.0
  MdeModulePkg: Update PcdSmbiosVersion to 0x0301 for SMBIOS spec 3.1.0
  ShellPkg SmbiosView: Add decoding of SMBIOS spec 3.1.0

 MdeModulePkg/MdeModulePkg.dec                      |  2 +-
 MdePkg/Include/IndustryStandard/SmBios.h           | 46 ++++++++++++++++--
 .../SmbiosView/PrintInfo.c                         | 44 ++++++++++++++++-
 .../SmbiosView/QueryTable.c                        | 56 ++++++++++++++++++++++
 .../SmbiosView/SmbiosViewStrings.uni               |  1 +
 .../UefiShellDebug1CommandsLib.uni                 |  3 +-
 6 files changed, 145 insertions(+), 7 deletions(-)

-- 
2.7.0.windows.1



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0
  2017-01-17  3:24 [PATCH 0/3] Add SMBIOS spec 3.1.0 support Star Zeng
@ 2017-01-17  3:24 ` Star Zeng
  2017-01-18  7:25   ` Gao, Liming
  2017-01-17  3:24 ` [PATCH 2/3] MdeModulePkg: Update PcdSmbiosVersion to 0x0301 " Star Zeng
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 7+ messages in thread
From: Star Zeng @ 2017-01-17  3:24 UTC (permalink / raw)
  To: edk2-devel; +Cc: Star Zeng, Liming Gao, Michael Kinney

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340

TPM Device (Type 43) definition has been added at
713e4b007cb791829397522ad8f366dd1e08bee6.

This patch is to add definitions for below items.
• BIOS Information (Type 0):
– Add new entry for extended BIOS ROM size
• System Enclosure or Chassis (Type 3):
– Add new chassis types: IoT Gateway and Embedded PC
– Add new chassis types: Mini PC and Stick PC
• Processor Information (Type 4):
– Add Intel Core m3 m5 m7 processors
– Add processor socket AM4
– Add processor socket LGA1151
– Add processor socket BGA1356, BGA1440, BGA1515
– Add AMD Opteron A-Series processor
– Add processor socket LGA3647-1
– Add processor socket SP3 Processors
– Add families for ARMv7 and ARMv8
– Add family for AMD Opteron(TM) X3000 Series APU
• Cache Information (Type 7):
– Extend to support Cache sizes >2047 MB
• System Slots (Type 9):
– Add Mini PCIe support

Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
---
 MdePkg/Include/IndustryStandard/SmBios.h | 46 +++++++++++++++++++++++++++++---
 1 file changed, 42 insertions(+), 4 deletions(-)

diff --git a/MdePkg/Include/IndustryStandard/SmBios.h b/MdePkg/Include/IndustryStandard/SmBios.h
index f72a56d6a0d3..f5c29bcbd0c8 100644
--- a/MdePkg/Include/IndustryStandard/SmBios.h
+++ b/MdePkg/Include/IndustryStandard/SmBios.h
@@ -1,7 +1,7 @@
 /** @file
-  Industry Standard Definitions of SMBIOS Table Specification v3.0.0.
+  Industry Standard Definitions of SMBIOS Table Specification v3.1.0.
 
-Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
 (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP<BR>
 This program and the accompanying materials are licensed and made available under 
 the terms and conditions of the BSD License that accompanies this distribution.  
@@ -268,6 +268,14 @@ typedef struct {
 } MISC_BIOS_CHARACTERISTICS_EXTENSION;
 
 ///
+/// Extended BIOS ROM size.
+///
+typedef struct {
+  UINT16 Size           :14;
+  UINT16 Unit           :2;
+} EXTENDED_BIOS_ROM_SIZE;
+
+///
 /// BIOS Information (Type 0).
 ///
 typedef struct {
@@ -283,6 +291,10 @@ typedef struct {
   UINT8                     SystemBiosMinorRelease;
   UINT8                     EmbeddedControllerFirmwareMajorRelease;
   UINT8                     EmbeddedControllerFirmwareMinorRelease;
+  //
+  // Add for smbios 3.1.0
+  //
+  EXTENDED_BIOS_ROM_SIZE    ExtendedBiosSize;
 } SMBIOS_TABLE_TYPE0;
 
 ///
@@ -407,7 +419,11 @@ typedef enum {
   MiscChassisBladeEnclosure           = 0x1D,
   MiscChassisTablet                   = 0x1E,
   MiscChassisConvertible              = 0x1F,
-  MiscChassisDetachable               = 0x20
+  MiscChassisDetachable               = 0x20,
+  MiscChassisIoTGateway               = 0x21,
+  MiscChassisEmbeddedPc               = 0x22,
+  MiscChassisMiniPc                   = 0x23,
+  MiscChassisStickPc                  = 0x24
 } MISC_CHASSIS_TYPE;
 
 ///
@@ -540,6 +556,9 @@ typedef enum {
   ProcessorFamilyIntelCoreSoloMobile    = 0x2A,
   ProcessorFamilyIntelAtom              = 0x2B,
   ProcessorFamilyIntelCoreM             = 0x2C,
+  ProcessorFamilyIntelCorem3            = 0x2D,
+  ProcessorFamilyIntelCorem5            = 0x2E,
+  ProcessorFamilyIntelCorem7            = 0x2F,
   ProcessorFamilyAlpha                  = 0x30,
   ProcessorFamilyAlpha21064             = 0x31,
   ProcessorFamilyAlpha21066             = 0x32,
@@ -590,6 +609,8 @@ typedef enum {
   ProcessorFamilyAmdAthlonX4QuadCore    = 0x66,
   ProcessorFamilyAmdOpteronX1000Series  = 0x67,
   ProcessorFamilyAmdOpteronX2000Series  = 0x68,
+  ProcessorFamilyAmdOpteronASeries      = 0x69,
+  ProcessorFamilyAmdOpteronX3000Series  = 0x6A,
   ProcessorFamilyHobbit                 = 0x70,
   ProcessorFamilyCrusoeTM5000           = 0x78,
   ProcessorFamilyCrusoeTM3000           = 0x79,
@@ -699,6 +720,8 @@ typedef enum {
 /// Processor Information2 - Processor Family2.
 ///
 typedef enum {
+  ProcessorFamilyARMv7                 = 0x0100,
+  ProcessorFamilyARMv8                 = 0x0101,
   ProcessorFamilySH3                   = 0x0104,
   ProcessorFamilySH4                   = 0x0105,
   ProcessorFamilyARM                   = 0x0118,
@@ -774,7 +797,14 @@ typedef enum {
   ProcessorUpgradeSocketLGA1150   = 0x2D,
   ProcessorUpgradeSocketBGA1168   = 0x2E,
   ProcessorUpgradeSocketBGA1234   = 0x2F,
-  ProcessorUpgradeSocketBGA1364   = 0x30
+  ProcessorUpgradeSocketBGA1364   = 0x30,
+  ProcessorUpgradeSocketAM4       = 0x31,
+  ProcessorUpgradeSocketLGA1151   = 0x32,
+  ProcessorUpgradeSocketBGA1356   = 0x33,
+  ProcessorUpgradeSocketBGA1440   = 0x34,
+  ProcessorUpgradeSocketBGA1515   = 0x35,
+  ProcessorUpgradeSocketLGA3647_1 = 0x36,
+  ProcessorUpgradeSocketSP3       = 0x37
 } PROCESSOR_UPGRADE;
 
 ///
@@ -1081,6 +1111,11 @@ typedef struct {
   UINT8                     ErrorCorrectionType;            ///< The enumeration value from CACHE_ERROR_TYPE_DATA.
   UINT8                     SystemCacheType;                ///< The enumeration value from CACHE_TYPE_DATA.
   UINT8                     Associativity;                  ///< The enumeration value from CACHE_ASSOCIATIVITY_DATA.
+  //
+  // Add for smbios 3.1.0
+  //
+  UINT32                    MaximumCacheSize2;
+  UINT32                    InstalledSize2;
 } SMBIOS_TABLE_TYPE7;
 
 ///
@@ -1225,6 +1260,9 @@ typedef enum {
   SlotTypeMxm30TypeB                   = 0x1E,
   SlotTypePciExpressGen2Sff_8639       = 0x1F,
   SlotTypePciExpressGen3Sff_8639       = 0x20,
+  SlotTypePciExpressMini52pinWithBSKO  = 0x21,      ///< PCI Express Mini 52-pin (CEM spec. 2.0) with bottom-side keep-outs.
+  SlotTypePciExpressMini52pinWithoutBSKO = 0x22,    ///< PCI Express Mini 52-pin (CEM spec. 2.0) without bottom-side keep-outs.
+  SlotTypePciExpressMini76pin          = 0x23,      ///< PCI Express Mini 76-pin (CEM spec. 2.0) Corresponds to Display-Mini card.
   SlotTypePC98C20                      = 0xA0,
   SlotTypePC98C24                      = 0xA1,
   SlotTypePC98E                        = 0xA2,
-- 
2.7.0.windows.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/3] MdeModulePkg: Update PcdSmbiosVersion to 0x0301 for SMBIOS spec 3.1.0
  2017-01-17  3:24 [PATCH 0/3] Add SMBIOS spec 3.1.0 support Star Zeng
  2017-01-17  3:24 ` [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0 Star Zeng
@ 2017-01-17  3:24 ` Star Zeng
  2017-01-17  3:24 ` [PATCH 3/3] ShellPkg SmbiosView: Add decoding of " Star Zeng
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Star Zeng @ 2017-01-17  3:24 UTC (permalink / raw)
  To: edk2-devel; +Cc: Star Zeng, Feng Tian, Liming Gao

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340

Cc: Feng Tian <feng.tian@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
---
 MdeModulePkg/MdeModulePkg.dec | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec
index 73071919646c..bde93a4aeccb 100644
--- a/MdeModulePkg/MdeModulePkg.dec
+++ b/MdeModulePkg/MdeModulePkg.dec
@@ -1515,7 +1515,7 @@ [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
 
   ## SMBIOS version.
   # @Prompt SMBIOS version.
-  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0300|UINT16|0x00010055
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSmbiosVersion|0x0301|UINT16|0x00010055
 
   ## SMBIOS Docrev field in SMBIOS 3.0 (64-bit) Entry Point Structure.
   # @Prompt SMBIOS Docrev field in SMBIOS 3.0 (64-bit) Entry Point Structure.
-- 
2.7.0.windows.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/3] ShellPkg SmbiosView: Add decoding of SMBIOS spec 3.1.0
  2017-01-17  3:24 [PATCH 0/3] Add SMBIOS spec 3.1.0 support Star Zeng
  2017-01-17  3:24 ` [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0 Star Zeng
  2017-01-17  3:24 ` [PATCH 2/3] MdeModulePkg: Update PcdSmbiosVersion to 0x0301 " Star Zeng
@ 2017-01-17  3:24 ` Star Zeng
  2017-01-17  5:50 ` [PATCH 0/3] Add SMBIOS spec 3.1.0 support Tian, Feng
  2017-01-18 20:59 ` Carsey, Jaben
  4 siblings, 0 replies; 7+ messages in thread
From: Star Zeng @ 2017-01-17  3:24 UTC (permalink / raw)
  To: edk2-devel; +Cc: Star Zeng, Ruiyu Ni, Jaben Carsey

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340

The decoding of TPM Device (Type 43) has been added at
e9f0be021b7649c15d823e193110c0088cda9a89.

Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Jaben Carsey <jaben.carsey@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
---
 .../SmbiosView/PrintInfo.c                         | 44 ++++++++++++++++-
 .../SmbiosView/QueryTable.c                        | 56 ++++++++++++++++++++++
 .../SmbiosView/SmbiosViewStrings.uni               |  1 +
 .../UefiShellDebug1CommandsLib.uni                 |  3 +-
 4 files changed, 102 insertions(+), 2 deletions(-)

diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
index abbc9835b5d0..ecb8e2492453 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
@@ -335,7 +335,17 @@ SmbiosPrintStructure (
       PRINT_STRUCT_VALUE (Struct, Type0, EmbeddedControllerFirmwareMajorRelease);
       PRINT_STRUCT_VALUE (Struct, Type0, EmbeddedControllerFirmwareMinorRelease);
     }
-
+    if (AE_SMBIOS_VERSION (0x3, 0x1) && (Struct->Hdr->Length > 0x18)) {
+      ShellPrintHiiEx (
+        -1,
+        -1,
+        NULL,
+        STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_EXTENDED_BIOS_SIZE),
+        gShellDebug1HiiHandle,
+        Struct->Type0->ExtendedBiosSize.Size,
+        (Struct->Type0->ExtendedBiosSize.Unit == 0x0) ? L"MB": L"GB"
+        );
+    }
     break;
 
   //
@@ -510,6 +520,10 @@ SmbiosPrintStructure (
     DisplayCacheErrCorrectingType (Struct->Type7->ErrorCorrectionType, Option);
     DisplayCacheSystemCacheType (Struct->Type7->SystemCacheType, Option);
     DisplayCacheAssociativity (Struct->Type7->Associativity, Option);
+    if (AE_SMBIOS_VERSION (0x3, 0x1) && (Struct->Hdr->Length > 0x13)) {
+      PRINT_STRUCT_VALUE_H (Struct, Type7, MaximumCacheSize2);
+      PRINT_STRUCT_VALUE_H (Struct, Type7, InstalledSize2);
+    }
     break;
 
   //
@@ -1584,6 +1598,18 @@ DisplayProcessorFamily (
     Print (L"Intel(R) Core(TM) M processor\n");
     break;
 
+  case 0x2D:
+    Print (L"Intel(R) Core(TM) m3 processor\n");
+    break;
+
+  case 0x2E:
+    Print (L"Intel(R) Core(TM) m5 processor\n");
+    break;
+
+  case 0x2F:
+    Print (L"Intel(R) Core(TM) m7 processor\n");
+    break;
+
   case 0x30:
     ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ALPHA_FAMILY_2), gShellDebug1HiiHandle);
     break;
@@ -1784,6 +1810,14 @@ DisplayProcessorFamily (
     Print (L"AMD Opteron(TM) X2000 Series APU\n");
     break;
 
+  case 0x69:
+    Print (L"AMD Opteron(TM) A-Series Processor\n");
+    break;
+
+  case 0x6A:
+    Print (L"AMD Opteron(TM) X3000 Series APU\n");
+    break;
+
   case 0x70:
     ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_HOBBIT_FAMILY), gShellDebug1HiiHandle);
     break;
@@ -2215,6 +2249,14 @@ DisplayProcessorFamily2 (
   // Use switch to check
   //
   switch (Family2) {
+    case 0x100:
+      Print (L"ARMv7\n");
+      break;
+
+    case 0x101:
+      Print (L"ARMv8\n");
+      break;
+
     case 0x104:
       Print (L"SH-3\n");
       break;
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.c
index acca00d5c37d..4a06c12e3b2b 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.c
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.c
@@ -260,6 +260,22 @@ TABLE_ITEM  SystemEnclosureTypeTable[] = {
     0x20,
     L"  Detachable"
   },
+  {
+    0x21,
+    L"  IoT Gateway"
+  },
+  {
+    0x22,
+    L"  Embedded PC"
+  },
+  {
+    0x23,
+    L"  Mini PC"
+  },
+  {
+    0x24,
+    L"  Stick PC"
+  },
 };
 
 TABLE_ITEM  SystemEnclosureStatusTable[] = {
@@ -531,6 +547,34 @@ TABLE_ITEM  ProcessorUpgradeTable[] = {
   {
     0x30,
     L"Socket BGA1364"
+  },
+  {
+    0x31,
+    L"Socket AM4"
+  },
+  {
+    0x32,
+    L"Socket LGA1151"
+  },
+  {
+    0x33,
+    L"Socket BGA1356"
+  },
+  {
+    0x34,
+    L"Socket BGA1440"
+  },
+  {
+    0x35,
+    L"Socket BGA1515"
+  },
+  {
+    0x36,
+    L"Socket LGA3647-1"
+  },
+  {
+    0x37,
+    L"Socket SP3"
   }
 };
 
@@ -1347,6 +1391,18 @@ TABLE_ITEM  SystemSlotTypeTable[] = {
     L"PCI Express Gen 3 SFF-8639"
   },
   {
+    0x21,
+    L"PCI Express Mini 52-pin (CEM spec. 2.0) with bottom-side keep-outs"
+  },
+  {
+    0x22,
+    L"PCI Express Mini 52-pin (CEM spec. 2.0) without bottom-side keep-outs"
+  },
+  {
+    0x23,
+    L"PCI Express Mini 76-pin (CEM spec. 2.0) Corresponds to Display-Mini card"
+  },
+  {
     0xA0,
     L"PC-98/C20 "
   },
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
index 0596f1fb3126..b9032df076d2 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
@@ -380,6 +380,7 @@
 #string STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_REPLACE           #language en-US "Power supply is hot replaceable\r\n"
 #string STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_NOT_REPLACE       #language en-US "Power supply is not hot replaceable\r\n"
 #string STR_SMBIOSVIEW_PRINTINFO_BIOS_SIZE                      #language en-US "BiosSize:  %d KB\r\n"
+#string STR_SMBIOSVIEW_PRINTINFO_EXTENDED_BIOS_SIZE             #language en-US "ExtendedBiosSize:  %d %s\r\n"
 #string STR_SMBIOSVIEW_QUERYTABLE_NO_INFO                       #language en-US "No Info"
 #string STR_SMBIOSVIEW_QUERYTABLE_RSVD_BITS_SET                 #language en-US "\r\nIt also has reserved bits set 1 --- reserved bits: 0x%x"
 #string STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_WAKEUP_TYPE            #language en-US "System Wakeup Type:"
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni
index 06865a42a292..609e1a80772e 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.uni
@@ -1,6 +1,6 @@
 // /**
 //
-// Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+// Copyright (c) 2010 - 2017, 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>
 // This program and the accompanying materials
@@ -999,6 +999,7 @@
 "       40 - Additional Information\r\n"
 "       41 - Onboard Devices Extended Information\r\n"
 "       42 - Management Controller Host Interface\r\n"
+"       43 - TPM Device\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.0.windows.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] Add SMBIOS spec 3.1.0 support
  2017-01-17  3:24 [PATCH 0/3] Add SMBIOS spec 3.1.0 support Star Zeng
                   ` (2 preceding siblings ...)
  2017-01-17  3:24 ` [PATCH 3/3] ShellPkg SmbiosView: Add decoding of " Star Zeng
@ 2017-01-17  5:50 ` Tian, Feng
  2017-01-18 20:59 ` Carsey, Jaben
  4 siblings, 0 replies; 7+ messages in thread
From: Tian, Feng @ 2017-01-17  5:50 UTC (permalink / raw)
  To: Zeng, Star, edk2-devel@lists.01.org
  Cc: Gao, Liming, Kinney, Michael D, Ni, Ruiyu, Carsey, Jaben,
	Tian, Feng

MdeModulePkg reviewed-by: Feng Tian <feng.tian@intel.com>

Thanks
Feng

-----Original Message-----
From: Zeng, Star 
Sent: Tuesday, January 17, 2017 11:25 AM
To: edk2-devel@lists.01.org
Cc: Zeng, Star <star.zeng@intel.com>; Gao, Liming <liming.gao@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com>; Tian, Feng <feng.tian@intel.com>; Ni, Ruiyu <ruiyu.ni@intel.com>; Carsey, Jaben <jaben.carsey@intel.com>
Subject: [PATCH 0/3] Add SMBIOS spec 3.1.0 support

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340

TPM Device (Type 43) support has been added at
713e4b007cb791829397522ad8f366dd1e08bee6 and e9f0be021b7649c15d823e193110c0088cda9a89.

These patch are to add support for below items.
• BIOS Information (Type 0):
– Add new entry for extended BIOS ROM size • System Enclosure or Chassis (Type 3):
– Add new chassis types: IoT Gateway and Embedded PC – Add new chassis types: Mini PC and Stick PC • Processor Information (Type 4):
– Add Intel Core m3 m5 m7 processors
– Add processor socket AM4
– Add processor socket LGA1151
– Add processor socket BGA1356, BGA1440, BGA1515 – Add AMD Opteron A-Series processor – Add processor socket LGA3647-1 – Add processor socket SP3 Processors – Add families for ARMv7 and ARMv8 – Add family for AMD Opteron(TM) X3000 Series APU • Cache Information (Type 7):
– Extend to support Cache sizes >2047 MB • System Slots (Type 9):
– Add Mini PCIe support

Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Jaben Carsey <jaben.carsey@intel.com>

Star Zeng (3):
  MdePkg: Add definitions for SMBIOS spec 3.1.0
  MdeModulePkg: Update PcdSmbiosVersion to 0x0301 for SMBIOS spec 3.1.0
  ShellPkg SmbiosView: Add decoding of SMBIOS spec 3.1.0

 MdeModulePkg/MdeModulePkg.dec                      |  2 +-
 MdePkg/Include/IndustryStandard/SmBios.h           | 46 ++++++++++++++++--
 .../SmbiosView/PrintInfo.c                         | 44 ++++++++++++++++-
 .../SmbiosView/QueryTable.c                        | 56 ++++++++++++++++++++++
 .../SmbiosView/SmbiosViewStrings.uni               |  1 +
 .../UefiShellDebug1CommandsLib.uni                 |  3 +-
 6 files changed, 145 insertions(+), 7 deletions(-)

--
2.7.0.windows.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0
  2017-01-17  3:24 ` [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0 Star Zeng
@ 2017-01-18  7:25   ` Gao, Liming
  0 siblings, 0 replies; 7+ messages in thread
From: Gao, Liming @ 2017-01-18  7:25 UTC (permalink / raw)
  To: Zeng, Star, edk2-devel@lists.01.org; +Cc: Kinney, Michael D

Reviewed-by: Liming Gao <liming.gao@intel.com>

-----Original Message-----
From: Zeng, Star 
Sent: Tuesday, January 17, 2017 11:25 AM
To: edk2-devel@lists.01.org
Cc: Zeng, Star <star.zeng@intel.com>; Gao, Liming <liming.gao@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com>
Subject: [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340

TPM Device (Type 43) definition has been added at
713e4b007cb791829397522ad8f366dd1e08bee6.

This patch is to add definitions for below items.
• BIOS Information (Type 0):
– Add new entry for extended BIOS ROM size
• System Enclosure or Chassis (Type 3):
– Add new chassis types: IoT Gateway and Embedded PC
– Add new chassis types: Mini PC and Stick PC
• Processor Information (Type 4):
– Add Intel Core m3 m5 m7 processors
– Add processor socket AM4
– Add processor socket LGA1151
– Add processor socket BGA1356, BGA1440, BGA1515
– Add AMD Opteron A-Series processor
– Add processor socket LGA3647-1
– Add processor socket SP3 Processors
– Add families for ARMv7 and ARMv8
– Add family for AMD Opteron(TM) X3000 Series APU
• Cache Information (Type 7):
– Extend to support Cache sizes >2047 MB
• System Slots (Type 9):
– Add Mini PCIe support

Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
---
 MdePkg/Include/IndustryStandard/SmBios.h | 46 +++++++++++++++++++++++++++++---
 1 file changed, 42 insertions(+), 4 deletions(-)

diff --git a/MdePkg/Include/IndustryStandard/SmBios.h b/MdePkg/Include/IndustryStandard/SmBios.h
index f72a56d6a0d3..f5c29bcbd0c8 100644
--- a/MdePkg/Include/IndustryStandard/SmBios.h
+++ b/MdePkg/Include/IndustryStandard/SmBios.h
@@ -1,7 +1,7 @@
 /** @file
-  Industry Standard Definitions of SMBIOS Table Specification v3.0.0.
+  Industry Standard Definitions of SMBIOS Table Specification v3.1.0.
 
-Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
 (C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP<BR>
 This program and the accompanying materials are licensed and made available under 
 the terms and conditions of the BSD License that accompanies this distribution.  
@@ -268,6 +268,14 @@ typedef struct {
 } MISC_BIOS_CHARACTERISTICS_EXTENSION;
 
 ///
+/// Extended BIOS ROM size.
+///
+typedef struct {
+  UINT16 Size           :14;
+  UINT16 Unit           :2;
+} EXTENDED_BIOS_ROM_SIZE;
+
+///
 /// BIOS Information (Type 0).
 ///
 typedef struct {
@@ -283,6 +291,10 @@ typedef struct {
   UINT8                     SystemBiosMinorRelease;
   UINT8                     EmbeddedControllerFirmwareMajorRelease;
   UINT8                     EmbeddedControllerFirmwareMinorRelease;
+  //
+  // Add for smbios 3.1.0
+  //
+  EXTENDED_BIOS_ROM_SIZE    ExtendedBiosSize;
 } SMBIOS_TABLE_TYPE0;
 
 ///
@@ -407,7 +419,11 @@ typedef enum {
   MiscChassisBladeEnclosure           = 0x1D,
   MiscChassisTablet                   = 0x1E,
   MiscChassisConvertible              = 0x1F,
-  MiscChassisDetachable               = 0x20
+  MiscChassisDetachable               = 0x20,
+  MiscChassisIoTGateway               = 0x21,
+  MiscChassisEmbeddedPc               = 0x22,
+  MiscChassisMiniPc                   = 0x23,
+  MiscChassisStickPc                  = 0x24
 } MISC_CHASSIS_TYPE;
 
 ///
@@ -540,6 +556,9 @@ typedef enum {
   ProcessorFamilyIntelCoreSoloMobile    = 0x2A,
   ProcessorFamilyIntelAtom              = 0x2B,
   ProcessorFamilyIntelCoreM             = 0x2C,
+  ProcessorFamilyIntelCorem3            = 0x2D,
+  ProcessorFamilyIntelCorem5            = 0x2E,
+  ProcessorFamilyIntelCorem7            = 0x2F,
   ProcessorFamilyAlpha                  = 0x30,
   ProcessorFamilyAlpha21064             = 0x31,
   ProcessorFamilyAlpha21066             = 0x32,
@@ -590,6 +609,8 @@ typedef enum {
   ProcessorFamilyAmdAthlonX4QuadCore    = 0x66,
   ProcessorFamilyAmdOpteronX1000Series  = 0x67,
   ProcessorFamilyAmdOpteronX2000Series  = 0x68,
+  ProcessorFamilyAmdOpteronASeries      = 0x69,
+  ProcessorFamilyAmdOpteronX3000Series  = 0x6A,
   ProcessorFamilyHobbit                 = 0x70,
   ProcessorFamilyCrusoeTM5000           = 0x78,
   ProcessorFamilyCrusoeTM3000           = 0x79,
@@ -699,6 +720,8 @@ typedef enum {
 /// Processor Information2 - Processor Family2.
 ///
 typedef enum {
+  ProcessorFamilyARMv7                 = 0x0100,
+  ProcessorFamilyARMv8                 = 0x0101,
   ProcessorFamilySH3                   = 0x0104,
   ProcessorFamilySH4                   = 0x0105,
   ProcessorFamilyARM                   = 0x0118,
@@ -774,7 +797,14 @@ typedef enum {
   ProcessorUpgradeSocketLGA1150   = 0x2D,
   ProcessorUpgradeSocketBGA1168   = 0x2E,
   ProcessorUpgradeSocketBGA1234   = 0x2F,
-  ProcessorUpgradeSocketBGA1364   = 0x30
+  ProcessorUpgradeSocketBGA1364   = 0x30,
+  ProcessorUpgradeSocketAM4       = 0x31,
+  ProcessorUpgradeSocketLGA1151   = 0x32,
+  ProcessorUpgradeSocketBGA1356   = 0x33,
+  ProcessorUpgradeSocketBGA1440   = 0x34,
+  ProcessorUpgradeSocketBGA1515   = 0x35,
+  ProcessorUpgradeSocketLGA3647_1 = 0x36,
+  ProcessorUpgradeSocketSP3       = 0x37
 } PROCESSOR_UPGRADE;
 
 ///
@@ -1081,6 +1111,11 @@ typedef struct {
   UINT8                     ErrorCorrectionType;            ///< The enumeration value from CACHE_ERROR_TYPE_DATA.
   UINT8                     SystemCacheType;                ///< The enumeration value from CACHE_TYPE_DATA.
   UINT8                     Associativity;                  ///< The enumeration value from CACHE_ASSOCIATIVITY_DATA.
+  //
+  // Add for smbios 3.1.0
+  //
+  UINT32                    MaximumCacheSize2;
+  UINT32                    InstalledSize2;
 } SMBIOS_TABLE_TYPE7;
 
 ///
@@ -1225,6 +1260,9 @@ typedef enum {
   SlotTypeMxm30TypeB                   = 0x1E,
   SlotTypePciExpressGen2Sff_8639       = 0x1F,
   SlotTypePciExpressGen3Sff_8639       = 0x20,
+  SlotTypePciExpressMini52pinWithBSKO  = 0x21,      ///< PCI Express Mini 52-pin (CEM spec. 2.0) with bottom-side keep-outs.
+  SlotTypePciExpressMini52pinWithoutBSKO = 0x22,    ///< PCI Express Mini 52-pin (CEM spec. 2.0) without bottom-side keep-outs.
+  SlotTypePciExpressMini76pin          = 0x23,      ///< PCI Express Mini 76-pin (CEM spec. 2.0) Corresponds to Display-Mini card.
   SlotTypePC98C20                      = 0xA0,
   SlotTypePC98C24                      = 0xA1,
   SlotTypePC98E                        = 0xA2,
-- 
2.7.0.windows.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 0/3] Add SMBIOS spec 3.1.0 support
  2017-01-17  3:24 [PATCH 0/3] Add SMBIOS spec 3.1.0 support Star Zeng
                   ` (3 preceding siblings ...)
  2017-01-17  5:50 ` [PATCH 0/3] Add SMBIOS spec 3.1.0 support Tian, Feng
@ 2017-01-18 20:59 ` Carsey, Jaben
  4 siblings, 0 replies; 7+ messages in thread
From: Carsey, Jaben @ 2017-01-18 20:59 UTC (permalink / raw)
  To: Zeng, Star, edk2-devel@lists.01.org
  Cc: Gao, Liming, Kinney, Michael D, Tian, Feng, Ni, Ruiyu,
	Carsey, Jaben

Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>

For the ShellPkg content.

> -----Original Message-----
> From: Zeng, Star
> Sent: Monday, January 16, 2017 7:25 PM
> To: edk2-devel@lists.01.org
> Cc: Zeng, Star <star.zeng@intel.com>; Gao, Liming <liming.gao@intel.com>;
> Kinney, Michael D <michael.d.kinney@intel.com>; Tian, Feng
> <feng.tian@intel.com>; Ni, Ruiyu <ruiyu.ni@intel.com>; Carsey, Jaben
> <jaben.carsey@intel.com>
> Subject: [PATCH 0/3] Add SMBIOS spec 3.1.0 support
> Importance: High
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=340
> 
> TPM Device (Type 43) support has been added at
> 713e4b007cb791829397522ad8f366dd1e08bee6 and
> e9f0be021b7649c15d823e193110c0088cda9a89.
> 
> These patch are to add support for below items.
> • BIOS Information (Type 0):
> – Add new entry for extended BIOS ROM size
> • System Enclosure or Chassis (Type 3):
> – Add new chassis types: IoT Gateway and Embedded PC
> – Add new chassis types: Mini PC and Stick PC
> • Processor Information (Type 4):
> – Add Intel Core m3 m5 m7 processors
> – Add processor socket AM4
> – Add processor socket LGA1151
> – Add processor socket BGA1356, BGA1440, BGA1515
> – Add AMD Opteron A-Series processor
> – Add processor socket LGA3647-1
> – Add processor socket SP3 Processors
> – Add families for ARMv7 and ARMv8
> – Add family for AMD Opteron(TM) X3000 Series APU
> • Cache Information (Type 7):
> – Extend to support Cache sizes >2047 MB
> • System Slots (Type 9):
> – Add Mini PCIe support
> 
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Michael Kinney <michael.d.kinney@intel.com>
> Cc: Feng Tian <feng.tian@intel.com>
> Cc: Ruiyu Ni <ruiyu.ni@intel.com>
> Cc: Jaben Carsey <jaben.carsey@intel.com>
> 
> Star Zeng (3):
>   MdePkg: Add definitions for SMBIOS spec 3.1.0
>   MdeModulePkg: Update PcdSmbiosVersion to 0x0301 for SMBIOS spec
> 3.1.0
>   ShellPkg SmbiosView: Add decoding of SMBIOS spec 3.1.0
> 
>  MdeModulePkg/MdeModulePkg.dec                      |  2 +-
>  MdePkg/Include/IndustryStandard/SmBios.h           | 46
> ++++++++++++++++--
>  .../SmbiosView/PrintInfo.c                         | 44 ++++++++++++++++-
>  .../SmbiosView/QueryTable.c                        | 56 ++++++++++++++++++++++
>  .../SmbiosView/SmbiosViewStrings.uni               |  1 +
>  .../UefiShellDebug1CommandsLib.uni                 |  3 +-
>  6 files changed, 145 insertions(+), 7 deletions(-)
> 
> --
> 2.7.0.windows.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-01-18 20:59 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-17  3:24 [PATCH 0/3] Add SMBIOS spec 3.1.0 support Star Zeng
2017-01-17  3:24 ` [PATCH 1/3] MdePkg: Add definitions for SMBIOS spec 3.1.0 Star Zeng
2017-01-18  7:25   ` Gao, Liming
2017-01-17  3:24 ` [PATCH 2/3] MdeModulePkg: Update PcdSmbiosVersion to 0x0301 " Star Zeng
2017-01-17  3:24 ` [PATCH 3/3] ShellPkg SmbiosView: Add decoding of " Star Zeng
2017-01-17  5:50 ` [PATCH 0/3] Add SMBIOS spec 3.1.0 support Tian, Feng
2017-01-18 20:59 ` Carsey, Jaben

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox