From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.43; helo=mga05.intel.com; envelope-from=liming.gao@intel.com; receiver=edk2-devel@lists.01.org Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) (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 4B3602116DA11 for ; Mon, 22 Oct 2018 00:55:35 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 Oct 2018 00:55:34 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,411,1534834800"; d="scan'208";a="97375819" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga002.fm.intel.com with ESMTP; 22 Oct 2018 00:55:34 -0700 Received: from fmsmsx120.amr.corp.intel.com (10.18.124.208) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 22 Oct 2018 00:55:34 -0700 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by fmsmsx120.amr.corp.intel.com (10.18.124.208) with Microsoft SMTP Server (TLS) id 14.3.319.2; Mon, 22 Oct 2018 00:55:33 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.21]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.46]) with mapi id 14.03.0319.002; Mon, 22 Oct 2018 15:55:31 +0800 From: "Gao, Liming" To: "Zhu, Yonghong" , "edk2-devel@lists.01.org" Thread-Topic: [edk2] [Patch] BaseTools: Fix the *B and *F Flag display for Structure Pcd Thread-Index: AQHUZ3sHQ6Y7s2XEYk22thakdnlv5qUq6j0A Date: Mon, 22 Oct 2018 07:55:31 +0000 Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14E34CC56@SHSMSX104.ccr.corp.intel.com> References: <1539933085-9728-1-git-send-email-yonghong.zhu@intel.com> In-Reply-To: <1539933085-9728-1-git-send-email-yonghong.zhu@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [Patch] BaseTools: Fix the *B and *F Flag display for Structure Pcd X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Oct 2018 07:55:35 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Liming Gao >-----Original Message----- >From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >Yonghong Zhu >Sent: Friday, October 19, 2018 3:11 PM >To: edk2-devel@lists.01.org >Subject: [edk2] [Patch] BaseTools: Fix the *B and *F Flag display for Stru= cture >Pcd > >Because of we newly add the PcdFieldValueFromComm and >PcdFieldValueFromFdf in early parser phase, so in the report we use >the saved value in this two variables to print it. > >Contributed-under: TianoCore Contribution Agreement 1.1 >Signed-off-by: Yonghong Zhu >--- > BaseTools/Source/Python/build/BuildReport.py | 14 +++++++++++++- > 1 file changed, 13 insertions(+), 1 deletion(-) > >diff --git a/BaseTools/Source/Python/build/BuildReport.py >b/BaseTools/Source/Python/build/BuildReport.py >index a66adfb..c648086 100644 >--- a/BaseTools/Source/Python/build/BuildReport.py >+++ b/BaseTools/Source/Python/build/BuildReport.py >@@ -1072,13 +1072,17 @@ class PcdReport(object): > SkuInfoList =3D Pcd.SkuInfoList > Pcd =3D GlobalData.gStructurePcd[self.Arch][(Pcd.Toke= nCName, >Pcd.TokenSpaceGuidCName)] > Pcd.DatumType =3D Pcd.StructName > if TypeName in ('DYNVPD', 'DEXVPD'): > Pcd.SkuInfoList =3D SkuInfoList >- if Pcd.PcdFieldValueFromComm: >+ if Pcd.PcdValueFromComm or Pcd.PcdFieldValueFromComm: > BuildOptionMatch =3D True > DecMatch =3D False >+ elif Pcd.PcdValueFromFdf or Pcd.PcdFieldValueFromFdf: >+ DscDefaultValue =3D True >+ DscMatch =3D True >+ DecMatch =3D False > elif Pcd.SkuOverrideValues: > DscOverride =3D False > if Pcd.DefaultFromDSC: > DscOverride =3D True > else: >@@ -1264,18 +1268,22 @@ class PcdReport(object): > Value =3D '{} ({:d})'.format(Value, int(Value, 0)= ) > else: > Value =3D "0x{:X} ({})".format(int(Value, 0), Val= ue) > FileWrite(File, ' %-*s : %6s %10s =3D %s' % (self.MaxLe= n, Flag + ' ' + >PcdTokenCName, TypeName, '(' + Pcd.DatumType + ')', Value)) > if IsStructure: >+ FiledOverrideFlag =3D False > OverrideValues =3D Pcd.SkuOverrideValues > if OverrideValues: > for Data in OverrideValues.values(): > Struct =3D list(Data.values()) > if Struct: > OverrideFieldStruct =3D self.OverrideFieldVal= ue(Pcd, Struct[0]) > self.PrintStructureInfo(File, OverrideFieldSt= ruct) >+ FiledOverrideFlag =3D True > break >+ if not FiledOverrideFlag and (Pcd.PcdFieldValueFromComm o= r >Pcd.PcdFieldValueFromFdf): >+ OverrideFieldStruct =3D self.OverrideFieldValue(Pcd, = {}) > self.PrintPcdDefault(File, Pcd, IsStructure, DscMatch, DscDef= aultValue, >InfMatch, InfDefaultValue, DecMatch, DecDefaultValue) > else: > FirstPrint =3D True > SkuList =3D sorted(Pcd.SkuInfoList.keys()) > for Sku in SkuList: >@@ -1391,15 +1399,19 @@ class PcdReport(object): > else: > FileWrite(File, ' %-*s : %6s %10s %10s = =3D %s' % (self.MaxLen, ' >', TypeName, '(' + Pcd.DatumType + ')', '(' + SkuIdName + ')', Value)) > if TypeName in ('DYNVPD', 'DEXVPD'): > FileWrite(File, '%*s' % (self.MaxLen + 4, SkuInfo= .VpdOffset)) > if IsStructure: >+ FiledOverrideFlag =3D False > OverrideValues =3D Pcd.SkuOverrideValues[Sku] > if OverrideValues: > Keys =3D OverrideValues.keys() > OverrideFieldStruct =3D self.OverrideFieldVal= ue(Pcd, >OverrideValues[Keys[0]]) > self.PrintStructureInfo(File, OverrideFieldSt= ruct) >+ FiledOverrideFlag =3D True >+ if not FiledOverrideFlag and (Pcd.PcdFieldValueFr= omComm or >Pcd.PcdFieldValueFromFdf): >+ OverrideFieldStruct =3D self.OverrideFieldVal= ue(Pcd, {}) > self.PrintPcdDefault(File, Pcd, IsStructure, DscMatch= , >DscDefaultValue, InfMatch, InfDefaultValue, DecMatch, DecDefaultValue) > > def OverrideFieldValue(self, Pcd, OverrideStruct): > OverrideFieldStruct =3D collections.OrderedDict() > if OverrideStruct: >-- >2.6.1.windows.1 > >_______________________________________________ >edk2-devel mailing list >edk2-devel@lists.01.org >https://lists.01.org/mailman/listinfo/edk2-devel