From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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 3CD161A1DFC for ; Sat, 17 Sep 2016 08:36:33 -0700 (PDT) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga105.fm.intel.com with ESMTP; 17 Sep 2016 08:36:32 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.30,351,1470726000"; d="scan'208";a="1052454981" Received: from orsmsx103.amr.corp.intel.com ([10.22.225.130]) by orsmga002.jf.intel.com with ESMTP; 17 Sep 2016 08:36:32 -0700 Received: from orsmsx155.amr.corp.intel.com (10.22.240.21) by ORSMSX103.amr.corp.intel.com (10.22.225.130) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sat, 17 Sep 2016 08:36:32 -0700 Received: from orsmsx113.amr.corp.intel.com ([169.254.9.161]) by ORSMSX155.amr.corp.intel.com ([10.22.240.21]) with mapi id 14.03.0248.002; Sat, 17 Sep 2016 08:36:31 -0700 From: "Mudusuru, Giri P" To: "Yarlagadda, Satya P" , "edk2-devel@lists.01.org" CC: "Ma, Maurice" , "Yao, Jiewen" , "Mudusuru, Giri P" Thread-Topic: [PATCH] IntelFsp2Pkg: Align #Pragma in UPD header files to rest of EDK2 Pkgs Thread-Index: AQHSEJMmRYvJ3cxVAEKsytBXSRbiXqB90TCA Date: Sat, 17 Sep 2016 15:36:31 +0000 Message-ID: <4666AEFED60F8E4198B42BB01DCEABDF76EF02E1@ORSMSX113.amr.corp.intel.com> References: <20160917032449.5696-1-satya.p.yarlagadda@intel.com> In-Reply-To: <20160917032449.5696-1-satya.p.yarlagadda@intel.com> Accept-Language: en-US, hi-IN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.22.254.138] MIME-Version: 1.0 Subject: Re: [PATCH] IntelFsp2Pkg: Align #Pragma in UPD header files to rest of EDK2 Pkgs X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 17 Sep 2016 15:36:33 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Reviewed-by: Giri P Mudusuru =20 > -----Original Message----- > From: Yarlagadda, Satya P > Sent: Friday, September 16, 2016 8:25 PM > To: edk2-devel@lists.01.org > Cc: Ma, Maurice ; Yao, Jiewen > ; Mudusuru, Giri P > Subject: [PATCH] IntelFsp2Pkg: Align #Pragma in UPD header files to rest = of > EDK2 Pkgs >=20 > Changed the GenCfgOpt.py script to insert pragma pack(1) instead of > pragma pack (push, 1) in the upd header files generated during fsp build. > This is to align with rest of the EDKII pkgs pragma pack usage. >=20 > Also, this scripts generates UnusedUpdSpace for UPD address gaps. > Currently it uses UIN16/UINT32/UINT64 for 2/4/8 bytes instead of UINT8[], > thus causing upd space waste to have Natural Alignment. Hence changed the > script to use UINT8[] for any unusedUpd fields above 1 byte. >=20 > Cc: Maurice Ma > Cc: Jiewen Yao > Cc: Giri P Mudusuru > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Satya Yarlagadda > --- > IntelFsp2Pkg/Tools/GenCfgOpt.py | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) >=20 > diff --git a/IntelFsp2Pkg/Tools/GenCfgOpt.py > b/IntelFsp2Pkg/Tools/GenCfgOpt.py > index e8cec95..654cdfc 100644 > --- a/IntelFsp2Pkg/Tools/GenCfgOpt.py > +++ b/IntelFsp2Pkg/Tools/GenCfgOpt.py > @@ -875,6 +875,9 @@ EndList > IsArray =3D False > if Length in [1,2,4,8]: > Type =3D "UINT%d" % (Length * 8) > + if Name.startswith("UnusedUpdSpace") and Length !=3D 1: > + IsArray =3D True > + Type =3D "UINT8" > else: > IsArray =3D True > Type =3D "UINT8" > @@ -1129,7 +1132,7 @@ EndList > HeaderFd.write("#ifndef __%s__\n" % FileName) > HeaderFd.write("#define __%s__\n\n" % FileName) > HeaderFd.write("#include <%s>\n\n" % HeaderFileName) > - HeaderFd.write("#pragma pack(push, 1)\n\n") > + HeaderFd.write("#pragma pack(1)\n\n") >=20 > Export =3D False > for Line in IncLines: > @@ -1177,7 +1180,7 @@ EndList > for Item in range(len(StructStart)): > if Index >=3D StructStartWithComment[Item] and Index= <=3D > StructEnd[Item]: > HeaderFd.write (Line) > - HeaderFd.write("#pragma pack(pop)\n\n") > + HeaderFd.write("#pragma pack()\n\n") > HeaderFd.write("#endif\n") > HeaderFd.close() >=20 > @@ -1188,7 +1191,7 @@ EndList > HeaderFd.write("#ifndef __%s__\n" % FileName) > HeaderFd.write("#define __%s__\n\n" % FileName) > HeaderFd.write("#include \n\n") > - HeaderFd.write("#pragma pack(push, 1)\n\n") > + HeaderFd.write("#pragma pack(1)\n\n") >=20 > for item in range(len(UpdRegionCheck)): > Index =3D 0 > @@ -1222,7 +1225,7 @@ EndList > for Item in range(len(StructStart)): > if Index >=3D StructStartWithComment[Item] and Index= <=3D > StructEnd[Item]: > HeaderFd.write (Line) > - HeaderFd.write("#pragma pack(pop)\n\n") > + HeaderFd.write("#pragma pack()\n\n") > HeaderFd.write("#endif\n") > HeaderFd.close() >=20 > -- > 2.10.0.windows.1