From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web09.2117.1603414421850441394 for ; Thu, 22 Oct 2020 17:53:42 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=URPA4nh1; spf=pass (domain: intel.com, ip: 192.55.52.151, mailfrom: heng.luo@intel.com) IronPort-SDR: ASejgc0sAQROBG1d+1tnKtU4RsYi1OIHKL/xa+6LYiwKgqfX5mJBqP8a8LP39cNgbzgSxg7JBz ZZ/zksoi1jZQ== X-IronPort-AV: E=McAfee;i="6000,8403,9782"; a="147472164" X-IronPort-AV: E=Sophos;i="5.77,404,1596524400"; d="scan'208";a="147472164" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Oct 2020 17:53:40 -0700 IronPort-SDR: TGVXYnupI9CuFSyWOQagTJOBKUrpS4IFZ+xr2i10VU04qOFhm8NxI2kzdN32lsdSE46aAMhgE7 dmak481ohRYQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,404,1596524400"; d="scan'208";a="360043697" Received: from fmsmsx606.amr.corp.intel.com ([10.18.126.86]) by orsmga007.jf.intel.com with ESMTP; 22 Oct 2020 17:53:40 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 22 Oct 2020 17:53:39 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Thu, 22 Oct 2020 17:53:39 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.170) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Thu, 22 Oct 2020 17:53:36 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZG7zE2DH331UIkdEdm+b93+NNFA+uBTIAt5JRL59T29QK1qeCxBAAi2d2PnJRf6og6ntQ5INbRkyK7TC+LsWFfZOE4Xj9WGTDl+EI4MoXIDf/HBVQ3T+4IHHgztogvnHQ6E4/2kR8fpgm35IH6dW87chscQGOhlsUb5P1foE5Oa6BiRHyL1ECE9IIGX/5XIgwzhe1em+Y0fnzdt6qH8GCf0drz7a0BfYHHKMI27PDPQcCLlqPcEeSJLzl+tPfNxUkVctOdsmSZdEY1jFk+xc2uXtYzbLKekARO3duRdNO5NCVa5jdu6ostYJ0tLz0Hgp6sX7ERYakS8FKYZ/ligJ1A== 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=KGj4xTiX0ZBmYS2R3z0Dal4K5yx+fZEPxe33O4oVGLo=; b=cvKAK5hmLdSdn8a0H9P0LWpj3jPH6Nf4d+ROQxvf7c9xEKEFC9ZvIdXZ+GYVfZ0p2KioR3X+Dhtp4UHgPe2iXCpOkkoU+gpSy2aigeCTGesPTs2Kw2NS+lc4HySZtHVuyxnTec2fI9JDehXjn8Et6kfq+cvSXE6LAvCX+1muXCKCzUnql9LQ//JGTmvr08AgDninZw6x1O5s0BzFBghAWIAmcY6mLZ3dHazLX6SNKjZC3J1rP2UDiMAuxhggHSwUpbnmqGo961opl9Jwe32fNw4S8xI1zh11Oe1VC8Vf2VsKnAbCxuOSuzJWguaYQpDkgIEByjoN2ktPWm31ecgPWg== 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=KGj4xTiX0ZBmYS2R3z0Dal4K5yx+fZEPxe33O4oVGLo=; b=URPA4nh1mebakizfOVAt3faeiZo5r28/rgeHi1gfSiio4omXZaCkCcQCy8MPwJfJsR3Z3V0vwlg6mTScUQWjurPElb8E3lARKvygPdwzGeQCEJO9Qv6tptfCJUB18ylGQ+Lko1Hewbfa6LeCjuNKT2vdoiSG5vJo5WlqET1JUPQ= Received: from MWHPR11MB1805.namprd11.prod.outlook.com (2603:10b6:300:114::14) by MWHPR1101MB2255.namprd11.prod.outlook.com (2603:10b6:301:5b::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3499.18; Fri, 23 Oct 2020 00:53:35 +0000 Received: from MWHPR11MB1805.namprd11.prod.outlook.com ([fe80::bd78:5a79:d875:65e4]) by MWHPR11MB1805.namprd11.prod.outlook.com ([fe80::bd78:5a79:d875:65e4%12]) with mapi id 15.20.3477.028; Fri, 23 Oct 2020 00:53:35 +0000 From: "Heng Luo" To: Jon Hunter , "Wu, Hao A" , "devel@edk2.groups.io" , "jbrasen@nvidia.com" CC: "Ni, Ray" Subject: Re: [edk2-devel] [PATCH] MdeModulePkg/XhciDxe: Retry device slot init on failure Thread-Topic: [edk2-devel] [PATCH] MdeModulePkg/XhciDxe: Retry device slot init on failure Thread-Index: AQHWp8EpkR/mfPS+y0246NywgHCuvqmizDqAgAAh+1CAAGGDgIAAVzcAgAC3AvA= Date: Fri, 23 Oct 2020 00:53:34 +0000 Message-ID: References: <040616b6-c7e9-d28d-69ac-bccb406d4730@nvidia.com> <206d9891-152b-3954-1b61-bf144cab4ed5@nvidia.com> In-Reply-To: <206d9891-152b-3954-1b61-bf144cab4ed5@nvidia.com> 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: nvidia.com; dkim=none (message not signed) header.d=none;nvidia.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.198] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8394a329-f662-411c-cb43-08d876ee120e x-ms-traffictypediagnostic: MWHPR1101MB2255: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: NT0FRMhnSGZp/6Gyxegj439WvAZ6h3F6vS7QEKYaJgaRi0MlnfrPMyz5k9DYyf4iUCn8KXj7WoCO540zKxR3LvVVQcKbe4LBmKqLA2c3XdsdhXLvuKlw9HRDgr1svMRr5eBHmsORX9gYZMCK3UzyzJwXybPMf8u12TgfnqUUNdrpUdfA7bSTQa8IPuTB4Rjq/j/t12Qkj4JAD15SMEukrP0ciBfmGAWFOPpKRn2ph4rPdZ7G260XdHHyfQBlagoubLt2yihQhmjUWDfOggyqce61uQI1eHOt9roPaWzInUaoj7OlBko/p3PdHE1KZJyjdePhjVGk9trB6c5TXK0Da71e3ZCJy3GTU0Pxbrw7Uygn8oYxkaUj0bCi2XrsORLGx6apgbPmeBxoKih67YMvrw== 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)(136003)(366004)(376002)(346002)(39860400002)(396003)(186003)(5660300002)(26005)(86362001)(53546011)(9686003)(110136005)(4326008)(71200400001)(478600001)(2906002)(316002)(55016002)(19627235002)(8936002)(6506007)(33656002)(107886003)(7696005)(66446008)(64756008)(66556008)(966005)(66476007)(8676002)(52536014)(66946007)(83380400001)(76116006);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: CkLRNXDwljCAqPXfFoEMSRLdtEkIEjzgtcAdmP8jI1cw29y1r+YhWWPneMo45N/khwXMek+l8jnFgNCp6mNy19erIpV/o+6RepIDm5+AUamnC1WRYtc0OMkfZylvtOTkRGsOuaN4bNO/fVBCkZbJTR4IRuL/I/Tl3TMNQy/JWvbDe3wSwKrrggiatcBSW30GClOU0a8eZmszKTfG3ItL4Srjf7pz5IRDFNOzroOBQwXcjdzpHNcajWCZ+hvarUQnHGeiRK0lNGpdDcn8NA0d+UraLoo5nZzS6lkULRu0RQAHBx3NVoKZeF7NfkRZ8/LtfjMS4D9ZDDuHijJxgOY2jJ1DHP9laMQ/6xzAswW9KV8PM/ftICrlWNvrS+WSfFIqlNvOOkOH8CdBY3UpGqadkwvko+oxjLPtwxE1UNTEKGYVYf0UF3higJ0kAQxPH8kZmYJ2ilW/yNVPG8Q+9ZehEU3PsFQE2Ru4fbu+Sa4dd8BnZVmf773PHCF1Wl3G2ntaZ9psKwmdy/TwgtFkBFRxrjhmrOKplTb37IYg8Zj9N7PDaYLJst+ak1Bd+ctLwzoC2v7oB5lLPJrhjiGpUiXxhU8TFLO/BwfRMg9Pq6e9GiQft+ju/9YaTOFXbOqsXbgyjPpM/DWfqloWnUk9NLK41Q== 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: 8394a329-f662-411c-cb43-08d876ee120e X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2020 00:53:34.7989 (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: iwxp08rPbNpKlIg6VXIqdB74k0dBDI8H1SZ1KeZLkPPj7iA9wEZYAf2/R0RCK3hTD7izVRipiSbM2fuC0MUFfA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1101MB2255 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 SGkgSm9uLA0KVGhhbmsgIHlvdSBmb3IgeW91IHRlc3RpbmcuDQpJbiBteSBwYXRjaCwgaXQgZG9l cyBub3QgdHJ5IGFnYWluIGlmIHNsb3QgaW5pdCBmYWlsdXJlLCB0aGUgZmFpbGVkIGRldmljZSB3 aWxsIGJlIGlnbm9yZWQuDQpDdXJyZW50bHkgdGhlIGZpcnN0IGZhaWx1cmUgd2lsbCBhZmZlY3Qg bmV4dCBkZXZpY2VzLCBuZXh0IGRldmljZXMgd2lsbCBub3QgYmUgaW5pdGlhbGl6ZWQgc3VjY2Vz c2Z1bGx5LA0KbXkgcGF0Y2ggaXMgdG8gZml4IHRoaXMgYnVnLg0KSSB0aGluayB0aGlzIHR3byBw YXRjaGVzIGFyZSB0byByZXNvbHZlIGRpZmZlcmVudCBwcm9ibGVtcywgYm90aCBjaGFuZ2VzIGFy ZSBuZWVkZWQuDQoNClRoYW5rLA0KSGVuZw0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+IEZyb206IEpvbiBIdW50ZXIgPGpvbmF0aGFuaEBudmlkaWEuY29tPg0KPiBTZW50OiBUaHVy c2RheSwgT2N0b2JlciAyMiwgMjAyMCA5OjU3IFBNDQo+IFRvOiBMdW8sIEhlbmcgPGhlbmcubHVv QGludGVsLmNvbT47IFd1LCBIYW8gQSA8aGFvLmEud3VAaW50ZWwuY29tPjsNCj4gZGV2ZWxAZWRr Mi5ncm91cHMuaW87IGpicmFzZW5AbnZpZGlhLmNvbQ0KPiBDYzogTmksIFJheSA8cmF5Lm5pQGlu dGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIE1kZU1vZHVsZVBr Zy9YaGNpRHhlOiBSZXRyeSBkZXZpY2Ugc2xvdA0KPiBpbml0IG9uIGZhaWx1cmUNCj4gDQo+IEhp IEhlbmcsDQo+IA0KPiBPbiAyMi8xMC8yMDIwIDA5OjQ0LCBKb24gSHVudGVyIHdyb3RlOg0KPiA+ IEhpIEhlbmcsDQo+ID4NCj4gPiBPbiAyMi8xMC8yMDIwIDA0OjAxLCBMdW8sIEhlbmcgd3JvdGU6 DQo+ID4+IEhpIEhhbywNCj4gPj4gSSBhcHBseWluZyB0aGlzIHBhdGNoLCBpdCBjYW5ub3QgZml4 IEJaDQo+IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzAw Ny4NCj4gPg0KPiA+IENhbiB5b3UgZWxhYm9yYXRlIG1vcmUgb24gd2h5IHRoYXQgaXM/IFVuZm9y dHVuYXRlbHksIHlvdXIgcGF0Y2ggZG9lcw0KPiA+IG5vdCB3b3JrIGZvciB0aGUgc2NlbmFyaW8g d2UgYXJlIHRlc3RpbmcuDQo+ID4NCj4gPiBJbiB5b3VyIGNhc2UgZG9lcyB0aGUgYmFkIFVTQiBk ZXZpY2UgbmV2ZXIgZW51bWVyYXRlIGV2ZW4gb24gdGhlIDJuZA0KPiA+IGF0dGVtcHQ/DQo+ID4N Cj4gPiBJZiBzbywgdGhlbiBtYXliZSB3ZSBjYW4gYXBwbHkgeW91ciBwYXRjaCB0byBkbyB0aGUg ZGlzYWJsZSBzbG90IGFuZA0KPiA+IGluIG91ciBwYXRjaCB3ZSBqdXN0IHRyeSB0aGUgZGV2aWNl IGluaXQgYWdhaW4gb25jZSwgd2l0aG91dCBjYWxsaW5nDQo+ID4gdGhlIHNsb3QgZGlzYWJsZSBi ZWNhdXNlIHRoYXQgaXMgaGFuZGxlZCBieSB5b3VyIHBhdGNoLg0KPiANCj4gQXBwbHlpbmcgdGhl IGJlbG93IGNoYW5nZSBvbiB0b3Agb2YgeW91ciBjaGFuZ2UsIHdvcmtzIGZvciBtZS4NCj4gT25l IGNoYW5nZSBpbiB0aGUgYmVsb3cgaXMgbm90IHRvIHJldHVybiB0aGUgc3RhdHVzIGZyb20gdGhl IGNhbGwgdG8NCj4gWGhjRGlzYWJsZVNsb3RDbWQ2NCgpIHdoaWNoIGlzIG5lY2Vzc2FyeSB0byBy ZXRyeSB0aGUgZGV2aWNlIGluaXRpYWxpc2F0aW9uLg0KPiANCj4gSm9uDQo+IA0KPiBkaWZmIC0t Z2l0IGEvTWRlTW9kdWxlUGtnL0J1cy9QY2kvWGhjaUR4ZS9YaGNpU2NoZWQuYw0KPiBiL01kZU1v ZHVsZVBrZy9CdXMvUGNpL1hoY2lEeGUvWGhjaVNjaGVkLmMNCj4gaW5kZXggMjFiYzljZTE3NTU2 Li44MmVmZDRhMDNmOGUgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9CdXMvUGNpL1hoY2lE eGUvWGhjaVNjaGVkLmMNCj4gKysrIGIvTWRlTW9kdWxlUGtnL0J1cy9QY2kvWGhjaUR4ZS9YaGNp U2NoZWQuYw0KPiBAQCAtMTY4NCw5ICsxNjg0LDExIEBAIFhoY1BvbGxQb3J0U3RhdHVzQ2hhbmdl ICgNCj4gICAgRUZJX1NUQVRVUyAgICAgICAgU3RhdHVzOw0KPiAgICBVSU5UOCAgICAgICAgICAg ICBTcGVlZDsNCj4gICAgVUlOVDggICAgICAgICAgICAgU2xvdElkOw0KPiArICBVSU5UOCAgICAg ICAgICAgICBSZXRyaWVzOw0KPiAgICBVU0JfREVWX1JPVVRFICAgICBSb3V0ZUNoYXJ0Ow0KPiAg ICBTdGF0dXMgPSBFRklfU1VDQ0VTUzsNCj4gKyAgUmV0cmllcyA9IFhIQ19JTklUX0RFVklDRV9T TE9UX1JFVFJJRVM7DQo+ICAgIGlmICgoUG9ydFN0YXRlLT5Qb3J0Q2hhbmdlU3RhdHVzICYgKFVT Ql9QT1JUX1NUQVRfQ19DT05ORUNUSU9OIHwNCj4gVVNCX1BPUlRfU1RBVF9DX0VOQUJMRSB8IFVT Ql9QT1JUX1NUQVRfQ19PVkVSQ1VSUkVOVCB8DQo+IFVTQl9QT1JUX1NUQVRfQ19SRVNFVCkpID09 IDApIHsNCj4gICAgICByZXR1cm4gRUZJX1NVQ0NFU1M7DQo+IEBAIC0xNzI4LDE3ICsxNzMwLDI5 IEBAIFhoY1BvbGxQb3J0U3RhdHVzQ2hhbmdlICgNCj4gICAgICB9IGVsc2UgaWYgKChQb3J0U3Rh dGUtPlBvcnRTdGF0dXMgJiBVU0JfUE9SVF9TVEFUX1NVUEVSX1NQRUVEKSAhPSAwKSB7DQo+ICAg ICAgICBTcGVlZCA9IEVGSV9VU0JfU1BFRURfU1VQRVI7DQo+ICAgICAgfQ0KPiAtICAgIC8vDQo+ IC0gICAgLy8gRXhlY3V0ZSBFbmFibGVfU2xvdCBjbWQgZm9yIGF0dGFjaGVkIGRldmljZSwgaW5p dGlhbGl6ZSBkZXZpY2UgY29udGV4dA0KPiBhbmQgYXNzaWduIGRldmljZSBhZGRyZXNzLg0KPiAt ICAgIC8vDQo+IC0gICAgU2xvdElkID0gWGhjUm91dGVTdHJpbmdUb1Nsb3RJZCAoWGhjLCBSb3V0 ZUNoYXJ0KTsNCj4gLSAgICBpZiAoKFNsb3RJZCA9PSAwKSAmJiAoKFBvcnRTdGF0ZS0+UG9ydENo YW5nZVN0YXR1cyAmDQo+IFVTQl9QT1JUX1NUQVRfQ19SRVNFVCkgIT0gMCkpIHsNCj4gLSAgICAg IGlmIChYaGMtPkhjQ1BhcmFtcy5EYXRhLkNzeiA9PSAwKSB7DQo+IC0gICAgICAgIFN0YXR1cyA9 IFhoY0luaXRpYWxpemVEZXZpY2VTbG90IChYaGMsIFBhcmVudFJvdXRlQ2hhcnQsIFBvcnQsDQo+ IFJvdXRlQ2hhcnQsIFNwZWVkKTsNCj4gLSAgICAgIH0gZWxzZSB7DQo+IC0gICAgICAgIFN0YXR1 cyA9IFhoY0luaXRpYWxpemVEZXZpY2VTbG90NjQgKFhoYywgUGFyZW50Um91dGVDaGFydCwgUG9y dCwNCj4gUm91dGVDaGFydCwgU3BlZWQpOw0KPiArDQo+ICsgICAgZG8gew0KPiArICAgICAgLy8N Cj4gKyAgICAgIC8vIEV4ZWN1dGUgRW5hYmxlX1Nsb3QgY21kIGZvciBhdHRhY2hlZCBkZXZpY2Us IGluaXRpYWxpemUgZGV2aWNlIGNvbnRleHQNCj4gYW5kIGFzc2lnbiBkZXZpY2UgYWRkcmVzcy4N Cj4gKyAgICAgIC8vDQo+ICsgICAgICBTbG90SWQgPSBYaGNSb3V0ZVN0cmluZ1RvU2xvdElkIChY aGMsIFJvdXRlQ2hhcnQpOw0KPiArICAgICAgaWYgKChTbG90SWQgPT0gMCkgJiYgKChQb3J0U3Rh dGUtPlBvcnRDaGFuZ2VTdGF0dXMgJg0KPiBVU0JfUE9SVF9TVEFUX0NfUkVTRVQpICE9IDApKSB7 DQo+ICsgICAgICAgIGlmIChYaGMtPkhjQ1BhcmFtcy5EYXRhLkNzeiA9PSAwKSB7DQo+ICsgICAg ICAgICAgU3RhdHVzID0gWGhjSW5pdGlhbGl6ZURldmljZVNsb3QgKFhoYywgUGFyZW50Um91dGVD aGFydCwgUG9ydCwNCj4gUm91dGVDaGFydCwgU3BlZWQpOw0KPiArICAgICAgICB9IGVsc2Ugew0K PiArICAgICAgICAgIFN0YXR1cyA9IFhoY0luaXRpYWxpemVEZXZpY2VTbG90NjQgKFhoYywgUGFy ZW50Um91dGVDaGFydCwgUG9ydCwNCj4gUm91dGVDaGFydCwgU3BlZWQpOw0KPiArICAgICAgICB9 DQo+ICAgICAgICB9DQo+IC0gICAgfQ0KPiArDQo+ICsgICAgICAvLw0KPiArICAgICAgLy8gQWNj b3JkaW5nIHRvIHRoZSB4SENJIHNwZWNpZmljYXRpb24gKHNlY3Rpb24gNC42LjUpLCAiYSBVU0Ig VHJhbnNhY3Rpb24NCj4gKyAgICAgIC8vIEVycm9yIENvbXBsZXRpb24gQ29kZSBmb3IgYW4gQWRk cmVzcyBEZXZpY2UgQ29tbWFuZCBtYXkgYmUgZHVlDQo+IHRvIGEgU3RhbGwNCj4gKyAgICAgIC8v IHJlc3BvbnNlIGZyb20gYSBkZXZpY2UuIFNvZnR3YXJlIHNob3VsZCBpc3N1ZSBhIERpc2FibGUg U2xvdA0KPiBDb21tYW5kIGZvcg0KPiArICAgICAgLy8gdGhlIERldmljZSBTbG90IHRoZW4gYW4g RW5hYmxlIFNsb3QgQ29tbWFuZCB0byByZWNvdmVyIGZyb20gdGhpcw0KPiBlcnJvci4iDQo+ICsg ICAgICAvLyBUaGVyZWZvcmUsIHJldHJ5IHRoZSBkZXZpY2Ugc2xvdCBpbml0aWFsaXphdGlvbiBp ZiBpdCBmYWlscyBkdWUgdG8gYQ0KPiArICAgICAgLy8gZGV2aWNlIGVycm9yLg0KPiArICAgICAg Ly8NCj4gKyAgICB9IHdoaWxlICgoU3RhdHVzID09IEVGSV9ERVZJQ0VfRVJST1IpICYmIChSZXRy aWVzLS0pKTsNCj4gICAgfQ0KPiAgICByZXR1cm4gU3RhdHVzOw0KPiBAQCAtMjI0OCw3ICsyMjYy LDcgQEAgWGhjSW5pdGlhbGl6ZURldmljZVNsb3QgKA0KPiAgICAgIFhoYy0+VXNiRGV2Q29udGV4 dFtTbG90SWRdLlhoY2lEZXZBZGRyID0gRGV2aWNlQWRkcmVzczsNCj4gICAgfSBlbHNlIHsNCj4g ICAgICBERUJVRyAoKERFQlVHX0lORk8sICIgICAgQWRkcmVzcyAlZCBhc3NpZ25lZCB1bnN1Y2Nl c3NmdWxseVxuIikpOw0KPiAtICAgIFN0YXR1cyA9IFhoY0Rpc2FibGVTbG90Q21kIChYaGMsIFNs b3RJZCk7DQo+ICsgICAgWGhjRGlzYWJsZVNsb3RDbWQgKFhoYywgU2xvdElkKTsNCj4gICAgfQ0K PiAgICByZXR1cm4gU3RhdHVzOw0KPiBAQCAtMjQ2MSw3ICsyNDc1LDcgQEAgWGhjSW5pdGlhbGl6 ZURldmljZVNsb3Q2NCAoDQo+ICAgICAgWGhjLT5Vc2JEZXZDb250ZXh0W1Nsb3RJZF0uWGhjaURl dkFkZHIgPSBEZXZpY2VBZGRyZXNzOw0KPiAgICB9IGVsc2Ugew0KPiAgICAgIERFQlVHICgoREVC VUdfSU5GTywgIiAgICBBZGRyZXNzICVkIGFzc2lnbmVkIHVuc3VjY2Vzc2Z1bGx5XG4iKSk7DQo+ IC0gICAgU3RhdHVzID0gWGhjRGlzYWJsZVNsb3RDbWQ2NCAoWGhjLCBTbG90SWQpOw0KPiArICAg IFhoY0Rpc2FibGVTbG90Q21kNjQgKFhoYywgU2xvdElkKTsNCj4gICAgfQ0KPiAgICByZXR1cm4g U3RhdHVzOw0KPiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL0J1cy9QY2kvWGhjaUR4ZS9YaGNp U2NoZWQuaA0KPiBiL01kZU1vZHVsZVBrZy9CdXMvUGNpL1hoY2lEeGUvWGhjaVNjaGVkLmgNCj4g aW5kZXggMmYxODk5NTAyMTUxLi4zZjljZGIxYzM2MDkgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVs ZVBrZy9CdXMvUGNpL1hoY2lEeGUvWGhjaVNjaGVkLmgNCj4gKysrIGIvTWRlTW9kdWxlUGtnL0J1 cy9QY2kvWGhjaUR4ZS9YaGNpU2NoZWQuaA0KPiBAQCAtMTEsNiArMTEsNyBAQCBTUERYLUxpY2Vu c2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudCAgI2RlZmluZQ0KPiBfRUZJX1hIQ0lf U0NIRURfSF8NCj4gICNkZWZpbmUgWEhDX1VSQl9TSUcgICAgICBTSUdOQVRVUkVfMzIgKCdVJywg J1MnLCAnQicsICdSJykNCj4gKyNkZWZpbmUgWEhDX0lOSVRfREVWSUNFX1NMT1RfUkVUUklFUyAx DQo+IA0KPiANCj4gDQo+IA0KPiANCj4gDQo+IA0KPiANCj4gDQo+IA0KPiANCj4gDQo+IA0KPiAN Cj4gLS0NCj4gbnZwdWJsaWMNCg==