[edk2-devel] [PATCH V5] ShellPkg: add more items for smbiosview -t 3 .

Mars CC Lin posted 1 patch 3 years, 1 month ago
Failed in applying to current master (apply log)
.../SmbiosView/PrintInfo.c                        | 15 +++++++++++++++
.../SmbiosView/SmbiosViewStrings.uni              |  1 +
2 files changed, 16 insertions(+)
[edk2-devel] [PATCH V5] ShellPkg: add more items for smbiosview -t 3 .
Posted by Mars CC Lin 3 years, 1 month ago
https://bugzilla.tianocore.org/show_bug.cgi?id=3177
Add ContainedElementCount, ContainedElementRecordLength and
ContainedElements for smbiosview type 3.

Signed-off-by: Mars CC Lin <mars_cc_lin@phoenix.com>
Cc: Zhichao Gao <zhichao.gao@intel.com>
Cc: Philippe Mathieu-Daude <philmd@redhat.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
---
 .../SmbiosView/PrintInfo.c                        | 15 +++++++++++++++
 .../SmbiosView/SmbiosViewStrings.uni              |  1 +
 2 files changed, 16 insertions(+)

diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
index 478f63078a..04e4882272 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
@@ -404,6 +404,21 @@ SmbiosPrintStructure (
       if (Struct->Hdr->Length > 0x12) {
         PRINT_STRUCT_VALUE (Struct, Type3, NumberofPowerCords);
       }
+      if (Struct->Hdr->Length > 0x13) {
+        PRINT_STRUCT_VALUE (Struct, Type3, ContainedElementCount);
+      }
+      if (Struct->Hdr->Length > 0x14) {
+        PRINT_STRUCT_VALUE (Struct, Type3, ContainedElementRecordLength);
+      }
+      if (Struct->Hdr->Length > 0x15) {
+        for (Index = 0; Index < Struct->Type3->ContainedElementCount; Index++) {
+          ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CONTAINED_ELEMENT), gShellDebug1HiiHandle, Index+1);
+          for (Index2 = 0; Index2< Struct->Type3->ContainedElementRecordLength; Index2++) {
+            Print (L"%02X ", Buffer[0x15 + (Index * Struct->Type3->ContainedElementRecordLength) + Index2]);
+          }
+          Print (L"\n");
+        }
+      }
     }
     if (AE_SMBIOS_VERSION (0x2, 0x7) && (Struct->Hdr->Length > 0x13)) {
       if (Struct->Hdr->Length > (0x15 + (Struct->Type3->ContainedElementCount * Struct->Type3->ContainedElementRecordLength))) {
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
index 97e1d54fcf..20a556a175 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
@@ -93,6 +93,7 @@
 #string STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_STATE             #language en-US "Power Supply State "
 #string STR_SMBIOSVIEW_PRINTINFO_THERMAL_STATE                  #language en-US "Thermal state "
 #string STR_SMBIOSVIEW_PRINTINFO_SECURITY_STATUS                #language en-US "Security Status "
+#string STR_SMBIOSVIEW_PRINTINFO_CONTAINED_ELEMENT              #language en-US "Contained Element %d: "
 #string STR_SMBIOSVIEW_PRINTINFO_SUPOPRT                        #language en-US "Support "
 #string STR_SMBIOSVIEW_PRINTINFO_CURRENT                        #language en-US "Current "
 #string STR_SMBIOSVIEW_PRINTINFO_INSTALLED                      #language en-US "Installed "
-- 
2.29.1.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#72377): https://edk2.groups.io/g/devel/message/72377
Mute This Topic: https://groups.io/mt/81047033/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH V5] ShellPkg: add more items for smbiosview -t 3 .
Posted by Gao, Zhichao 3 years, 1 month ago
I am OK with the patch. But the patch is using incorrect "Line ending":
python ./BaseTools/Scripts/PatchCheck.py -1
Checking git commit: HEAD
ShellPkg: add more items for smbiosview -t 3 .
The commit message format passed all checks.
Code format is not valid:
* Line ending ('\n') is not CRLF
   File: ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
   Line:       if (Struct->Hdr->Length > 0x13) {
* Line ending ('\n') is not CRLF
   File: ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
   Line:         PRINT_STRUCT_VALUE (Struct, Type3, ContainedElementCount);
* Line ending ('\n') is not CRLF

It is a good habit to use above check before send the patch. You should change your edit setting when you're working on edk2. Others are OK to me,
Reviewed-by: Zhichao Gao <zhichao.gao@intel.com>
Do not send the patch again. I would make the change. Because of it is hard freeze now, the patch would be merged after the 202102 stable create.

By the way, are you follow the development process https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Development-Process to send the patch? I am confused why I cannot extract your patch thru extractor tool.

Thanks,
Zhichao

From: Mars CC Lin <mars_cc_lin@phoenix.com>
Sent: Wednesday, March 3, 2021 3:28 PM
To: devel@edk2.groups.io
Cc: Gao, Zhichao <zhichao.gao@intel.com>; Philippe Mathieu-Daude <philmd@redhat.com>; Liming Gao <gaoliming@byosoft.com.cn>
Subject: [PATCH V5] ShellPkg: add more items for smbiosview -t 3 .

https://bugzilla.tianocore.org/show_bug.cgi?id=3177
Add ContainedElementCount, ContainedElementRecordLength and
ContainedElements for smbiosview type 3.

Signed-off-by: Mars CC Lin <mars_cc_lin@phoenix.com<mailto:mars_cc_lin@phoenix.com>>
Cc: Zhichao Gao <zhichao.gao@intel.com<mailto:zhichao.gao@intel.com>>
Cc: Philippe Mathieu-Daude <philmd@redhat.com<mailto:philmd@redhat.com>>
Cc: Liming Gao <gaoliming@byosoft.com.cn<mailto:gaoliming@byosoft.com.cn>>
---
.../SmbiosView/PrintInfo.c | 15 +++++++++++++++
.../SmbiosView/SmbiosViewStrings.uni | 1 +
2 files changed, 16 insertions(+)

diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
index 478f63078a..04e4882272 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.c
@@ -404,6 +404,21 @@ SmbiosPrintStructure (
if (Struct->Hdr->Length > 0x12) {
PRINT_STRUCT_VALUE (Struct, Type3, NumberofPowerCords);
}
+ if (Struct->Hdr->Length > 0x13) {
+ PRINT_STRUCT_VALUE (Struct, Type3, ContainedElementCount);
+ }
+ if (Struct->Hdr->Length > 0x14) {
+ PRINT_STRUCT_VALUE (Struct, Type3, ContainedElementRecordLength);
+ }
+ if (Struct->Hdr->Length > 0x15) {
+ for (Index = 0; Index < Struct->Type3->ContainedElementCount; Index++) {
+ ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CONTAINED_ELEMENT), gShellDebug1HiiHandle, Index+1);
+ for (Index2 = 0; Index2< Struct->Type3->ContainedElementRecordLength; Index2++) {
+ Print (L"%02X ", Buffer[0x15 + (Index * Struct->Type3->ContainedElementRecordLength) + Index2]);
+ }
+ Print (L"\n");
+ }
+ }
}
if (AE_SMBIOS_VERSION (0x2, 0x7) && (Struct->Hdr->Length > 0x13)) {
if (Struct->Hdr->Length > (0x15 + (Struct->Type3->ContainedElementCount * Struct->Type3->ContainedElementRecordLength))) {
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
index 97e1d54fcf..20a556a175 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/SmbiosViewStrings.uni
@@ -93,6 +93,7 @@
#string STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_STATE #language en-US "Power Supply State "
#string STR_SMBIOSVIEW_PRINTINFO_THERMAL_STATE #language en-US "Thermal state "
#string STR_SMBIOSVIEW_PRINTINFO_SECURITY_STATUS #language en-US "Security Status "
+#string STR_SMBIOSVIEW_PRINTINFO_CONTAINED_ELEMENT #language en-US "Contained Element %d: "
#string STR_SMBIOSVIEW_PRINTINFO_SUPOPRT #language en-US "Support "
#string STR_SMBIOSVIEW_PRINTINFO_CURRENT #language en-US "Current "
#string STR_SMBIOSVIEW_PRINTINFO_INSTALLED #language en-US "Installed "
--
2.29.1.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#72378): https://edk2.groups.io/g/devel/message/72378
Mute This Topic: https://groups.io/mt/81047033/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH V5] ShellPkg: add more items for smbiosview -t 3 .
Posted by Mars CC Lin 3 years, 1 month ago
Thank you for help and advice. I will review the process again.


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#72487): https://edk2.groups.io/g/devel/message/72487
Mute This Topic: https://groups.io/mt/81047033/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-