From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.20, mailfrom: hao.a.wu@intel.com) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by groups.io with SMTP; Wed, 11 Sep 2019 19:49:53 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 11 Sep 2019 19:49:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,489,1559545200"; d="scan'208";a="384913622" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga005.fm.intel.com with ESMTP; 11 Sep 2019 19:49:51 -0700 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 11 Sep 2019 19:49:51 -0700 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Wed, 11 Sep 2019 19:49:51 -0700 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Wed, 11 Sep 2019 19:49:50 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.32]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.140]) with mapi id 14.03.0439.000; Thu, 12 Sep 2019 10:49:49 +0800 From: "Wu, Hao A" To: "Gao, Zhichao" , "devel@edk2.groups.io" , "Ni, Ray" , "Bi, Dandan" , "Dong, Eric" CC: "Wang, Jian J" , "Ni, Ray" Subject: Re: [PATCH 3/3] MdeModulePkg/BM_UI: Add the new terminal types to related menu Thread-Topic: [PATCH 3/3] MdeModulePkg/BM_UI: Add the new terminal types to related menu Thread-Index: AQHVaQX1EXxbrMyBc0Wu6HicO02IF6cnVy0w Date: Thu, 12 Sep 2019 02:49:49 +0000 Message-ID: References: <20190912010231.19544-1-zhichao.gao@intel.com> <20190912010231.19544-4-zhichao.gao@intel.com> In-Reply-To: <20190912010231.19544-4-zhichao.gao@intel.com> Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: hao.a.wu@intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable > -----Original Message----- > From: Gao, Zhichao > Sent: Thursday, September 12, 2019 9:03 AM > To: devel@edk2.groups.io > Cc: Wang, Jian J; Wu, Hao A; Ni, Ray > Subject: [PATCH 3/3] MdeModulePkg/BM_UI: Add the new terminal types > to related menu >=20 > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2186 >=20 > Add the new introduced terminal types to related setup menu to change > the terminal type from setup. Most platforms would have its own > configure setup menu and they need to change it to support these. > The new introduced terminal types are Linux, XtermR6, VT400 and SCO. >=20 I will leave the patch to Ray, Dandan and Eric for review. Best Regards, Hao Wu > Cc: Jian J Wang > Cc: Hao A Wu > Cc: Ray Ni > Signed-off-by: Zhichao Gao > --- > .../BootMaintenanceManager.h | 13 ++++--- > .../BootMaintenanceManagerStrings.uni | 10 +++++- > .../ConsoleOption.c | 35 ++++++------------- > .../BootMaintenanceManagerUiLib/Data.c | 16 ++++++--- > 4 files changed, 40 insertions(+), 34 deletions(-) >=20 > diff --git > a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManager.h > b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManager.h > index ea3cdce794..822401e68c 100644 > --- > a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManager.h > +++ > b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManager.h > @@ -1,7 +1,7 @@ > /** @file > Header file for boot maintenance module. >=20 > -Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.
> +Copyright (c) 2004 - 2019, Intel Corporation. All rights reserved.
> SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > **/ > @@ -12,6 +12,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent > #include "FormGuid.h" >=20 > #include > +#include > #include > #include > #include > @@ -92,7 +93,11 @@ typedef enum _TYPE_OF_TERMINAL { > TerminalTypeVt100, > TerminalTypeVt100Plus, > TerminalTypeVtUtf8, > - TerminalTypeTtyTerm > + TerminalTypeTtyTerm, > + TerminalTypeLinux, > + TerminalTypeXtermR6, > + TerminalTypeVt400, > + TerminalTypeSCO > } TYPE_OF_TERMINAL; >=20 > // > @@ -1301,12 +1306,12 @@ extern BM_MENU_OPTION > ConsoleOutMenu; > extern BM_MENU_OPTION ConsoleErrMenu; > extern BM_MENU_OPTION DriverMenu; > extern BM_MENU_OPTION TerminalMenu; > -extern UINT16 TerminalType[5]; > +extern UINT16 TerminalType[9]; > extern COM_ATTR BaudRateList[19]; > extern COM_ATTR DataBitsList[4]; > extern COM_ATTR ParityList[5]; > extern COM_ATTR StopBitsList[3]; > -extern EFI_GUID TerminalTypeGuid[5]; > +extern EFI_GUID TerminalTypeGuid[9]; > extern EFI_DEVICE_PATH_PROTOCOL EndDevicePath[]; > extern UINT16 mFlowControlType[2]; > extern UINT32 mFlowControlValue[2]; > diff --git > a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManagerStrings.uni > b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManagerStrings.uni > index 2e67d27bd0..3d47473e6c 100644 > --- > a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManagerStrings.uni > +++ > b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanc > eManagerStrings.uni > @@ -1,7 +1,7 @@ > ///** @file > // String definitions for Boot Maintenance Utility. > // > -// Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved. > +// Copyright (c) 2004 - 2019, Intel Corporation. All rights reserved. > // SPDX-License-Identifier: BSD-2-Clause-Patent > // > //**/ > @@ -233,6 +233,14 @@ > #language fr-FR "VT_UTF8" > #string STR_COM_TYPE_4 #language en-US "TTY_TERM" > #language fr-FR "TTY_TERM" > +#string STR_COM_TYPE_5 #language en-US "LINUX" > + #language fr-FR "LINUX" > +#string STR_COM_TYPE_6 #language en-US "XTERM_R6" > + #language fr-FR "XTERM_R6" > +#string STR_COM_TYPE_7 #language en-US "VT_400" > + #language fr-FR "VT_400" > +#string STR_COM_TYPE_8 #language en-US "SCO" > + #language fr-FR "SCO" > #string STR_RESET #language en-US "Reset System" > #language fr-FR "Reset System" > #string STR_FORM_GOTO_MAIN #language en-US "Go Back To Main > Page" > diff --git > a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/ConsoleOption.c > b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/ConsoleOption.c > index 7a53b58771..b0641c5ee9 100644 > --- > a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/ConsoleOption.c > +++ > b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/ConsoleOption.c > @@ -897,6 +897,7 @@ IsTerminalDevicePath ( > VENDOR_DEVICE_PATH *Vendor; > UART_DEVICE_PATH *Uart; > ACPI_HID_DEVICE_PATH *Acpi; > + UINTN Index; >=20 > IsTerminal =3D FALSE; >=20 > @@ -929,37 +930,21 @@ IsTerminalDevicePath ( > } >=20 > // > - // There are four kinds of Terminal types > + // There are 9 kinds of Terminal types > // check to see whether this devicepath > // is one of that type > // > - if (CompareGuid (&Vendor->Guid, &TerminalTypeGuid[0])) { > - *Termi =3D TerminalTypePcAnsi; > - IsTerminal =3D TRUE; > - } else { > - if (CompareGuid (&Vendor->Guid, &TerminalTypeGuid[1])) { > - *Termi =3D TerminalTypeVt100; > - IsTerminal =3D TRUE; > - } else { > - if (CompareGuid (&Vendor->Guid, &TerminalTypeGuid[2])) { > - *Termi =3D TerminalTypeVt100Plus; > - IsTerminal =3D TRUE; > - } else { > - if (CompareGuid (&Vendor->Guid, &TerminalTypeGuid[3])) { > - *Termi =3D TerminalTypeVtUtf8; > - IsTerminal =3D TRUE; > - } else { > - if (CompareGuid (&Vendor->Guid, &TerminalTypeGuid[4])) { > - *Termi =3D TerminalTypeTtyTerm; > - IsTerminal =3D TRUE; > - } else { > - IsTerminal =3D FALSE; > - } > - } > - } > + for (Index =3D 0; Index < ARRAY_SIZE (TerminalTypeGuid); Index++) { > + if (CompareGuid (&Vendor->Guid, &TerminalTypeGuid[Index])) { > + *Termi =3D Index; > + IsTerminal =3D TRUE; > } > } >=20 > + if (Index =3D=3D ARRAY_SIZE (TerminalTypeGuid)) { > + IsTerminal =3D FALSE; > + } > + > if (!IsTerminal) { > return FALSE; > } > diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Data.c > b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Data.c > index b9d86b09d8..5cd363c982 100644 > --- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Data.c > +++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Data.c > @@ -1,7 +1,7 @@ > /** @file > Define some data used for Boot Maint >=20 > -Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.
> +Copyright (c) 2004 - 2019, Intel Corporation. All rights reserved.
> SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > **/ > @@ -16,12 +16,16 @@ EFI_IFR_GUID_LABEL *mEndLabel =3D NULL; > /// > /// Terminal type string token storage > /// > -UINT16 TerminalType[] =3D { > +UINT16 TerminalType[9] =3D { > STRING_TOKEN(STR_COM_TYPE_0), > STRING_TOKEN(STR_COM_TYPE_1), > STRING_TOKEN(STR_COM_TYPE_2), > STRING_TOKEN(STR_COM_TYPE_3), > STRING_TOKEN(STR_COM_TYPE_4), > + STRING_TOKEN(STR_COM_TYPE_5), > + STRING_TOKEN(STR_COM_TYPE_6), > + STRING_TOKEN(STR_COM_TYPE_7), > + STRING_TOKEN(STR_COM_TYPE_8), > }; >=20 > /// > @@ -248,10 +252,14 @@ COM_ATTR StopBitsList[3] =3D { > /// > /// Guid for messaging path, used in Serial port setting. > /// > -EFI_GUID TerminalTypeGuid[] =3D { > +EFI_GUID TerminalTypeGuid[9] =3D { > DEVICE_PATH_MESSAGING_PC_ANSI, > DEVICE_PATH_MESSAGING_VT_100, > DEVICE_PATH_MESSAGING_VT_100_PLUS, > DEVICE_PATH_MESSAGING_VT_UTF8, > - EFI_TTY_TERM_GUID > + EFI_TTY_TERM_GUID, > + EDKII_LINUX_MODE_GUID, > + EDKII_XTERM_R6_GUID, > + EDKII_VT400_GUID, > + EDKII_SCO_GUID > }; > -- > 2.21.0.windows.1