From: Jaben Carsey Date: Tue, 5 Aug 2014 23:17:18 +0000 (+0000) Subject: Updates the logic to allow devices to support SFO output mode X-Git-Tag: edk2-stable201903~11235 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=477a79e1eb9cb9fbb035c633bc06144e5e87baed;p=mirror_edk2.git Updates the logic to allow devices to support SFO output mode Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jaben Carsey Reviewed-by: Erik Bjorge git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15760 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/ShellPkg/Library/UefiShellDriver1CommandsLib/Devices.c b/ShellPkg/Library/UefiShellDriver1CommandsLib/Devices.c index 7998bde8c6..afabc8a698 100644 --- a/ShellPkg/Library/UefiShellDriver1CommandsLib/Devices.c +++ b/ShellPkg/Library/UefiShellDriver1CommandsLib/Devices.c @@ -1,7 +1,7 @@ /** @file Main file for devices shell Driver1 function. - Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.
+ Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at @@ -203,8 +203,11 @@ ShellCommandRunDevices ( // // Print Header + // only in non SFO mode. // - ShellPrintHiiEx(-1, -1, Language, STRING_TOKEN (STR_DEVICES_HEADER_LINES), gShellDriver1HiiHandle); + if (!ShellCommandLineGetFlag(Package, L"-sfo")){ + ShellPrintHiiEx(-1, -1, Language, STRING_TOKEN (STR_DEVICES_HEADER_LINES), gShellDriver1HiiHandle); + } // // loop through each handle @@ -222,20 +225,37 @@ ShellCommandRunDevices ( Name = NULL; Status = GetDeviceHandleInfo(*HandleListWalker, &Type, &Cfg, &Diag, &Parents, &Devices, &Children, &Name, Language); if (Name != NULL && (Parents != 0 || Devices != 0 || Children != 0)) { - ShellPrintHiiEx( - -1, - -1, - Language, - STRING_TOKEN (STR_DEVICES_ITEM_LINE), - gShellDriver1HiiHandle, - ConvertHandleToHandleIndex(*HandleListWalker), - Type, - Cfg?L'X':L'-', - Diag?L'X':L'-', - Parents, - Devices, - Children, - Name!=NULL?Name:L""); + if (!ShellCommandLineGetFlag(Package, L"-sfo")){ + ShellPrintHiiEx( + -1, + -1, + Language, + STRING_TOKEN(STR_DEVICES_ITEM_LINE), + gShellDriver1HiiHandle, + ConvertHandleToHandleIndex(*HandleListWalker), + Type, + Cfg?L'X':L'-', + Diag?L'X':L'-', + Parents, + Devices, + Children, + Name != NULL ? Name : L""); + } else { + ShellPrintHiiEx( + -1, + -1, + Language, + STRING_TOKEN(STR_DEVICES_ITEM_LINE_SFO), + gShellDriver1HiiHandle, + ConvertHandleToHandleIndex(*HandleListWalker), + Type, + Cfg?L'Y':L'N', + Diag?L'Y':L'N', + Parents, + Devices, + Children, + Name != NULL ? Name : L""); + } } if (Name != NULL) { FreePool(Name); diff --git a/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni b/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni index 1c6d9f6d5b..a7c787e01b 100644 Binary files a/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni and b/ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.uni differ