]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
ShellPkg/SmbiosView: add more items for smbiosview -t 3
[mirror_edk2.git] / ShellPkg / Library / UefiShellDebug1CommandsLib / SmbiosView / PrintInfo.c
index a3dc7b68c4d3e2b75c575bbda64885ba2c3241f0..8d757c0014795b020ab13a53bd97ce3aaaed8334 100644 (file)
@@ -280,6 +280,7 @@ SmbiosPrintStructure (
   )\r
 {\r
   UINT8 Index;\r
+  UINT8 Index2;\r
   UINT8 *Buffer;\r
 \r
   if (Struct == NULL) {\r
@@ -404,6 +405,21 @@ SmbiosPrintStructure (
       if (Struct->Hdr->Length > 0x12) {\r
         PRINT_STRUCT_VALUE (Struct, Type3, NumberofPowerCords);\r
       }\r
+      if (Struct->Hdr->Length > 0x13) {\r
+        PRINT_STRUCT_VALUE (Struct, Type3, ContainedElementCount);\r
+      }\r
+      if (Struct->Hdr->Length > 0x14) {\r
+        PRINT_STRUCT_VALUE (Struct, Type3, ContainedElementRecordLength);\r
+      }\r
+      if (Struct->Hdr->Length > 0x15) {\r
+        for (Index = 0; Index < Struct->Type3->ContainedElementCount; Index++) {\r
+          ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CONTAINED_ELEMENT), gShellDebug1HiiHandle, Index+1);\r
+          for (Index2 = 0; Index2< Struct->Type3->ContainedElementRecordLength; Index2++) {\r
+            Print (L"%02X ", Buffer[0x15 + (Index * Struct->Type3->ContainedElementRecordLength) + Index2]);\r
+          }\r
+          Print (L"\n");\r
+        }\r
+      }\r
     }\r
     if (AE_SMBIOS_VERSION (0x2, 0x7) && (Struct->Hdr->Length > 0x13)) {\r
       if (Struct->Hdr->Length > (0x15 + (Struct->Type3->ContainedElementCount * Struct->Type3->ContainedElementRecordLength))) {\r