From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com [40.107.220.66]) by mx.groups.io with SMTP id smtpd.web09.3495.1665045439788623552 for ; Thu, 06 Oct 2022 01:37:20 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@amd.com header.s=selector1 header.b=OHTXFveu; spf=permerror, err=parse error for token &{10 18 %{i}._ip.%{h}._ehlo.%{d}._spf.vali.email}: invalid domain name (domain: amd.com, ip: 40.107.220.66, mailfrom: abner.chang@amd.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b38cN9duGF8fgoMZBPb+qq+kPEzvl395It+l0tTmAacHUKJXFB0MtDEzW6I/1q4MMeAECc1awU9K17dVDM82q/fC5/OEyrWH82lkUrhje7wVsyWGBCxM3rA3tmIepOTwk6JSlqVMbqdzoHMGdJ2hlMDbzwDpj39Vgju1pSolWX9TXPlR2QGibKwVePs1OT+uSd7EwEh8Rffc2oDUskcEBqZdAlrnd7qNi/buSByOXoI5xXStJJ4hzHEcBZQWRnAACuKZTYKGPqdLYbkJU2yGjhhh+Mvi3QsvkeNNZvBysqgEdeBzLCX4osWhF2GCMaOS9b149W21TKV2gxoSRzlPRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LFV7LQ1jW9iDXn5vqAFN+atkxlX1VYicQla+VpzAmDM=; b=XSfN0B1wIK9B5KpOycHc/rfVyys3CJVWdHnyHfDd9biOQdhdLmhMIoItY3eXgGYY4HrBECZvqcMiOSitOS92Cz+9UrzQ0HWobeqX8W8/LDvREar33TPQPoXHw7619yEywrHgx5r0Mj33IBcWnUjOiMonzXnSA0rIlvHVTd/0W6c6uwYjkHgplWBIEOOMlztBaZ0clIRAUVIK+Pn+DST8n6RuVCgNyRGho5ra7mDRAoDUzT+/aio8+2ARlvQOl4hCViSuzF/h2+4E3XMLcdNEgyw5uqaL2/qeWbYiXAzcNwJ3lmK5hua/muM2nZHXu0I4h258ps50Ysw4HlmRXMQtHA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LFV7LQ1jW9iDXn5vqAFN+atkxlX1VYicQla+VpzAmDM=; b=OHTXFveuckML016UNFlXk52Wt4cA/IW5lIqqr2RWkXlSbBOzDr4l6YCd2RxyypQfFbw4wSuDb6CY7bDlwFsusmTuUO1RljZwXgVj1J+23Liub2Ar8z0yWaDCvFJBYT2eX46YM5tn32H9e5PnkdQ4fWdELRPfXMcbe74CUM+49Yw= Received: from MN2PR12MB3966.namprd12.prod.outlook.com (2603:10b6:208:165::18) by IA0PR12MB7697.namprd12.prod.outlook.com (2603:10b6:208:433::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5654.26; Thu, 6 Oct 2022 08:37:16 +0000 Received: from MN2PR12MB3966.namprd12.prod.outlook.com ([fe80::dd29:6efb:1027:cfb2]) by MN2PR12MB3966.namprd12.prod.outlook.com ([fe80::dd29:6efb:1027:cfb2%5]) with mapi id 15.20.5676.034; Thu, 6 Oct 2022 08:37:15 +0000 From: "Chang, Abner" To: "Kinney, Michael D" , "devel@edk2.groups.io" , "quic_llindhol@quicinc.com" , "Ni, Ray" , "Attar, AbdulLateef (Abdul Lateef)" , Sunil V L CC: lichao , "Kirkendall, Garrett" , "Grimes, Paul" , "He, Jiangang" , Andrew Fish Subject: Re: [edk2-devel] The principles of EDK2 module reconstruction for archs Thread-Topic: [edk2-devel] The principles of EDK2 module reconstruction for archs Thread-Index: AdjPX4ZZG0rDXS4WTdOIWvoiYOLYcgC9rttQAC2dmIAADxJbkAAiVmtwAABqVrAAMdRUkAARY7IwAAF/rYAABYT70AB0Z6+AAAYqDgAAADksgAAYA9igACxnOYAAAHOkMAAgQPVgADh436A= Date: Thu, 6 Oct 2022 08:37:15 +0000 Message-ID: References: <0c1ee7b8-9ecf-3f46-ac36-9d1464831263@quicinc.com> In-Reply-To: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Enabled=true; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SetDate=2022-10-06T08:37:09Z; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Method=Standard; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Name=General; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ActionId=03c786de-7418-4e85-aaa1-fce5a654a4e3; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ContentBits=1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN2PR12MB3966:EE_|IA0PR12MB7697:EE_ x-ms-office365-filtering-correlation-id: d4b163e0-cec1-42a3-0217-08daa775f917 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 6paSUFelVB38exPy1zn7Ka3uPIcJ2/r99I+ZqACjUWR79POGaWdDRiqbAHRwZgn+rccETaIVlUZhQznbrcpAG7w1uqXXTvutmWVfItppyv7dSa5MpACe/wFb9+Y0AzF4VPcUyjFxnU42Gt0/00erBZuU8T7i+xHWAjJCcrxGuEb8tk6rJ15r18cOgcFf8hGWGo3Bh/BpW+bOe8bdOUOy9vmY9NkPsQVGWH7g4DQZKCw1VO8j8InlZuzVWPgw6Fq2zoeOsIHJ8mhveumm9LerABQhmI4ipxIuxD9VdhxGbUeGCrUuDqvkhTF1A36sJq8x7hphbA1oD0wsAtLC/g8hSU2L50dltAT8r9yesF1NvAZezMuJVlzm/jhGhSjH64ngkXCpxBfn26ky+kvmj9J9VbvHvzzwZrcolNxFeNKNd/UgRI3/3BOys1PxNOgHTO9y1l9V3mOqlNw/J8e/pgHBrL6bP4jcoIOrDK0ruYx11AehtdXzfVm8P/Dl5lHYyNyU7i4PtPwL45ujdPYjc0GGAB1neajC1paxMtEpAWYvaWXxSCTFIrCLqa1gjFbsfEaKPyvX1jF13my4d71Tr3ua3mpXVNcv1IH6PUwh4qPXbJwEhjSa3qRBkcLKrXbMQerdOXpLo665NnvJYGP9/Os5m7hxOVIDT9USf2MI62LLBmxpWrj+BH73HDOQbgsjpCSB5IZsAfilxA1EXDW8rkG+y6qFf+FORanlDWv+2FAZ1Vyh1HckD4oEoFXsa/vZC7US307tFc7OQ3Q1KwnBZbXqb8MfQ1m+uLgoioFTyZqY83pMK8sxWMgoIKxtynDaH90iwvB9n4K+VdI9rD+N2Wh6hQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB3966.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(346002)(376002)(136003)(39860400002)(366004)(396003)(451199015)(9686003)(4326008)(110136005)(76116006)(966005)(8676002)(86362001)(52536014)(33656002)(19627235002)(54906003)(55016003)(41300700001)(2906002)(30864003)(38070700005)(8936002)(66946007)(316002)(53546011)(71200400001)(83380400001)(64756008)(66446008)(478600001)(7696005)(66899015)(6506007)(122000001)(26005)(38100700002)(186003)(5660300002)(45080400002)(66476007)(66556008)(559001)(579004);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?jiPVsLjdwGn+5P0fWsEW/QOsMzCscq2j77JKWyxvUgIBgEtDktuRSmkP1mXY?= =?us-ascii?Q?3J8vaU0hfl+rZNv9nzqBCLiFw7KkXlGw66zsKLvlECLmaWtmAz7wUpEgg3pX?= =?us-ascii?Q?+eQNjQJX/EjajejwYzOqAppkBgyZDpM6FPJsYohKjkUGzIaIuYPVPGfBKmXJ?= =?us-ascii?Q?HABIuWwhjFyD5uEN/UabeXp9Xzz2xEBD40vf9Ohzrh6BegQyjnvrtlUs+sN7?= =?us-ascii?Q?zMB5YAAbfKllnfD9Wx3ZMKOLktp1n9TTRHe+aXQ5OHhtwAe7yvEVyYIfRtj/?= =?us-ascii?Q?w6OeosPNAd0H6R3yT4bItwLczHS/GRuO7+4UzZzUGtnl0PslDKTw8D2SlQPS?= =?us-ascii?Q?qCOYvMxM5lWpyS/QmEd47DvZ7T8g06AZkuvaJfpTVVxpAovx4p/2AW6Fb8X8?= =?us-ascii?Q?WM28zd+xxGV71TVQMr+a/yF0xk4sTX3YIyLldMBjPlZIumeOjX5Ez6Dx75d6?= =?us-ascii?Q?cOiPzhEa0HrplWT1uTTUZBQ/SEqEtXf17otS1eoMueKu+vGDUB1jUShoPZfd?= =?us-ascii?Q?+c2oi4etOkMnwE/1u/EQ3iJuapHJjQ7mbEc+IrVMCRJ09Rx2qYrMIOeFa2KY?= =?us-ascii?Q?iDzBh0VAmF328/Un8ULjypFugLFBbMYuJ6USR5o9cFrZ6hYxMa4Iz/8JC837?= =?us-ascii?Q?8cw7UwmxmRDBISLA53b394AWtvs4OOzeaVYUlucVbtZLicL31T1SxEGBTgE+?= =?us-ascii?Q?leBaowf4QRZcukUq4MymnSoTaZJh4wxn8Xj1JSp5hE3TFKbag4K9u/1YS/nl?= =?us-ascii?Q?kAAKNExzIfXge2qnmT92cGRuW57QQQXpbtW0Bng3KzvaxzOZtsBn0JF/w1J8?= =?us-ascii?Q?OitjzXLVEvNqvgVr3WX+DkG8u0ITbm5tcSfd9oAhOvDlMlJShGM1z7GqZCST?= =?us-ascii?Q?cl77AUbu/p8DEqC8TP9orpa2uI8La6bmB5OxSCmF86/kz51s8Td2P5BlY8YP?= =?us-ascii?Q?1hufDnkt/UFkVYDJMVd6nlY7FXU1PcC9e9iqmUmM2uidcP+B8b/TubdxHbd5?= =?us-ascii?Q?VFrR0P4jTSXo9XMG9O1t91seA4HRqed4w1obBQeOaBMoygvshLVOXBy4Vt26?= =?us-ascii?Q?hx01HoyrWiTPYHQwqVN+FKd1SVo4ON9X3dWPPAEqOvufRb94CPlKXALtyLNc?= =?us-ascii?Q?HL/CxIUWxcNIHeRXikC0hjIckjnu9gMHbyIgQmnj7eJcXtJe00nL/XvaI6tV?= =?us-ascii?Q?KhDQAoJ7/+DbRt37NlS/i1GXbHhcQm+p7YRnYsSXN4Rl/D5n13e8Wh3QtaM5?= =?us-ascii?Q?MnvqZGnRyiKHxf1oHgpbYXt9e/YulDwlHROpzQpVniR8553t0YnRIvMyblqM?= =?us-ascii?Q?84jRMVs0WNSomsMuw/EHuI3BVhN3HFyircdG8g397lAaVEBMrnTxLHn7AQNl?= =?us-ascii?Q?nYQ23wpo0uOCXkvh0sj00IeqJe3XtfrNoY1oPp5jga7fwTMomh07m9AMnStL?= =?us-ascii?Q?B8fogVmLtZrg3/Gh3dnZvcv7acJQZkcSMZRJ0rkKFpNrMmqxODT4vZ8lO63d?= =?us-ascii?Q?0ZzkhC6Zoed5QWVMzjNXXk18eJUrz9QH8Prk0ZLVjbZ2t3ggd6J2+d8k53sL?= =?us-ascii?Q?RZKakrqG16+7v3XIMc5zCR5fxOhk6sMlXMTe7dMN?= MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3966.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d4b163e0-cec1-42a3-0217-08daa775f917 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Oct 2022 08:37:15.7924 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: vKFaTrPehhYuwadLLshwC+vjUI9BvJkt20iDPLO+i2kp10mbVzAEu//AnnLII7gnYiL0tOrpzheO1BIaUfaq/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB7697 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable [AMD Official Use Only - General] Here is the update of the Wiki page for the consistency with edk2 C Coding = Standard Spec. https://github.com/changab/tianocore.github.io/wiki/The-Guidelines-of-Recon= struct-EDK-II-Modules-for-Processor-Architectures-and-Vendors'-Implementati= on Thanks Abner > -----Original Message----- > From: Chang, Abner > Sent: Wednesday, October 5, 2022 1:39 PM > To: Kinney, Michael D ; devel@edk2.groups.io; > quic_llindhol@quicinc.com; Ni, Ray ; Attar, AbdulLateef > (Abdul Lateef) ; Sunil V L > > Cc: lichao ; Kirkendall, Garrett > ; Grimes, Paul ; He, > Jiangang ; Andrew Fish > Subject: RE: [edk2-devel] The principles of EDK2 module reconstruction fo= r > archs >=20 > [AMD Official Use Only - General] >=20 > PR updated > https://github.com/tianocore-docs/edk2- > CCodingStandardsSpecification/pull/2/commits. Please check it. >=20 > Thanks > Abner >=20 > > -----Original Message----- > > From: Kinney, Michael D > > Sent: Tuesday, October 4, 2022 10:18 PM > > To: Chang, Abner ; devel@edk2.groups.io; > > quic_llindhol@quicinc.com; Ni, Ray ; Attar, > > AbdulLateef (Abdul Lateef) ; Sunil V L > > ; Kinney, Michael D > > > > Cc: lichao ; Kirkendall, Garrett > > ; Grimes, Paul ; > He, > > Jiangang ; Andrew Fish > > Subject: RE: [edk2-devel] The principles of EDK2 module reconstruction > > for archs > > > > Caution: This message originated from an External Source. Use proper > > caution when opening attachments, clicking links, or responding. > > > > > > I would not add link to Wiki from EDK II C Coding Standard Specificatio= n. > > > > We want documents published from tianocore-docs to support standalone > > formats such as PDF and if there is a link in one of those documents, > > we want to know that it is a permanent link. I am concerned we may > > reorganize Wiki pages and links in PDF would become stale. > > > > Links from Wiki to specs makes sense. > > > > Mike > > > > > -----Original Message----- > > > From: Chang, Abner > > > Sent: Tuesday, October 4, 2022 7:05 AM > > > To: Kinney, Michael D ; > > > devel@edk2.groups.io; quic_llindhol@quicinc.com; Ni, Ray > > > ; Attar, AbdulLateef (Abdul Lateef) > > > ; Sunil V L > > > Cc: lichao ; Kirkendall, Garrett > > > ; Grimes, Paul ; > > > He, Jiangang ; Andrew Fish > > > Subject: RE: [edk2-devel] The principles of EDK2 module > > > reconstruction for archs > > > > > > [AMD Official Use Only - General] > > > > > > > > > > > > > -----Original Message----- > > > > From: Kinney, Michael D > > > > Sent: Tuesday, October 4, 2022 12:54 AM > > > > To: devel@edk2.groups.io; Chang, Abner ; > > > > quic_llindhol@quicinc.com; Ni, Ray ; Attar, > > > > AbdulLateef (Abdul Lateef) ; Sunil V L > > > > ; Kinney, Michael D > > > > > > > > Cc: lichao ; Kirkendall, Garrett > > > > ; Grimes, Paul > ; > > > > He, Jiangang ; Andrew Fish > > > > > Subject: RE: [edk2-devel] The principles of EDK2 module > > > > reconstruction for archs > > > > > > > > Caution: This message originated from an External Source. Use > > > > proper caution when opening attachments, clicking links, or respond= ing. > > > > > > > > > > > > Hi Abner, > > > > > > > > responses below. > > > > > > > > Mike > > > > > > > > > -----Original Message----- > > > > > From: devel@edk2.groups.io On Behalf Of > > > > > Chang, Abner via groups.io > > > > > Sent: Sunday, October 2, 2022 10:37 PM > > > > > To: Kinney, Michael D ; > > > > > devel@edk2.groups.io; quic_llindhol@quicinc.com; Ni, Ray > > > > > ; Attar, AbdulLateef (Abdul Lateef) > > > > > ; Sunil V L > > > > > > > > > > Cc: lichao ; Kirkendall, Garrett > > > > > ; Grimes, Paul > > > > > ; > > > > He, > > > > > Jiangang ; Andrew Fish > > > > > Subject: Re: [edk2-devel] The principles of EDK2 module > > > > > reconstruction for archs > > > > > > > > > > [AMD Official Use Only - General] > > > > > > > > > > Mike, > > > > > Agree. This can be mentioned on the Wiki page. Also, this would > > > > > require the discussion between maintainer and contributor. I > > > > > would say > > > > maintainer has the responsibility to make sure an arch folder is > > > > only created when necessary. > > > > > > > > Agreed > > > Ok, I will update Directory and file names section. > > > > > > > > > > > > > > Do you agree with the arch concatenate solution for arch folder? > > > > > That > > > > means IA32_X64 instead of X86 (I am fine with this)? > > > > > > > > Yes > > > > > > > > > However, there is one scenario. Assume there were two arch > > > > > folders > > > > > IA32_X64 and RISCV64. Then ARM shares the code with IA32_X64, we > > > > > may > > > > rename IA32_X64 to IA32_X64_ARM. > > > > > Although the directory naming is not real a problem to the > > > > > build, a separate ARM folder seems easier? Or we can just allow > > > > > this kind of folder > > > > naming structure, however we let maintainer to make the decision? > > > > > > > > I would let the maintainer make the decision. For your example, > > > > another approach may be to move the IA32_X64 content up a level so > > > > it is common and is used by IA32, X64, ARM. And leave RISCV64 > > > > folder for an arch that has special requirements. I think having > > > > some flexibility in the guidelines is very beneficial. The main > > > > goal is for consistency when a specific guideline is followed. > > > I think we can have the naming rules in the edk2 C coding standard > > > spec and > > put these guidelines on the Wiki page. > > > Is that ok to have a link to Wiki page in the edk2 C coding standard = spec? > > > > > > Abner > > > > > > > > > > > > > > > > > Abner > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > From: Kinney, Michael D > > > > > > Sent: Monday, October 3, 2022 1:18 PM > > > > > > To: Chang, Abner ; > devel@edk2.groups.io; > > > > > > quic_llindhol@quicinc.com; Ni, Ray ; Attar, > > > > > > AbdulLateef (Abdul Lateef) ; Sunil > > > > > > V L ; Kinney, Michael D > > > > > > > > > > > > Cc: lichao ; Kirkendall, Garrett > > > > > > ; Grimes, Paul > > > > > > ; He, Jiangang ; > > > > > > Andrew Fish > > > > > > Subject: RE: [edk2-devel] The principles of EDK2 module > > > > > > reconstruction for archs > > > > > > > > > > > > Caution: This message originated from an External Source. Use > > > > > > proper caution when opening attachments, clicking links, or > responding. > > > > > > > > > > > > > > > > > > Abner, > > > > > > > > > > > > I think another guideline is to minimize the number of > subdirectories. > > > > > > > > > > > > Only create them if it helps with the organization and long > > > > > > term maintenance of the component. > > > > > > > > > > > > Mike > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > > From: Chang, Abner > > > > > > > Sent: Sunday, October 2, 2022 8:13 PM > > > > > > > To: Kinney, Michael D ; > > > > > > > devel@edk2.groups.io; quic_llindhol@quicinc.com; Ni, Ray > > > > > > > ; Attar, AbdulLateef (Abdul Lateef) > > > > > > > ; Sunil V L > > > > > > > > > > > > > > Cc: lichao ; Kirkendall, Garrett > > > > > > > ; Grimes, Paul > > > > ; > > > > > > He, > > > > > > > Jiangang ; Andrew Fish > > > > > > > > > > > > > > Subject: RE: [edk2-devel] The principles of EDK2 module > > > > > > > reconstruction for archs > > > > > > > > > > > > > > [AMD Official Use Only - General] > > > > > > > > > > > > > > Hi Mike and Leif, > > > > > > > First of all, we don't use arch folder if the module is > > > > > > > mainly for a specific arch in obviously. So we will have > > > > > > > both common and arch-specific > > > > > > files constructed under module/library root. > > > > > > > > > > > > > > > > > > https://nam11.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2F > > > > ed > > > > > > k > > > > > > 2 > > > > > > > > > > > > > > .groups.io%2Fg%2Fdevel%2Fmessage%2F94567&data=3D05%7C01%7CA > > > > > > bner.Chan > > > > > > > > > > > > > > > > > > > > g%40amd.com%7Cd49cbbe6d3d942bd69a308daa4fea41b%7C3dd8961fe4884 > > > > > > e608e11a > > > > > > > > > > > > > > > > > > > > 82d994e183d%7C0%7C0%7C638003710850252776%7CUnknown%7CTWFpbGZ > > > > > > sb3d8eyJWI > > > > > > > > > > > > > > > > > > > > joiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3 > > > > > > 000%7 > > > > > > > > > > > > > > > > > > C%7C%7C&sdata=3DeiLOC0G9WZWKqm2ALcAiKr7SPBP5AgDdAxogHlv5pI > > > > > > M%3D&r > > > > > > > eserved=3D0 > > > > > > > SmmCpuFeatureLib\Ia32 > > > > > > > SmmCpuFeatureLib\X64 > > > > > > > SmmCpuFeatureLib\SmmCpuFeatureLib.c > > > > > > > SmmCpuFeatureLib\SmmCpuFeatureLibCommon.c > > > > > > > SmmCpuFeatureLib\IntelSmmCPuFeaturesLib > > > > > > > SmmCpuFeatureLib\AmdlSmmCPuFeaturesLib > > > > > > > > > > > > > > > > > > > > > > > Could we concatenate architectures? > > > > > > > > > I.e. AARCH64_ARM, IA32_X64, AARCH64_RISCV64... ? > > > > > > > Looks like below? > > > > > > > > > > > > > > CpuDxe\IA32_X64\IA32\abc.nasm > CpuDxe\IA32_X64\X64\abc.nasm > > > > > > > CpuDxe\IA32_X64\CpuDxe.c CpuDxe\IA32_X64\AmdCpuDxe.c > > > > > > > CpuDxe\IA32_X64\IntelCpuDxe.c CpuDxe\RiscV64\CpuDxe.c > > > > > > > CpuDxe\ARM\CpuDxe.c CpuDxe\ > > > > > > > CpuDxeCommon.c // If required. > > > > > > > CpuDxe.inf // Use INF section a= rch modifier for X86, > > > > RISC-V > > > > > > and ARM. > > > > > > > CpuDxeAmd.inf // Separate INF for AMD. > > > > > > > > > > > > > > Seems ok, but is AARCH64_RISCV64 a real case? Or it means > > > > > > > we can create a folder "AARCH64_RISCV64" when there are some > > > > > > > common > > > > files > > > > > > shared by AARCH64 and RISCV64? > > > > > > > > > > > > > > For the 32/64 bit support, it can still stay under module > > > > > > > root and don't need to assign a folder for them unless the > > > > > > > arch has the different > > > > > > implementation. > > > > > > > Regards, > > > > > > > Abner > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > > > From: Kinney, Michael D > > > > > > > > Sent: Saturday, October 1, 2022 2:52 AM > > > > > > > > To: devel@edk2.groups.io; quic_llindhol@quicinc.com; > > > > > > > > Chang, Abner ; Ni, Ray > > > > > > > > ; Attar, AbdulLateef (Abdul Lateef) > > > > > > > > ; Sunil V L > > > > > > > > ; Kinney, Michael D > > > > > > > > > > > > > > > > Cc: lichao ; Kirkendall, Garrett > > > > > > > > ; Grimes, Paul > > > > > > > > ; He, Jiangang > ; > > > > > > > > Andrew Fish > > > > > > > > Subject: RE: [edk2-devel] The principles of EDK2 module > > > > > > > > reconstruction for archs > > > > > > > > > > > > > > > > Caution: This message originated from an External Source. > > > > > > > > Use proper caution when opening attachments, clicking > > > > > > > > links, or > > > > responding. > > > > > > > > > > > > > > > > > > > > > > > > Hi Leif, > > > > > > > > > > > > > > > > Concatenation is a good idea. Makes it more obvious and > > > > > > > > can be easily adopted for new CPU archs. > > > > > > > > > > > > > > > > There is an additional case where an implementation does > > > > > > > > not have differences based on CPU Arch or Vendor, but it > > > > > > > > does have differences based on the bit- width of the CPU. > > > > > > > > Take BaseSafeIntLib as > > > > > > an example. > > > > > > > > It has source files for 32-bit CPUs, 64-bit CPUs, and CPU > > > > > > > > arch specific file for Ebc because Ebc adapts to 32-bit or > > > > > > > > 64-bit depending on the CPU type the EBC Interpreter is run= ning. > > > > > > > > > > > > > > > > MdePkg/Library/BaseSafeIntLib/ > > > > > > > > BaseSafeIntLib.inf > > > > > > > > SafeIntLib.c > > > > > > > > SafeIntLib32.c > > > > > > > > SafeIntLib64.c > > > > > > > > SafeIntLibEbc.c > > > > > > > > > > > > > > > > Should we add "32" and "64" as supported suffices in file n= ames? > > > > > > > > > > > > > > > > If we wanted to put type content into a subdirectory, what > > > > > > > > would be the suggested directory name for "32" and "64". > > > > > > > > Or do we want to require this type of difference to always > > > > > > > > be files in top level directory of > > > > > > the modules/library? > > > > > > > > > > > > > > > > Best regards, > > > > > > > > > > > > > > > > Mike > > > > > > > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > > > > From: devel@edk2.groups.io On > > > > > > > > > Behalf Of Leif Lindholm > > > > > > > > > Sent: Friday, September 30, 2022 9:09 AM > > > > > > > > > To: devel@edk2.groups.io; Kinney, Michael D > > > > > > > > > ; Chang, Abner > > > > > > ; > > > > > > > > > Ni, Ray ; Attar, AbdulLateef (Abdul > > > > > > > > > Lateef) ; Sunil V L > > > > > > > > > > > > > > > > > > Cc: lichao ; Kirkendall, Garrett > > > > > > > > > ; Grimes, Paul > > > > > > ; > > > > > > > > > He, Jiangang ; Andrew Fish > > > > > > > > > > > > > > > Subject: Re: [edk2-devel] The principles of EDK2 module > > > > > > > > > reconstruction for archs > > > > > > > > > > > > > > > > > > I agree similar things will certainly happen for > > > > > > > > > ARM/AARCH64, which will probably be noticeable when I > > > > > > > > > start eradicating ArmPkg and putting the arch-standard > > > > > > > > > bits into > > (mostly) MdePkg. > > > > > > > > > > > > > > > > > > But I like the ability to see already at the filesystem > > > > > > > > > level which files belong to the architecture I'm > > > > > > > > > currently working on and > > > > > > which don't. > > > > > > > > > > > > > > > > > > Could we concatenate architectures? > > > > > > > > > I.e. AARCH64_ARM, IA32_X64, AARCH64_RISCV64... ? > > > > > > > > > > > > > > > > > > / > > > > > > > > > Leif > > > > > > > > > > > > > > > > > > On 2022-09-30 08:28, Michael D Kinney wrote: > > > > > > > > > > Hi Abner, > > > > > > > > > > > > > > > > > > > > One comment is on adding a new CPU type dir name of 'X8= 6' > > > > > > > > > > for content that is common for IA32/X64. > > > > > > > > > > > > > > > > > > > > I can imagine a similar case for ARM/AARCH64 and for > > > > > > > > > > the RISCV (32, 64, 128) cases. > > > > > > > > > > > > > > > > > > > > I think I would prefer to drop X86 and if there are > > > > > > > > > > files that are common to multiple CPU architectures > > > > > > > > > > then they are considered common and are in top > > > > > > > > > > directory of module and the file header and INF file > > > > > > > > > > can clearly document which CPU archs the file > > > > > > applies. > > > > > > > > > > > > > > > > > > > > Mike > > > > > > > > > > > > > > > > > > > >> -----Original Message----- > > > > > > > > > >> From: Chang, Abner > > > > > > > > > >> Sent: Friday, September 30, 2022 12:11 AM > > > > > > > > > >> To: Ni, Ray ; Attar, AbdulLateef > > > > > > > > > >> (Abdul > > > > > > > > > >> Lateef) ; Sunil V L > > > > > > > > > >> ; devel@edk2.groups.io; > > > > > > > > > >> Kinney, Michael D > > > > > > > > > >> Cc: lichao ; Kirkendall, Garrett > > > > > > > > > >> ; Grimes, Paul > > > > > > > > > >> ; He, Jiangang > > > > ; > > > > > > Leif > > > > > > > > > >> Lindholm ; Andrew Fish > > > > > > > > > >> > > > > > > > > > >> Subject: RE: [edk2-devel] The principles of EDK2 > > > > > > > > > >> module reconstruction for archs > > > > > > > > > >> > > > > > > > > > >> [AMD Official Use Only - General] > > > > > > > > > >> > > > > > > > > > >> Thanks Ray, here are my responses. > > > > > > > > > >> https://nam11.safelinks.protection.outlook.com/?url=3D= h > > > > > > > > > >> tt > > > > > > > > > >> ps%3 > > > > > > > > > >> A%2F > > > > > > > > > >> %2Fg > > > > > > > > > >> ithub.com%2Ftianocore-docs%2Fedk2- > > > > > > CCodingStandardsSpecification > > > > > > > > > >> %2Fp > > > > > > > > > >> > > > > > > > > > > > > > > > > > > > > > ull%2F2&data=3D05%7C01%7CAbner.Chang%40amd.com%7C7c3292c8bd2 > > > > > > f4 > > > > > > > > 86f > > > > > > > > > >> > > > > > > > > > > > > > > > > > > > > > 920908daa314e8e6%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C6 > > > > > > > > 3800 > > > > > > > > > >> > > > > > > > > > > > > > > > > > > > > > 1607445876768%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLC > > > > > > JQ > > > > > > > > IjoiV > > > > > > > > > >> > > > > > > > > > > > > > > > > > > > > > 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata > > > > > > =3D > > > > > > > > HAq > > > > > > > > > >> > > > > > > > > > > > ou4JyY1yxDthuQ1dEKcF7Q3o4W77Oo9rOOvkXNWU%3D&reserved=3D0 > > > > > > > > > >> > > > > > > > > > >> @Kinney, Michael D we may also need your > > > > > > > > > >> clarification on the > > > > > > comments. > > > > > > > > > >> > > > > > > > > > >> > > > > > > > > > >>> -----Original Message----- > > > > > > > > > >>> From: Ni, Ray > > > > > > > > > >>> Sent: Thursday, September 29, 2022 3:42 PM > > > > > > > > > >>> To: Attar, AbdulLateef (Abdul Lateef) > > > > > > > > > >>> ; Chang, Abner > > > > > > > > > >>> ; Sunil V L > > > > > > > > > >>> ; devel@edk2.groups.io > > > > > > > > > >>> Cc: Kinney, Michael D ; > > > > > > > > > >>> lichao ; Kirkendall, Garrett > > > > > > > > > >>> ; Grimes, Paul > > > > > > > > > >>> ; He, Jiangang > > > > ; > > > > > > > > > >>> Leif Lindholm ; Andrew > > > > > > > > > >>> Fish > > > > > > > > > >>> Subject: RE: [edk2-devel] The principles of EDK2 > > > > > > > > > >>> module reconstruction for archs > > > > > > > > > >>> > > > > > > > > > >>> Caution: This message originated from an External Sou= rce. > > > > > > > > > >>> Use proper caution when opening attachments, > > > > > > > > > >>> clicking links, or > > > > > > responding. > > > > > > > > > >>> > > > > > > > > > >>> > > > > > > > > > >>> Abner, > > > > > > > > > >>> Comments in > > > > > > > > > >>> https://nam11.safelinks.protection.outlook.com/?url= =3D > > > > > > > > > >>> ht > > > > > > > > > >>> tps% > > > > > > > > > >>> 3A%2 > > > > > > > > > >>> F%2F > > > > > > > > > >>> gith > > > > > > > > > >>> ub.com%2Ftianocore-docs%2Fedk2- > > > > > > > > > >>> CCodingStandardsSpecification%2Fpull%2F2%23pullreque > > > > > > > > > >>> st > > > > > > > > > >>> revi > > > > > > > > > >>> ew- > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 1124763311&data=3D05%7C01%7CAbner.Chang%40amd.com%7Cd825e24 > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 8625541e3f43e08daa1ee2883%7C3dd8961fe4884e608e11a82d994e183d%7C0 > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > %7C0%7C638000341502885565%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000% > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > 7C%7C%7C&sdata=3DRXxgpbEr6ivbqP1R6%2B3Rxl%2ByJAnaUJuaYYKdfCH > > > > > > > > > >>> 8jo8%3D&reserved=3D0 > > > > > > > > > >>> > > > > > > > > > >>> We can discuss more in tomorrow's meeting. > > > > > > > > > >>> > > > > > > > > > >>> > > > > > > > > > >>>> -----Original Message----- > > > > > > > > > >>>> From: Attar, AbdulLateef (Abdul Lateef) > > > > > > > > > >>>> > > > > > > > > > >>>> Sent: Thursday, September 29, 2022 3:11 PM > > > > > > > > > >>>> To: Chang, Abner ; Sunil V L > > > > > > > > > >>>> ; devel@edk2.groups.io; > > > > > > > > > >>>> Ni, Ray > > > > > > > > > >>>> Cc: Kinney, Michael D ; > > > > > > > > > >>>> lichao ; Kirkendall, Garrett > > > > > > > > > >>>> ; Grimes, Paul > > > > > > > > > >>>> ; > > > > > > > > > >>> He, > > > > > > > > > >>>> Jiangang ; Leif Lindholm > > > > > > > > > >>>> ; Andrew Fish > > > > > > > > > >>>> > > > > > > > > > >>>> Subject: RE: [edk2-devel] The principles of EDK2 > > > > > > > > > >>>> module reconstruction for archs > > > > > > > > > >>>> > > > > > > > > > >>>> Hi Abner, > > > > > > > > > >>>> Looks good to me. > > > > > > > > > >>>> Reviewed-by: Abdul Lateef Attar > > > > > > > > > >>>> > > > > > > > > > >>>> Thanks > > > > > > > > > >>>> AbduL > > > > > > > > > >>>> > > > > > > > > > >>>> -----Original Message----- > > > > > > > > > >>>> From: Chang, Abner > > > > > > > > > >>>> Sent: 28 September 2022 20:31 > > > > > > > > > >>>> To: Sunil V L ; > > > > > > > > > >>>> devel@edk2.groups.io; ray.ni@intel.com > > > > > > > > > >>>> Cc: Kinney, Michael D ; > > > > > > > > > >>>> lichao ; Kirkendall, Garrett > > > > > > > > > >>>> ; Grimes, Paul > > > > > > > > > >>>> ; > > > > > > > > > >>> He, > > > > > > > > > >>>> Jiangang ; Attar, AbdulLateef > > > > > > > > > >>>> (Abdul > > > > > > > > > >>>> Lateef) ; Leif Lindholm > > > > > > > > > >>>> ; Andrew Fish > > > > > > > > > >>>> > > > > > > > > > >>>> Subject: RE: [edk2-devel] The principles of EDK2 > > > > > > > > > >>>> module reconstruction for archs > > > > > > > > > >>>> > > > > > > > > > >>>> [AMD Official Use Only - General] > > > > > > > > > >>>> > > > > > > > > > >>>> I just had created PR to update edkII C coding > > > > > > > > > >>>> standard spec for the file and directory naming. We > > > > > > > > > >>>> can review and confirm this update first and then > > > > > > > > > >>>> go back to the principles of EDK2 module > > > > > > > > reconstruction for archs. > > > > > > > > > >>>> Here is the PR: > > > > > > > > > >>>> > > > > > > > > > >>> https://nam11.safelinks.protection.outlook.com/?url= =3D > > > > > > > > > >>> ht > > > > > > > > > >>> tps% > > > > > > > > > >>> 3A%2 > > > > > > > > > >>> F%2F > > > > > > > > > >>> gith > > > > > > > > > >>>> ub.com%2Ftianocore-docs%2Fedk2- > > > > > > > > > >>> &data=3D05%7C01%7CAbner.Chang%40amd.c > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > om%7Cd825e248625541e3f43e08daa1ee2883%7C3dd8961fe4884e608e11a82 > > > > > > > > > >>> d994e18 > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 3d%7C0%7C0%7C638000341502885565%7CUnknown%7CTWFpbGZsb3d8eyJ > > > > > > > > > >>> WIjoiMC4wLj > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > AwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C% > > > > > > > > > >>> 7C%7C&a > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > mp;sdata=3DX4z9puj81nIGTqtMxC9igDZyBPOT6OTWSU%2BjoIowo%2BE%3D&a > > > > > > > > > >>> mp;reserv > > > > > > > > > >>>> ed=3D0 > > > > > > > > > >>>> CCodingStandardsSpecification/pull/2 > > > > > > > > > >>>> > > > > > > > > > >>>> The naming rule is mainly for the new module or new = file > IMO. > > > > > > > > > >>>> Some existing module may not meet the guidelines > > > > > > > > > >>>> mentioned in this > > > > > > > > spec. > > > > > > > > > >>>> Thus we need the principles of EDK2 module > > > > > > > > > >>>> reconstruction on the existing module to support > > > > > > > > > >>>> other processor archs and not impacting the > > > > > > > > > >>> existing platforms (e.g. > > > > > > > > > >>>> rename the INF file or directory to meet the guideli= nes). > > > > > > > > > >>>> > > > > > > > > > >>>> Sunil, seems RISC-V CpuDxe meet the guideline. > > > > > > > > > >>>> Please check > > > > it. > > > > > > > > > >>>> Just feel that having CpuDxe.c to Riscv64 folder > > > > > > > > > >>>> is not quite a best solution. I think at least we > > > > > > > > > >>>> can abstract the protocol structure and protocol > > > > > > > > > >>>> installation under CpuDxe\ and have the arch > > > > > > > > > >>>> implementation under arch folder. We can discuss > > > > > > > > > >>>> this later after we confirming the > > > > > > > > > >>> guideline and principles. > > > > > > > > > >>>> > > > > > > > > > >>>> Thanks > > > > > > > > > >>>> Abner > > > > > > > > > >>>> > > > > > > > > > >>>>> -----Original Message----- > > > > > > > > > >>>>> From: Sunil V L > > > > > > > > > >>>>> Sent: Wednesday, September 28, 2022 3:34 PM > > > > > > > > > >>>>> To: devel@edk2.groups.io; ray.ni@intel.com > > > > > > > > > >>>>> Cc: Chang, Abner ; Kinney, > > > > Michael > > > > > > > > > >>>>> D ; lichao > > > > > > > > > >>>>> ; Kirkendall, Garrett > > > > > > > > > >>>>> ; Grimes, Paul > > > > > > > > > >>>>> ; He, Jiangang > > > > > > > > > >>>>> ; Attar, AbdulLateef (Abdul > > > > > > > > > >>>>> Lateef) ; Leif Lindholm > > > > > > > > > >>>>> ; Andrew Fish > > > > > > > > > >>>>> > > > > > > > > > >>>>> Subject: Re: [edk2-devel] The principles of EDK2 > > > > > > > > > >>>>> module reconstruction for archs > > > > > > > > > >>>>> > > > > > > > > > >>>>> Caution: This message originated from an External > Source. > > > > > > > > > >>>>> Use proper caution when opening attachments, > > > > > > > > > >>>>> clicking links, or > > > > > > responding. > > > > > > > > > >>>>> > > > > > > > > > >>>>> > > > > > > > > > >>>>> On Wed, Sep 28, 2022 at 03:33:45AM +0000, Ni, Ray > wrote: > > > > > > > > > >>>>> Hi Ray, > > > > > > > > > >>>>>> > > > > > > > > > >>>>>> 1. When a new arch's implementation is > > > > > > > > > >>>>>> introduced to the existing > > > > > > > > > >>>>> module which was developed for the specific arch: > > > > > > > > > >>>>>> > > > > > > > > > >>>>>> 1. The folder reconstruction: > > > > > > > > > >>>>>> > > > > > > > > > >>>>>> * Create arch folder for the existing arch > implementation > > > > > > > > > >>>>>> [Ray] Do you move existing arch implementation to > > > > > > > > > >>>>>> that arch > > > > > > folder? > > > > > > > > > >>>>>> It will > > > > > > > > > >>>>> break existing platforms a lot. > > > > > > > > > >>>>>> > > > > > > > > > >>>>>> * Create the arch folder for the new introduc= ed > arch > > > > > > > > > >>>>>> [Ray] I agree. But if we don't create arch folder > > > > > > > > > >>>>>> for existing arch > > > > > > > > > >>>>> implementation, the pkg layout will be a mess. > > > > > > > > > >>>>>> > > > > > > > > > >>>>>> [Ray] Hard for me to understand all the principles= here. > > > > > > > > > >>>>>> Maybe we review > > > > > > > > > >>>>> existing code including to-be-upstreamed code and > > > > > > > > > >>>>> decide how > > > > > > to go. > > > > > > > > > >>>>>> > > > > > > > > > >>>>> > > > > > > > > > >>>>> Could you please take a look below changes which > > > > > > > > > >>>>> is trying to add RISC-V support for CpuDxe? > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> https://nam11.safelinks.protection.outlook.com/?url= =3D > > > > > > > > > >>> ht > > > > > > > > > >>> tps% > > > > > > > > > >>> 3A%2 > > > > > > > > > >>> F%2F > > > > > > > > > >>> gith > > > > > > > > > >>>>> ub.com%2Ftianocore%2Fedk2- > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > staging%2Fcommit%2Fbba1a11be47dd091734e185afbed73ea75708749& > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > data=3D05%7C01%7Cabner.chang%40amd.com%7Ca419e6a010d34fde464b08d > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > aa123e080%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C63799947 > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 2732494527%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIj > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > oiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sd > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > ata=3DVq6pJLnn8yJrJhFZn7LfLbZzrtpG4n1VLWgAil6J38U%3D&reserved=3D0 > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> https://nam11.safelinks.protection.outlook.com/?url= =3D > > > > > > > > > >>> ht > > > > > > > > > >>> tps% > > > > > > > > > >>> 3A%2 > > > > > > > > > >>> F%2F > > > > > > > > > >>> gith > > > > > > > > > >>>>> ub.com%2Ftianocore%2Fedk2- > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > staging%2Fcommit%2F7fccf92a97a6d0618a20f10622220e78b3687906&da > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > ta=3D05%7C01%7Cabner.chang%40amd.com%7Ca419e6a010d34fde464b08daa1 > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 23e080%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C63799947273 > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 2494527%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > > > 2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata > > > > > > > > > >>>>> > > > > > > > > > >>>> > > > > > > > > > >>> > > > > > > > > > > > > > > > > > > > =3DxFmvUv58vh4AUAM17Qy9G5jZWFZlK2Ozt3njpG1e8%2BY%3D&reserv > > > > > > > > > >>>>> ed=3D0 > > > > > > > > > >>>>> > > > > > > > > > >>>>> What do you suggest with above example? > > > > > > > > > >>>>> > > > > > > > > > >>>>> 1) Common INF for all architectures - but modify > > > > > > > > > >>>>> INF alone, no > > > > > > > > > >>>>> X86 folder creation. > > > > > > > > > >>>>> > > > > > > > > > >>>>> This is what I have done in the commit above. May > > > > > > > > > >>>>> be of least impact to existing code since it is onl= y INF > change. > > > > > > > > > >>>>> But like you mentioned this is bit weird that X86 > > > > > > > > > >>>>> files will remain in root folder directly along > > > > > > > > > >>>>> with some common > > > > files. > > > > > > > > > >>>>> > > > > > > > > > >>>>> 2) Common INF (CpuDxe.inf) + create arch folders > > > > > > > > > >>>>> X86, X64, IA32, > > > > > > > > > >>>>> RiscV64 etc > > > > > > > > > >>>>> > > > > > > > > > >>>>> IMO, this is probably the best approach. What > > > > > > > > > >>>>> would be the challenges with this? > > > > > > > > > >>>>> > > > > > > > > > >>>>> 3) Separate INF for arch like CpuDxe.inf for x86, > > > > > > > > > >>>>> CpuDxeRiscV64.inf for > > > > > > > > > >>>> RISC-V. > > > > > > > > > >>>>> > > > > > > > > > >>>>> This again probably is not a good idea. > > > > > > > > > >>>>> > > > > > > > > > >>>>> 4) If the module/library is specific to one arch (e= x: > > > > > > > > > >>>>> SMM(X86), SBI(RISC-V)), then create separate INF. > > > > > > > > > >>>>> > > > > > > > > > >>>>> Thanks! > > > > > > > > > >>>>> Sunil > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >=20 > > > > >