From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web08.4571.1610518528243587553 for ; Tue, 12 Jan 2021 22:15:28 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=kJ5E0dcy; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: heng.luo@intel.com) IronPort-SDR: pCmH0sb54Mhdl9USm1E9Shtzx1LmxDTzUa3dJhs6gJgYmsvkPTJGpm9N6C0NF5y46O8lZQBLBZ CvTS2eoFt0Lw== X-IronPort-AV: E=McAfee;i="6000,8403,9862"; a="175574958" X-IronPort-AV: E=Sophos;i="5.79,343,1602572400"; d="scan'208";a="175574958" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2021 22:15:26 -0800 IronPort-SDR: F50tiTxga9bh6H3W0vKhk4YLNtayr34nYFRemprzM+SE9nY4GY2gD4KHbmcb5YltEd8RL7N+SL 0tUgI6/HRaAQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,343,1602572400"; d="scan'208";a="464786039" Received: from fmsmsx604.amr.corp.intel.com ([10.18.126.84]) by fmsmga001.fm.intel.com with ESMTP; 12 Jan 2021 22:15:26 -0800 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 12 Jan 2021 22:15:26 -0800 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 12 Jan 2021 22:15:26 -0800 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Tue, 12 Jan 2021 22:15:26 -0800 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.36.50) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Tue, 12 Jan 2021 22:15:25 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gimFdZl9aBZMA4lxnAZsmfD9CGYVecgTf/hBIIW3mYHS5jhtBlA6BPiaR23t8LSk9xPXOarQAVZ0e+U8WN6teGAQSrigjXPdnnZBwmREBQMhJLlhs27hlpW676pu48vBElfqwagDyvBAu1Ls8FNDRudfL1A1tpWSS6wt6fplckxfYCM2vOsJwbQDMpH2Hnj/REreYe/zC2Sm8A4wOqLMuvWkO7ghd0pZSgA+OINuw+2WfwCym9XT6Gz849apz5CGQC9V+6nK6HRw9o9+Z8QtKtyMuZOqllaYdt3BNaJXZ2DUr+XO2eSGG5MsLh89MjH0elsQ+yZQ20FrIpAxGeAeMw== 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-SenderADCheck; bh=yfATux5DeDekwoA7Hr9sLlNA128XiuHMyxTw2D+pBbU=; b=g+ORoK3qdmVBFXyHUJumvYxVwhyMxYdoYc8PfOp+sVvWwsWiXAfilE8gxEkP3/JbpQszxfJ4MAVjpzgGqwf6o9RkzSLCletY8dosTJqDYZ7A6NM5CjNsvPOOTi/JDtUhICPpm06kujCpBNtQ/Jo+iT6Ot8UBhgkL4afF9YQpk8KO6Xad89zPpxq1LzHVeCB0U1a7KDZ0+u0rHZWmM9aI26Je7kwTCnR1GE+vtrg64PQwqtzBxksBVMiI0kT03c90MAObEYQ6bYmOIafP43GdEDn1rfxz9NdsvykAVv8wtrdaKTFD/pcUOg242dShwumujK80SIC11/3H89XzJvEmHg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yfATux5DeDekwoA7Hr9sLlNA128XiuHMyxTw2D+pBbU=; b=kJ5E0dcy+EQRYI5zX17VeZRB90u7oZuQ6SToL2WoSTGIKMZpuLyjUQoeceOfkeSjamROTOdYKQwmAcSW6JiwPWRAG+b5YBwWCPWrYDcL9Bl/JGrwmUEOW7E+A4gN3cmE8r5CHwwPbf25sokcXLC15TJzzGYeMuOTDZ1DOKfxAhg= Received: from MWHPR11MB1805.namprd11.prod.outlook.com (2603:10b6:300:114::14) by MWHPR11MB1453.namprd11.prod.outlook.com (2603:10b6:301:c::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Wed, 13 Jan 2021 06:15:24 +0000 Received: from MWHPR11MB1805.namprd11.prod.outlook.com ([fe80::9dfe:4053:9b88:6786]) by MWHPR11MB1805.namprd11.prod.outlook.com ([fe80::9dfe:4053:9b88:6786%4]) with mapi id 15.20.3742.012; Wed, 13 Jan 2021 06:15:23 +0000 From: "Heng Luo" To: "Ni, Ray" , "Wu, Hao A" , "Laszlo Ersek" , "devel@edk2.groups.io" CC: "Kinney, Michael D" Subject: Re: [edk2-devel] [Patch V3 2/2] MdeModulePkg/Bus/Pci/PciBusDxe: Support PCIe Resizable BAR Capability Thread-Topic: [edk2-devel] [Patch V3 2/2] MdeModulePkg/Bus/Pci/PciBusDxe: Support PCIe Resizable BAR Capability Thread-Index: AQHW6FFFlEH83ht3wk2zgGGJisNY3KojRIMAgAHNeYCAAAH2AIAAAB0g Date: Wed, 13 Jan 2021 06:15:23 +0000 Message-ID: References: <20210104065954.3901-1-heng.luo@intel.com> <20210104065954.3901-2-heng.luo@intel.com> <9a081622-94c8-d921-1631-b595f189c807@redhat.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.37] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 52c5a325-5a6c-4ea0-5ffb-08d8b78a9cee x-ms-traffictypediagnostic: MWHPR11MB1453: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 8G6cJimplzAgT2kByfNacLrcaAnCRDA+QqYdRiv3VvTf+f45wmFTabPz+bu47ng5tvVe2ZvMt5YdnaZdQuj1MWNkyUzrcE5kiZCN4RuHv2gi3O8Wn8uNldtR17n5nCssPJLkjzIGFy+VDEJPqSjhEXZTA6JFU21vSHR6aM8N5Fd4Ua0pVWckURFNFmJD85JrKabANUbaElpO3BoteBNX0pwJxsOznvpIP7wXUO88GBhZkkXoiF+6YE9wnWes3jQcIR2sFQ76M9FQ7GicUGkZDa7opmH4a26uJbnLm76wJ3mNubDsasuiA4PzH5qzrvOWlZas/06iEJiJE0Vsw+D0cO5p0zhL1iehuVjgdgRpi0jn5bsigc1O1AxJpQGsgUg8hwouIe0+PvjPsNMXYTAgJBHxxMTk5DmG7rl9mhlrRhIrHOlF5CKD5BPrVBLuhOqi8b78l5YhDNv11cvgI/1Scg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1805.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(39860400002)(396003)(136003)(366004)(346002)(9686003)(6506007)(8936002)(52536014)(107886003)(76116006)(64756008)(55016002)(53546011)(2906002)(33656002)(7696005)(316002)(186003)(86362001)(478600001)(66946007)(71200400001)(4326008)(26005)(66476007)(966005)(66446008)(66556008)(83380400001)(110136005)(5660300002)(8676002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?anhLbjJObUN6TFZwVy8yZm1nN2pTeHNlSVBBMkowQkRHR25CVTI4aU8yTFYx?= =?utf-8?B?Ny9xMHBYUVBEdnppSzVSYUQyYlM2ajgySzcxL3NqeUpJenlDSC9NenNGQVEv?= =?utf-8?B?dXE5dVBMZDVlNDhuWkpYbXVpbUY4a2xxeSsrNVA3Mmo3bDlGVi8wcldaN3Jr?= =?utf-8?B?bFZ4WDRZWjJ0aWEvY1Z6eWczR09sa3MwZElTcXVMKzlpa2V4TjJpeU5qc3JB?= =?utf-8?B?OVp5R1dSRHVSQnErRTBwSTVXcHFqOHJ4eU55eTFSS3RlUklDVVZHSnpzZ1N0?= =?utf-8?B?UmVQR21lZDl0dUVJTVY5Q2FJZUdtVDNOdHhtMit4cnZOVGozM2YvR0VJcGRt?= =?utf-8?B?TE5tZDBsbEc5MjdrbzlnVk4xUTVFV1ZhVmlkNzRmQUNwSnZDaTVKRzlLdHlh?= =?utf-8?B?d0xhc0NGREJzQnpTUEFRVlc2ZE4rdmRNc0JvNXpYdmZlL2cyMGRHeEhiUHBU?= =?utf-8?B?QkFFRHV4c3RUbTJUalMwUURFaHJqQ2tIdXpZNGRLTzJ0aDZOVGJhKzF4dkNN?= =?utf-8?B?bkFZV3BxTG1QRmNCZ08wRVFzYlNFZDdzV2pxakxEcWZkYnpUeWtMLytPK2ZZ?= =?utf-8?B?TXFVT1BoK0ZvRmxJOXhzZjFXKzNNRXFBU1FhRWtpSlZYWXdJNjhCMHpZa0s0?= =?utf-8?B?dEFtMm1GbkcwdjZXWmJzWC9FOW5NWjRPdHh4NUxnTVYyUDJhaUZpYVhsRGlH?= =?utf-8?B?cXlYR09YUTQ5S3BKQTZTa2N6V1V0eW5TSmQzMWV3WTNyd3VmM1piYmd1VWNT?= =?utf-8?B?bUNjNDRCcTlTTERKbUFFM0pxeDd2TmxSVDEwd3RlNkZPYmliVjJwYTQ0Yk1O?= =?utf-8?B?Vk9oT3VBYnNTYjdkVGlSQmtmN0JnY1l6RzZRZFpiemM2b1BQV29JTnBzWWdL?= =?utf-8?B?aDg4Ry9ISW1Lc1c3RWFmZ0V4bFZQZnhXWGFYaXhia0ZTZyt6ODlBcmN5NlBL?= =?utf-8?B?b0N3QmIyVHpVWnVWeFNybG9Xei9tUVVCdE04QUxTaDZsL0ExaXlsV2pkSFBw?= =?utf-8?B?TXEyRzllR0gweEIraFBhbEg3T00zWFp3NGh3K1pNUk8yeWtoTGJucFc4MEU3?= =?utf-8?B?OVNlcUZDVXNmUExkWlNnUVhBVlh6T0tYdVlFT2VkazlHdUdabmllRXVEUHZy?= =?utf-8?B?b2I4NjVOcE1RZ014bWkzWlFsQkxSU2xKZ2dIK0xyeWYwd3V5VldUM1FnZjBa?= =?utf-8?B?OEZaWCsxcU52SGtMZlFYMnZpbnlxYkFBNWtPTXI3WDdlYjMxRzJ4bmpBcG9S?= =?utf-8?B?dWs2NGVoWjMwVmYyTGc1MElOSkVYM2U1QzFVSWtLUDVCS0JrN0RBbFNkbHp2?= =?utf-8?Q?d8YeKlxA4b+R8=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1805.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 52c5a325-5a6c-4ea0-5ffb-08d8b78a9cee X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jan 2021 06:15:23.7733 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: UOUEarJD6lIFImOSZHmd4GRiRrr+KtpQbY67kMr+bHCZoocl0BEW9c7F4FZU5CGsy3Smq/LnRZBFDgG2fQTUdg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1453 Return-Path: heng.luo@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgSGFvLA0KUGxlYXNlIGhvbGQgb24gbWVyZ2luZyBwYXRjaCBub3csIHdlIGFyZSBzdGlsbCB3 YWl0aW5nIGZvciBzb21lIGlucHV0cywgSSB3aWxsIGxldCB5b3Uga25vdyB3aGVuIHdlIHJlYWNo IGFncmVlbWVudC4NCg0KVGhhbmtzLA0KSGVuZw0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+IEZyb206IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20+DQo+IFNlbnQ6IFdlZG5lc2Rh eSwgSmFudWFyeSAxMywgMjAyMSAyOjA3IFBNDQo+IFRvOiBXdSwgSGFvIEEgPGhhby5hLnd1QGlu dGVsLmNvbT47IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+Ow0KPiBkZXZlbEBlZGsy Lmdyb3Vwcy5pbzsgTHVvLCBIZW5nIDxoZW5nLmx1b0BpbnRlbC5jb20+DQo+IENjOiBLaW5uZXks IE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBb ZWRrMi1kZXZlbF0gW1BhdGNoIFYzIDIvMl0gTWRlTW9kdWxlUGtnL0J1cy9QY2kvUGNpQnVzRHhl Og0KPiBTdXBwb3J0IFBDSWUgUmVzaXphYmxlIEJBUiBDYXBhYmlsaXR5DQo+IA0KPiBJJ3ZlIGdp dmVuIFItYiB0byB0aGUgdHdvIHBhdGNoZXMuIE5vIGNvbW1lbnRzIGZyb20gbXkgc2lkZS4NCj4g DQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBXdSwgSGFvIEEgPGhh by5hLnd1QGludGVsLmNvbT4NCj4gPiBTZW50OiBXZWRuZXNkYXksIEphbnVhcnkgMTMsIDIwMjEg MjowMCBQTQ0KPiA+IFRvOiBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjsgTGFzemxvIEVyc2Vr IDxsZXJzZWtAcmVkaGF0LmNvbT47DQo+ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW87IEx1bywgSGVu ZyA8aGVuZy5sdW9AaW50ZWwuY29tPg0KPiA+IENjOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFl bC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4gU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUGF0 Y2ggVjMgMi8yXSBNZGVNb2R1bGVQa2cvQnVzL1BjaS9QY2lCdXNEeGU6DQo+ID4gU3VwcG9ydCBQ Q0llIFJlc2l6YWJsZSBCQVIgQ2FwYWJpbGl0eQ0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTogTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT4NCj4gPiA+ IFNlbnQ6IFR1ZXNkYXksIEphbnVhcnkgMTIsIDIwMjEgMTA6MjggQU0NCj4gPiA+IFRvOiBMYXN6 bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW87IEx1bywN Cj4gPiA+IEhlbmcgPGhlbmcubHVvQGludGVsLmNvbT4NCj4gPiA+IENjOiBXdSwgSGFvIEEgPGhh by5hLnd1QGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEDQo+ID4gPiA8bWljaGFlbC5kLmtp bm5leUBpbnRlbC5jb20+DQo+ID4gPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdIFtQYXRjaCBW MyAyLzJdDQo+IE1kZU1vZHVsZVBrZy9CdXMvUGNpL1BjaUJ1c0R4ZToNCj4gPiA+IFN1cHBvcnQg UENJZSBSZXNpemFibGUgQkFSIENhcGFiaWxpdHkNCj4gPiA+DQo+ID4gPiA+ID4gSXQgc2VlbXMg bGlrZSB0aGUgbWF4IEJBUiBzaXplIGlzIHNlbGVjdGVkIGZpcnN0LCBidXQgaWYgdGhlcmUncw0K PiA+ID4gPiA+IGEgInJlc291cmNlIGNvbmZsaWN0IiAocnVubmluZyBvdXQgb2YgYSBwYXJ0aWN1 bGFyIHJlc291cmNlIHR5cGUNCj4gPiA+ID4gPiBhcGVydHVyZSksIHRoZW4gdGhlIG1pbmltdW0g QkFSIHNpemUgaXMgc2VsZWN0ZWQuIEkgZG9uJ3Qga25vdw0KPiA+ID4gPiA+IHdoYXQgc2V0IG9m IGRldmljZXMgYW5kL29yIHJlc2l6YWJsZSBCQVJzIHRoaXMgbG9naWMgYXBwbGllcyB0bywNCj4g PiA+ID4gPiBpZiB0aGVyZSBhcmUgbXVsdGlwbGUgb2YgdGhlbS4NCj4gPiA+DQo+ID4gPiA+ID4g UGVyIHRoZSBQQ0llIHNwZWNpZmljYXRpb24gKHJldmlzaW9uIDUuMCwgdmVyc2lvbiAwLjkpIDcu OC42Og0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gICBTb2Z0d2FyZSBkZXRlcm1pbmVzLCB0aHJvdWdo IGEgcHJvcHJpZXRhcnkgbWVjaGFuaXNtLCB3aGF0IHRoZQ0KPiA+ID4gPiA+ICAgb3B0aW1hbCBz aXplIGlzIGZvciB0aGUgcmVzb3VyY2UsIGFuZCBwcm9ncmFtcyB0aGF0IHNpemUgdmlhIHRoZSBC QVINCj4gPiA+ID4gPiAgIFNpemUgZmllbGQgb2YgdGhlIFJlc2l6YWJsZSBCQVIgQ29udHJvbCBy ZWdpc3Rlci4NCj4gPiA+ID4gPg0KPiA+ID4gPiA+IEZ1cnRoZXJtb3JlLCBUYWJsZSA3LTExNCBk ZWZpbmVzIHRoZSBCYXIgU2l6ZSBmaWVsZCBvZiB0aGUNCj4gPiA+ID4gPiBjb250cm9sIHJlZ2lz dGVyIHN0YXRpbmc6DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiAgIFRoZSBkZWZhdWx0IHZhbHVlIG9m IHRoaXMgZmllbGQgaXMgZXF1YWwgdG8gdGhlIGRlZmF1bHQgc2l6ZSBvZiB0aGUNCj4gPiA+ID4g PiAgIGFkZHJlc3Mgc3BhY2UgdGhhdCB0aGUgQkFSIHJlc291cmNlIGlzIHJlcXVlc3Rpbmcgdmlh IHRoZSBCQVIncw0KPiA+ID4gPiA+ICAgcmVhZC1vbmx5IGJpdHMuDQo+ID4gPiA+ID4NCj4gPiA+ ID4gPiBUaGVyZWZvcmUgdGhlIG1heGltdW0gc2l6ZSBpcyBub3QgbmVjZXNzYXJpbHkgb3B0aW1h bCwgbm9yDQo+ID4gPiA+ID4gc2hvdWxkIHRoZSBtaW5pbXVtIHNpemUgYmUgY29uc2lkZXJlZCB0 aGUgZGVmYXVsdC4gIEluIGZhY3QsDQo+ID4gPiA+ID4gW3dlXSB0ZXN0ZWQgdmFyaW91cyBoYW5k b2ZmIEJBUiBzaXplcyBmb3IgW2EgcGFydGljdWxhcl0gR1BVIGFuZA0KPiA+ID4gPiA+IGZvdW5k IHRoYXQgV2luZG93cyBkaWRuJ3QgbGlrZSB0aGUgbWF4aW11bSBCQVIgc2l6ZS4NCj4gPiA+ID4g Pg0KPiA+ID4gPiA+IEVsc2V3aGVyZSBpbiB0aGUgZGlzY3Vzc2lvbiBbMV0gdGhlIEFNRCBhdXRo b3Igb2YgdGhlIGtlcm5lbA0KPiA+ID4gPiA+IHN1cHBvcnQgZm9yIHJlc2l6ZWFibGUgQkFScyBp bmRpY2F0ZXMgdGhhdCBGUEdBIGRldmljZXMgbWlnaHQNCj4gPiA+ID4gPiBpbXBsZW1lbnQgdGhl IFJFQkFSIGNhcGFiaWxpdHkgYXMgcGFydCBvZiB0aGVpciBzdGFuZGFyZCBQQ0kNCj4gPiA+ID4g PiB3cmFwcGVyIChbb3VyXSBpbnRlcnByZXRhdGlvbiksIGJ1dCB0aGUgQkFSIHVzYWdlIHdvdWxk IGJlDQo+ID4gPiA+ID4gZGV0ZXJtaW5lZCBieSB0aGUgYWN0dWFsIGJpdHN0cmVhbSB3cml0dGVu IHRvIHRoZSBkZXZpY2UsDQo+ID4gPiA+ID4gdGhlcmVmb3JlIHRoZXJlIG1pZ2h0IGJlIGEgZnVs bCBiaXRtYXNrIGZvciB0aGUgQkFSIHNpemVzIHN1cHBvcnRlZA0KPiBieSB0aGUgZGV2aWNlLg0K PiA+ID4gPiA+DQo+ID4gPiA+ID4gWzFdDQo+ID4gPiA+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvYXJjaGl2ZXMvZHJpLWRldmVsLzIwMjEtSmFudWFyeS90aA0KPiA+ID4gPiA+IHJl YWQNCj4gPiA+ID4gPiAuaHRtbA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gSXQgd291bGQgY2VydGFp bmx5IG1ha2Ugc2Vuc2UgZm9yIHRoZSBmaXJtd2FyZSB0byB0YWtlIFJFQkFSDQo+ID4gPiA+ID4g Y2FwYWJpbGl0aWVzIGludG8gYWNjb3VudCB3aGVuIHNpemluZyBicmlkZ2UgYXBlcnR1cmVzLCBi dXQgdG8NCj4gPiA+ID4gPiBnZW5lcmljYWxseSBlbmFibGUgZXh0ZW5kZWQgQkFSIHNpemVzIHdv dWxkIG1ha2UgbG90cyBvZg0KPiA+ID4gPiA+IGFzc3VtcHRpb25zIGFib3V0IHRoZSBkZXZpY2Ug dXNhZ2UgYW5kIGNvbXBhdGliaWxpdHkuDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBbLi4uXSBBdCBs ZWFzdCBmb3IgR1BVcyB0aGUgZXhwZWN0YXRpb24gd291bGQgYmUgYSBkZWZhdWx0LA0KPiA+ID4g PiA+IHNtYWxsZXIgY29tcGF0aWJpbGl0eSBzaXplIGV4cGFuZGluZyB0byBzb21lIHJlcHJlc2Vu dGF0aW9uIHRoYXQNCj4gPiA+ID4gPiBhbGxvd3MgZGlyZWN0IERNQSB0byB0aGUgZW50aXJlIG1l bW9yeSBvZiB0aGUgY2FyZC4NCj4gPiA+ID4NCj4gPiA+ID4gU28gdGhpcyBwYXRjaCBzaG91bGQg ZWl0aGVyIGJlIHJldmVydGVkOyBvciBtaW5pbWFsbHksIHRoZSBkZWZhdWx0DQo+ID4gPiA+IHZh bHVlIG9mICJQY2RQY2llUmVzaXphYmxlQmFyU3VwcG9ydCIgc2hvdWxkIGJlIHNldCB0byBGQUxT RSwgYXMNCj4gPiA+ID4gdGhlIHBvbGljeSBmb3IgQkFSIHNpemluZyBkb2Vzbid0IGxvb2sgcm9i dXN0IG9yIHBvcnRhYmxlLg0KPiA+ID4gPg0KPiA+ID4gPg0KPiA+ID4gPiBHZW5lcmFsIHJlcXVl c3QgZm9yIHRoZSBmdXR1cmU6IGlmIHlvdSBpbXBsZW1lbnQgc29tZSBraW5kIG9mDQo+ID4gPiA+ IHBvbGljeSBpbiBjb3JlIGVkazIsIHBsZWFzZSBhdCBsZWFzdCAqZG9jdW1lbnQqIHRoZSBwb2xp Y3kNCj4gPiA+ID4gc29tZXdoZXJlLiBJdCdzIHVuYWNjZXB0YWJsZSB0byBoYXZlIHRvIGRlY2lw aGVyIHRoZSBzb3VyY2UgY29kZQ0KPiA+ID4gPiBmb3Igc3VjaCBhIHBvc3NpYmx5IGltcGFjdGZ1 bCBjaGFuZ2UgaW4gdGhlIGNvcmUuIFRoZXJlIGlzIG5vIG5lZWQNCj4gPiA+ID4gZm9yIGEgd2lr aSBwYWdlIG9yIGFuIFJGQywgYnV0IGEgc2FuZSBidWd6aWxsYSB0aWNrZXQgYW5kIGEgc2FuZSBj b21taXQNCj4gbWVzc2FnZSBhcmUgcmVxdWlyZWQuDQo+ID4gPiA+DQo+ID4gPiA+IChUaGUgZG9j dW1lbnRhdGlvbiBvZiB0aGUgUENEIGluIHRoZSAiTWRlTW9kdWxlUGtnLmRlYyIgZmlsZSBpcw0K PiA+ID4gPiB1bnNhdGlzZmFjdG9yeSB0b28sIGFuZCB0aGUgVU5JIGZpbGUgaGFzIG5vdCBiZWVu IHVwZGF0ZWQgYXQgYWxsLikNCj4gPiA+ID4NCj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+IFlv dXIgdW5kZXJzdGFuZGluZyBpcyBjb3JyZWN0LiBPcmlnaW5hbCBpZGVhIGlzIHRvIGxldCBwbGF0 Zm9ybQ0KPiA+ID4gc3VwcGx5IHRoZQ0KPiA+IHBvbGljeQ0KPiA+ID4gYWJvdXQgd2hhdCB0aGUg b3B0aW1hbCBCQVIgc2l6ZSBpcyBmb3IgZWFjaCByZXNpemFibGUgQkFSLg0KPiA+ID4gVGhlIGN1 cnJlbnQgaW1wbGVtZW50YXRpb24gaXMgYSB0cnkgdG8gYXZvaWQgYXNraW5nIHBsYXRmb3JtIGNv ZGUNCj4gPiA+IGZvciBzdWNoIHBvbGljeSBiZWNhdXNlIHdlIHRob3VnaHQgaXQncyBhIGJ1cmRl biBmb3IgcGxhdGZvcm0gdG8gc3VwcGx5DQo+IHRoZSBwb2xpY3kgZGF0YS4NCj4gPiA+DQo+ID4g PiBJIGFncmVlIHRoYXQgd2Ugc2V0IHRoZSBQQ0QgZGVmYXVsdCB2YWx1ZSBhcyBkaXNhYmxlZCBh bmQgYWZ0ZXIgYQ0KPiA+ID4gcGVyaW9kIG9mIHN0dWR5LCB3ZSB3aWxsIHVuZGVyc3RhbmQgd2hl dGhlciBhIHBsYXRmb3JtIHBvbGljeSBpcyByZWFsbHkNCj4gbmVlZGVkLg0KPiA+DQo+ID4NCj4g PiBIZWxsbyBMYXN6bG8gYW5kIFJheSwNCj4gPg0KPiA+IEkgc2F3IEhlbmcncyBwYXRjaCBzZXJp ZXMgdG8NCj4gPiAgIDEpIFNldCB0aGUgUENEIGRlZmF1bHQgdmFsdWUgdG8gRkFMU0U6DQo+ID4g aHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3NhZ2UvNzAxMzkNCj4gPiAgIDIpIFVw ZGF0ZSB0aGUgVU5JIGZpbGU6IGh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdl LzcwMTQwDQo+ID4gaGFzIGdvdCBSZXZpZXdlZC1ieS9BY2tlZC1ieSB0YWdzIGZyb20gcmV2aWV3 ZXJzLg0KPiA+DQo+ID4gRG8geW91IGhhdmUgZnVydGhlciBjb21tZW50cyBmb3IgdGhlIHNlcmll cz8NCj4gPiBJZiBub3QsIEkgd2lsbCBtZXJnZSB0aGlzIGNoYW5nZSBpbiB0aGUgbmV4dCAyNCBo b3Vycy4NCj4gPg0KPiA+IFRoYW5rcyBpbiBhZHZhbmNlLg0KPiA+DQo+ID4gQmVzdCBSZWdhcmRz LA0KPiA+IEhhbyBXdQ0KPiA+DQo+ID4NCj4gPiA+DQo+ID4gPiBUaGFua3MsDQo+ID4gPiBSYXkN Cg==