From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 85C0521E11D94 for ; Wed, 9 Aug 2017 00:47:24 -0700 (PDT) Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Aug 2017 00:49:42 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.41,346,1498546800"; d="scan'208";a="297694993" Received: from ray-dev.ccr.corp.intel.com ([10.239.9.2]) by fmsmga004.fm.intel.com with ESMTP; 09 Aug 2017 00:49:38 -0700 From: Ruiyu Ni To: edk2-devel@lists.01.org Cc: Huajing Li Date: Wed, 9 Aug 2017 15:49:35 +0800 Message-Id: <20170809074935.230172-3-ruiyu.ni@intel.com> X-Mailer: git-send-email 2.12.2.windows.2 In-Reply-To: <20170809074935.230172-1-ruiyu.ni@intel.com> References: <20170809074935.230172-1-ruiyu.ni@intel.com> Subject: [PATCH 2/2] ShellPkg/driver: Show "-" in non-SFO mode X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Aug 2017 07:47:24 -0000 From: Huajing Li The patch shows "X"/"-" instead of "Y"/"N" in column "CFG" and "DIAG". The patch shows "-" instead of "0" in column "#D" and "#C". Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Huajing Li Reviewed-by: Ruiyu Ni --- .../Library/UefiShellDriver1CommandsLib/Drivers.c | 49 +++++++++++++++------- .../UefiShellDriver1CommandsLib.uni | 12 +++--- 2 files changed, 41 insertions(+), 20 deletions(-) diff --git a/ShellPkg/Library/UefiShellDriver1CommandsLib/Drivers.c b/ShellPkg/Library/UefiShellDriver1CommandsLib/Drivers.c index f3c1476872..4d876bb108 100644 --- a/ShellPkg/Library/UefiShellDriver1CommandsLib/Drivers.c +++ b/ShellPkg/Library/UefiShellDriver1CommandsLib/Drivers.c @@ -269,6 +269,8 @@ ShellCommandRunDrivers ( EFI_HANDLE *HandleWalker; UINTN ChildCount; UINTN DeviceCount; + CHAR16 ChildCountStr[3]; + CHAR16 DeviceCountStr[3]; CHAR16 *Temp2; CONST CHAR16 *FullDriverName; CHAR16 *TruncatedDriverName; @@ -363,26 +365,45 @@ ShellCommandRunDrivers ( FullDriverName = GetStringNameFromHandle(*HandleWalker, Language); ImageName = GetImageNameFromHandle (*HandleWalker); + UnicodeValueToStringS (ChildCountStr, sizeof (ChildCountStr), 0, ChildCount, 0); + UnicodeValueToStringS (DeviceCountStr, sizeof (DeviceCountStr), 0, DeviceCount, 0); TruncatedDriverName = NULL; if (!SfoFlag && (FullDriverName != NULL)) { TruncatedDriverName = AllocateZeroPool ((MAX_LEN_DRIVER_NAME + 1) * sizeof (CHAR16)); StrnCpyS (TruncatedDriverName, MAX_LEN_DRIVER_NAME + 1, FullDriverName, MAX_LEN_DRIVER_NAME); } - ShellPrintEx( - -1, - -1, - FormatString, - ConvertHandleToHandleIndex(*HandleWalker), - DriverVersion, - ChildCount > 0?L'B':(DeviceCount > 0?L'D':L'?'), - DriverConfig?L'Y':L'N', - DriverDiag?L'Y':L'N', - DeviceCount, - ChildCount, - SfoFlag?FullDriverName:TruncatedDriverName, - SfoFlag ? (Temp2 == NULL ? L"" : Temp2) : (ImageName == NULL ? L"" : ImageName) - ); + if (!SfoFlag) { + ShellPrintEx ( + -1, + -1, + FormatString, + ConvertHandleToHandleIndex (*HandleWalker), + DriverVersion, + ChildCount > 0 ? L'B' : (DeviceCount > 0 ? L'D' : L'?'), + DriverConfig ? L'X' : L'-', + DriverDiag ? L'X' : L'-', + DeviceCount > 0 ? DeviceCountStr : L"-", + ChildCount > 0 ? ChildCountStr : L"-", + TruncatedDriverName, + ImageName == NULL ? L"" : ImageName + ); + } else { + ShellPrintEx ( + -1, + -1, + FormatString, + ConvertHandleToHandleIndex (*HandleWalker), + DriverVersion, + ChildCount > 0 ? L'B' : (DeviceCount > 0 ? L'D' : L'?'), + DriverConfig ? L'Y' : L'N', + DriverDiag ? L'Y' : L'N', + DeviceCount, + ChildCount, + FullDriverName, + Temp2 == NULL ? L"" : Temp2 + ); + } if (TruncatedDriverName != NULL) { FreePool (TruncatedDriverName); } diff --git a/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni b/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni index 5ca548d9f6..05101f3782 100644 --- a/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni +++ b/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni @@ -90,12 +90,12 @@ #string STR_DEVICES_ITEM_LINE_SFO #language en-US "DevicesInfo,"%x","%c","%c","%c","%d","%d","%d","%s"\r\n" #string STR_DRIVERS_HEADER_LINES #language en-US "%N" -" T D\r\n" -" Y C I\r\n" -" P F A\r\n" -"DRV VERSION E G G #D #C DRIVER NAME IMAGE NAME\r\n" -"=== ======== = = = === === =================================== ==========\r\n" -#string STR_DRIVERS_ITEM_LINE #language en-US "%H%3x%N %08x %1c %1c %1c %3d %3d %-35s %s\r\n" +"%H T D%N\r\n" +"%HD Y C I%N\r\n" +"%HR P F A%N\r\n" +"%HV VERSION E G G #D #C DRIVER NAME IMAGE NAME%N\r\n" +"== ======== = = = == == =================================== ==========\r\n" +#string STR_DRIVERS_ITEM_LINE #language en-US "%H%2x%N %08x %1c %1c %1c %2s %2s %-35s %s\r\n" #string STR_DRIVERS_ITEM_LINE_SFO #language en-US "DriversInfo,"%x","%x","%c","%c","%c","%d","%d","%s","%s"\r\n" #string STR_DH_OUTPUT_DECODE #language en-US "%s: %g\r\n" -- 2.12.2.windows.2