From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 38C4A892BD for ; Tue, 3 Sep 2019 12:25:16 +0000 (UTC) From: "Kempczynski, Zbigniew" Date: Tue, 3 Sep 2019 12:23:45 +0000 Message-ID: <5e05da96ac06ac0dca64005ada87005e6ab1ae75.camel@intel.com> References: <20190823070351.16863-1-zbigniew.kempczynski@intel.com> <20190823070351.16863-3-zbigniew.kempczynski@intel.com> <20190903065151.shaqb7ggj4afwsmb@ahiler-desk1.fi.intel.com> In-Reply-To: <20190903065151.shaqb7ggj4afwsmb@ahiler-desk1.fi.intel.com> Content-Language: en-US Content-ID: MIME-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t v5 2/2] Add device selection for IGT List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: "Hiler, Arkadiusz" Cc: "igt-dev@lists.freedesktop.org" , "Latvala, Petri" , "daniel@ffwll.ch" List-ID: T24gVHVlLCAyMDE5LTA5LTAzIGF0IDA5OjUxICswMzAwLCBBcmthZGl1c3ogSGlsZXIgd3JvdGU6 DQoNCjxjdXQ+DQoNCj4gPiArLyoNCj4gPiArICogRm9yIGNvbXBhdGliaWxpdHkgbW9kZSB3aGVu IG11bHRpcGxlIC0tZGV2aWNlIGFyZ3VtZW50IHdlcmUgcGFzc2VkDQo+ID4gKyAqIHRoaXMgZnVu Y3Rpb24gdHJpZXMgdG8gYmUgc21hcnQgZW5vdWdoIHRvIGhhbmRsZSB0ZXN0cyB3aGljaCBvcGVu cw0KPiA+ICsgKiBtb3JlIHRoYW4gc2luZ2xlIGRldmljZS4gSXQgaXRlcmF0ZXMgb3ZlciBmaWx0 ZXIgbGlzdCBhbmQNCj4gPiArICogY29tcGFyZXMgcmVxdWVzdGVkIGNoaXBzZXQgdG8gY2FyZCBj aGlwc2V0IChvciBhbnkpLg0KPiA+ICsgKg0KPiA+ICsgKiBSZXR1cm5zOg0KPiA+ICsgKiBUcnVl IGlmIGNhcmQgYWNjb3JkaW5nIHRvIGZpbHRlcnMgYWRkZWQgYW5kIGNoaXBzZXQgd2FzIGZvdW5k LA0KPiA+ICsgKiBmYWxzZSBvdGh3ZXJ3aXNlLg0KPiA+ICsgKi8NCj4gPiArc3RhdGljIGJvb2wg X19maW5kX2NhcmRfd2l0aF9jaGlwc2V0KGludCBjaGlwc2V0LCBzdHJ1Y3QgaWd0X2RldmljZV9j YXJkDQo+ID4gKmNhcmQpDQo+ID4gK3sNCj4gPiArCWludCBpLCBuID0gaWd0X2RldmljZV9maWx0 ZXJfY291bnQoKTsNCj4gPiArCWNvbnN0IGNoYXIgKmZpbHRlcjsNCj4gPiArCWJvb2wgbWF0Y2g7 DQo+ID4gKw0KPiA+ICsJZm9yIChpID0gMDsgaSA8IG47IGkrKykgew0KPiA+ICsJCWZpbHRlciA9 IGlndF9kZXZpY2VfZmlsdGVyX2dldChpKTsNCj4gDQo+IEkgdGhpbmsgdGhhdCBmb3Igbm93IHdl IHNob3VsZCBqdXN0IGdvIHdpdGggdGhlIGZpcnN0IGZpbHRlciBhbmQgdGhlbiwNCj4gd2hlbiB3 ZSBoYXZlIGFuIEFQSSBmb3IgZXhwbGljaXQgb3BlbmluZyBhIHNlY29uZCwgZGlmZmVyZW50IGRl dmljZQ0KPiBzdGFydCBjYXJpbmcgYWJvdXQgb3RoZXIgZmlsdGVyLiBGb3Igbm93IHdlIGNhbiBq dXN0DQo+IGFzc2VydF9mKGlndF9kZXZpY2VfZmlsdGVyX2NvdW50KCkgPiAxLCAiT25seSBhIHNp bmdsZSBmaWx0ZXIgaXMNCj4gc3VwcG9ydGVkIGJ5IHRoaXMgdmVyc2lvbiBvZiBpZ3RcbiIpOyBv ciBzb21ldGhpbmcuDQo+ID4gKwkJbWF0Y2ggPSBpZ3RfZGV2aWNlX2NhcmRfbWF0Y2goZmlsdGVy LCBjYXJkKTsNCj4gPiArCQlpZiAobWF0Y2ggJiYgKGNhcmQtPmNoaXBzZXQgPT0gY2hpcHNldCB8 fA0KPiA+ICsJCQkgICAgICBjYXJkLT5jaGlwc2V0ID09IERSSVZFUl9BTlkpKSB7DQo+ID4gKwkJ CXJldHVybiB0cnVlOw0KPiA+ICsJCX0NCj4gPiArCX0NCj4gPiArDQo+ID4gKwlyZXR1cm4gZmFs c2U7DQo+ID4gK30NCj4gPiArDQoNCk15IGludGVudGlvbiB3YXMgdG8gcnVuIGttc19wcmltZSB0 ZXN0cyB3aXRob3V0IGNoYW5naW5nIHRlc3QgY29kZSwNCmFsbG93aW5nIHVzZXIgdG8gc2VsZWN0 IHZnZW0gYW5kIG90aGVyIGRldmljZSBoZSB3YW50cy4gV2l0aG91dCANCnJlaXRlcmF0aW5nIHRo ZSBmaWx0ZXJzIGFuZCBtYXRjaGluZyBjaGlwc2V0IGl0IGlzIG5vdCBwb3NzaWJsZS4NCkFib3Zl IGZ1bmN0aW9uIGhhcyBhIGJ1ZywgSSd2ZSBmaXhlZCBpdC4NCg0KU286DQoJIyBrbXNfcHJpbWUg LS1kZXZpY2UgdmdlbTogLS1kZXZpY2UgcGNpOiANCiAgICAgICAgb3INCiAgICAgICAgIyBrbXNf cHJpbWUgLS1kZXZpY2UgcGNpOiAtLWRldmljZSB2Z2VtOiANCg0Kd2lsbCB3b3JrIHByb3Blcmx5 IHdoZW4gSSdsbCBwdXNoIHRoZSBuZXcgcGF0Y2hzZXQuDQoNCkkgd291bGQgbGlrZSB0byByZXdy aXRlIHRlc3RzIGFkb3B0aW5nIG5ldyBBUEkgcGFydGlhbGx5LCBub3QgbWFraW5nDQpyZXZvbHV0 aW9uIHdpdGhpbiB0ZXN0cyBub3cuIA0KDQo8Y3V0Pg0KDQo+ICQgLi9jb3JlX2F1dGggLS1yIGdl dGNsaWVudC1zaW1wbGUgLS1kZXZpY2Ugdmttcw0KPiANCj4gSUdULVZlcnNpb246IDEuMjQtZzY0 MDY4NDQwICh4ODZfNjQpIChMaW51eDogNS4yLjEwLQ0KPiAyNTAudmFuaWxsYS5rbnVyZC4xLmZj MzAueDg2XzY0IHg4Nl82NCkNCj4gU3RhcnRpbmcgc3VidGVzdDogZ2V0Y2xpZW50LXNpbXBsZQ0K PiBUZXN0IHJlcXVpcmVtZW50IG5vdCBtZXQgaW4gZnVuY3Rpb24gZHJtX29wZW5fZHJpdmVyLCBm aWxlDQo+IC4uL2xpYi9kcm10ZXN0LmM6NTY5Og0KPiBUZXN0IHJlcXVpcmVtZW50OiAhKGZkPDAp DQo+IE5vIGtub3duIGdwdSBmb3VuZCBmb3IgY2hpcHNldCBmbGFncyAweDQyOTQ5NjcyOTEgKGFu eSkNCj4gTGFzdCBlcnJubzogMiwgTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQ0KPiBTdWJ0ZXN0 IGdldGNsaWVudC1zaW1wbGU6IFNLSVAgKDAuMDAycykNCj4gVGVzdCByZXF1aXJlbWVudCBub3Qg bWV0IGluIGZ1bmN0aW9uIGRybV9vcGVuX2RyaXZlciwgZmlsZQ0KPiAuLi9saWIvZHJtdGVzdC5j OjU2OToNCj4gVGVzdCByZXF1aXJlbWVudDogIShmZDwwKQ0KPiBObyBrbm93biBncHUgZm91bmQg Zm9yIGNoaXBzZXQgZmxhZ3MgMHg0Mjk0OTY3MjkxIChhbnkpDQo+IA0KPiBXaGljaCBzYXlzIG5v dGhpbmcgYWJvdXQgZmlsdGVycy4gSW4gc3VjaCBjYXNlcyBJIHRoaW5rIHdlIHNob3VsZCBiZQ0K PiBwcmV0dHkgdmVyYm9zZSBoZXJib3NlOg0KPiAgMS4gcHJpbnQgdGhlIGZpbHRlcg0KPiAgMi4g cHJpbnQgZGlzY292ZXJlZCBjYXJkcw0KPiAgMy4gbWVudGlvbiB0aGF0IHdlIGhhdmUgZmFpbGVk IHRvIG1hdGNoDQo+IA0KPiBPdGhlcndpc2Ugd2Ugd2lsbCBnZXQgcGVvcGxlIGNvbmZ1c2VkIGJ5 IHNoYXJlZCBsb2dzLCBzb210aGluZyB0aGV5IHB1dA0KPiBpbiAuaWd0cmMgYWdlcyBhZ28sIENJ LCBldGMuDQoNCllvdSdyZSByaWdodC4gQ3VycmVudGx5IGRldmljZSBzZWxlY3Rpb24gY29kZSBp cyBub3QgdmVyYm9zZSBhbmQgDQppbiBjYXNlIG9mIHByb2JsZW1zIHlvdSdyZSBub3QgaW5mb3Jt ZWQgd2hhdCdzIHdyb25nLiANCkkgd2lsbCBhZGQgZGVidWcgLyBlcnJvciBtZXNzYWdlcyB0byB0 aGUgY29kZS4NCg0KPGN1dD4NCj4gK2ludCBkcm1fb3Blbl9jYXJkX3dpdGhfbnRoX2ZpbHRlcihp bnQgbnVtLCBpbnQgY2hpcHNldCkNCjxjdXQ+DQo+ICtpbnQgZHJtX29wZW5fcmVuZGVyX3dpdGhf bnRoX2ZpbHRlcihpbnQgbnVtLCBpbnQgY2hpcHNldCkNCg0KPiBJIGFtIHN0aWxsIG5vdCBjb21w bGV0ZWx5IGhhcHB5IHdpdGggdGhvc2UuDQo+IA0KPiBJIGNhbid0IGltYWdpbmUgYW55IHJlYWwg dXNlLWNhc2VzIG9mIHRoZSBjdXJyZW50IGltcGxlbWVudGF0aW9uLg0KPiBJbnN0ZWFkIEkgd291 bGQgcHJvYmFibHkganVzdCBnbyB3aXRoIHdyaXRpbmcgd2hhdCBJIGhhdmUgZGVzY3JpYmVkIGlu DQo+IHRoZSBwcmV2aW91cyBpdGVyYXRpb24uDQo+IA0KPiBIb3cgYWJvdXQgc3BsaXR0aW5nIHRo ZSAqX3dpdGhfbnRoX2ZpbHRlcigpIGludG8gYSBzZXBhcmF0ZSBwYXRjaCBhbmQNCj4gc2VuZGlu ZyBpdCBvbiBpdHMgb3duLCBhcyBhIHJlZmVyZW5jZT8gVGhlbiB3ZSBjYW4gbGVhdmUgdGhlIGRl c2lnbiBvZg0KPiB0aGlzIGJpdCBvZiB0aGUgaW50ZXJmYWNlIHRvIHBlb3BsZSB0aGF0IHdpbGwg YWN0dWFsbHkgY29uc3VtZSBpdC4NCg0KT2ssIEkgd2lsbCBhZGQgdGhpcyBhcyBzZXBhcmF0ZSBw YXRjaCB3aGVuIGRldmljZSBzZWxlY3Rpb24gY29yZSANCndpbGwgYmUgcmV2aWV3ZWQgYW5kIG1l cmdlZC4gDQpXZSBjYW4gdGFrZSB0aGVuIGZldyB0ZXN0cyBhbmQgcHJvcG9zZSBuZXcgQVBJIGlu IGRybXRlc3QuW2NoXS4NCg0KPGN1dD4NCj4gIA0KPiA+IGRpZmYgLS1naXQgYS9saWIvaWd0X2Nv cmUuYyBiL2xpYi9pZ3RfY29yZS5jDQo+ID4gaW5kZXggMWNiYjA5ZjkuLmE4YTExYjVjIDEwMDY0 NA0KPiA+IC0tLSBhL2xpYi9pZ3RfY29yZS5jDQo+ID4gKysrIGIvbGliL2lndF9jb3JlLmMNCj4g PiBAQCAtNzEsNiArNzEsNyBAQA0KPiA+ICAjaW5jbHVkZSAiaWd0X3N5c3JxLmgiDQo+ID4gICNp bmNsdWRlICJpZ3RfcmMuaCINCj4gPiAgI2luY2x1ZGUgImlndF9saXN0LmgiDQo+ID4gKyNpbmNs dWRlICJpZ3RfZGV2aWNlX3NjYW4uaCINCj4gPiAgDQo+ID4gICNkZWZpbmUgVU5XX0xPQ0FMX09O TFkNCj4gPiAgI2luY2x1ZGUgPGxpYnVud2luZC5oPg0KPiA+IEBAIC0yNDUsNiArMjQ2LDkgQEAN Cj4gPiAgICoJW0NvbW1vbl0NCj4gPiAgICoJRnJhbWVEdW1wUGF0aD0vdG1wICMgVGhlIHBhdGgg dG8gZHVtcCBmcmFtZXMgdGhhdCBmYWlsIGNvbXBhcmlzb24NCj4gPiBjaGVja3MNCj4gPiAgICoN Cj4gPiArICoJJm51bTsgRGV2aWNlIHNlbGVjdGlvbiBmaWx0ZXINCj4gPiArICoJRGV2aWNlPXBj aTp2ZW5kb3I9ODA4NixjYXJkPTA7dmdlbToNCj4gPiArICoNCj4gPiAgICoJJm51bTsgVGhlIGZv bGxvd2luZyBzZWN0aW9uIGlzIHVzZWQgZm9yIGNvbmZpZ3VyaW5nIHRoZSBEZXZpY2UgVW5kZXIN Cj4gPiBUZXN0Lg0KPiA+ICAgKgkmbnVtOyBJdCBpcyBub3QgbWFuZGF0b3J5IGFuZCBhbGxvd3Mg b3ZlcnJpZGluZyBkZWZhdWx0IHZhbHVlcy4NCj4gPiAgICoJW0RVVF0NCj4gPiBAQCAtMzA0LDYg KzMwOCw3IEBAIGVudW0gew0KPiA+ICAJT1BUX0RFQlVHLA0KPiA+ICAJT1BUX0lOVEVSQUNUSVZF X0RFQlVHLA0KPiA+ICAJT1BUX1NLSVBfQ1JDLA0KPiA+ICsJT1BUX0RFVklDRSwNCj4gPiAgCU9Q VF9IRUxQID0gJ2gnDQo+ID4gIH07DQo+ID4gIA0KPiA+IEBAIC0zMjAsNiArMzI1LDcgQEAgc3Rh dGljIHB0aHJlYWRfbXV0ZXhfdCBsb2dfYnVmZmVyX211dGV4ID0NCj4gPiBQVEhSRUFEX01VVEVY X0lOSVRJQUxJWkVSOw0KPiA+ICBHS2V5RmlsZSAqaWd0X2tleV9maWxlOw0KPiA+ICANCj4gPiAg Y2hhciAqaWd0X2ZyYW1lX2R1bXBfcGF0aDsNCj4gPiArY2hhciAqaWd0X3JjX2RldmljZTsNCj4g PiAgDQo+ID4gIHN0YXRpYyBib29sIHN0ZGVycl9uZWVkc19zZW50aW5lbCA9IGZhbHNlOw0KPiA+ ICANCj4gPiBAQCAtNjI0LDYgKzYzMCw3IEBAIHN0YXRpYyB2b2lkIHByaW50X3VzYWdlKGNvbnN0 IGNoYXIgKmhlbHBfc3RyLCBib29sDQo+ID4gb3V0cHV0X29uX3N0ZGVycikNCj4gPiAgCQkgICAi ICAtLXNraXAtY3JjLWNvbXBhcmVcbiINCj4gPiAgCQkgICAiICAtLWhlbHAtZGVzY3JpcHRpb25c biINCj4gPiAgCQkgICAiICAtLWRlc2NyaWJlXG4iDQo+ID4gKwkJICAgIiAgLS1kZXZpY2UgZmls dGVyXG4iDQo+ID4gIAkJICAgIiAgLS1oZWxwfC1oXG4iKTsNCj4gPiAgCWlmIChoZWxwX3N0cikN Cj4gPiAgCQlmcHJpbnRmKGYsICIlc1xuIiwgaGVscF9zdHIpOw0KPiA+IEBAIC02ODgsNiArNjk1 LDE2IEBAIHN0YXRpYyB2b2lkIGNvbW1vbl9pbml0X2NvbmZpZyh2b2lkKQ0KPiA+ICAJaWYgKHJl dCAhPSAwKQ0KPiA+ICAJCWlndF9zZXRfYXV0b3Jlc3VtZV9kZWxheShyZXQpOw0KPiA+ICANCj4g PiArCS8qIE5vIElHVF9ERVZJQ0UgYW5kIG5vIC0tZGV2aWNlIHBhc3NlZCwgdHJ5IC5pZ3RyYyBD b21tb246OkRldmljZSAqLw0KPiA+ICsJaWYgKCFpZ3RfcmNfZGV2aWNlKQ0KPiA+ICsJCWlndF9y Y19kZXZpY2UgPQ0KPiA+ICsJCQlnX2tleV9maWxlX2dldF9zdHJpbmcoaWd0X2tleV9maWxlLCAi Q29tbW9uIiwNCj4gPiArCQkJCQkgICAgICAiRGV2aWNlIiwgJmVycm9yKTsNCj4gPiArCWlmIChp Z3RfcmNfZGV2aWNlICYmICFpZ3RfZGV2aWNlX2ZpbHRlcl9jb3VudCgpKQ0KPiA+ICsJCWlndF9k ZXZpY2VfZmlsdGVyX2FkZChpZ3RfcmNfZGV2aWNlKTsNCj4gPiArDQo+ID4gKwlnX2NsZWFyX2Vy cm9yKCZlcnJvcik7DQo+ID4gKw0KPiA+ICBvdXQ6DQo+ID4gIAlpZiAoIWtleV9maWxlX2VudiAm JiBrZXlfZmlsZV9sb2MpDQo+ID4gIAkJZnJlZShrZXlfZmlsZV9sb2MpOw0KPiA+IEBAIC03MjUs NiArNzQyLDExIEBAIHN0YXRpYyB2b2lkIGNvbW1vbl9pbml0X2Vudih2b2lkKQ0KPiA+ICAJaWYg KGVudikgew0KPiA+ICAJCV9fc2V0X2ZvcmNlZF9kcml2ZXIoZW52KTsNCj4gPiAgCX0NCj4gPiAr DQo+ID4gKwllbnYgPSBnZXRlbnYoIklHVF9ERVZJQ0UiKTsNCj4gPiArCWlmIChlbnYpIHsNCj4g PiArCQlpZ3RfZGV2aWNlX2ZpbHRlcl9hZGQoZW52KTsNCj4gPiArCX0NCj4gPiAgfQ0KPiA+ICAN Cj4gPiAgc3RhdGljIGludCBjb21tb25faW5pdChpbnQgKmFyZ2MsIGNoYXIgKiphcmd2LA0KPiA+ IEBAIC03NDMsNiArNzY1LDcgQEAgc3RhdGljIGludCBjb21tb25faW5pdChpbnQgKmFyZ2MsIGNo YXIgKiphcmd2LA0KPiA+ICAJCXsiZGVidWciLCAgICAgICAgICAgICBvcHRpb25hbF9hcmd1bWVu dCwgTlVMTCwgT1BUX0RFQlVHfSwNCj4gPiAgCQl7ImludGVyYWN0aXZlLWRlYnVnIiwgb3B0aW9u YWxfYXJndW1lbnQsIE5VTEwsDQo+ID4gT1BUX0lOVEVSQUNUSVZFX0RFQlVHfSwNCj4gPiAgCQl7 InNraXAtY3JjLWNvbXBhcmUiLCAgbm9fYXJndW1lbnQsICAgICAgIE5VTEwsIE9QVF9TS0lQX0NS Q30sDQo+ID4gKwkJeyJkZXZpY2UiLCAgICAgICAgICAgIHJlcXVpcmVkX2FyZ3VtZW50LCBOVUxM LCBPUFRfREVWSUNFfSwNCj4gPiAgCQl7ImhlbHAiLCAgICAgICAgICAgICAgbm9fYXJndW1lbnQs ICAgICAgIE5VTEwsIE9QVF9IRUxQfSwNCj4gPiAgCQl7MCwgMCwgMCwgMH0NCj4gPiAgCX07DQo+ ID4gQEAgLTg2NSw2ICs4ODgsMTcgQEAgc3RhdGljIGludCBjb21tb25faW5pdChpbnQgKmFyZ2Ms IGNoYXIgKiphcmd2LA0KPiA+ICAJCWNhc2UgT1BUX1NLSVBfQ1JDOg0KPiA+ICAJCQlpZ3Rfc2tp cF9jcmNfY29tcGFyZSA9IHRydWU7DQo+ID4gIAkJCWdvdG8gb3V0Ow0KPiA+ICsJCWNhc2UgT1BU X0RFVklDRToNCj4gPiArCQkJYXNzZXJ0KG9wdGFyZyk7DQo+ID4gKwkJCS8qIFdlIG5lZWQgdG8g ZnJlZSBhbGwgZGV2aWNlcyBwYXNzZWQgaW4NCj4gPiArCQkJICogSUdUX0RFVklDRSBlbnZpcm9u bWVudCB2YXJpYWJsZS4NCj4gPiArCQkJICovDQo+ID4gKwkJCWlmIChnZXRlbnYoIklHVF9ERVZJ Q0UiKSAmJiBpZ3RfZGV2aWNlX2ZpbHRlcl9jb3VudCgpKQ0KPiA+IHsNCj4gPiArCQkJCXVuc2V0 ZW52KCJJR1RfREVWSUNFIik7DQo+ID4gKwkJCQlpZ3RfZGV2aWNlX2ZpbHRlcl9mcmVlX2FsbCgp Ow0KPiA+ICsJCQl9DQo+IA0KPiBJIHdvdWxkIHN0cnVjdHVyZSB0aGF0IHNsaWdodGx5IGRpZmZl cmVudGx5Og0KPiANCj4gY2hhciAqZGV2aWNlX2ZpbHRlcl9zdHIgPSBOVUxMOw0KPiANCj4gZGV2 aWNlX2ZpbHRlcl9zdHIgPSBnX2tleV9maWxlX2dldF9zdHJpbmcoaWd0X2tleV9maWxlLCAiQ29t bW9uIiwgIkRldmljZSIsDQo+ICZlcnJvcik7DQo+IA0KPiBlbnYgPSBnZXRlbnYoIklHVF9ERVZJ Q0UiKTsNCj4gaWYgKGVudikgew0KPiAJZnJlZShkZXZpY2VfZmlsdGVyX3N0cik7DQo+IAlkZXZp Y2VfZmlsdGVyX3N0ciA9IHN0cmR1cChlbnYpOw0KPiB9DQo+IA0KPiAvKiAuLi4gKi8NCj4gc3dp dGNoIChjKSB7DQo+IAljYXNlIE9QVF9ERVZJQ0U6DQo+IAkJYXNzZXJ0KG9wdGFyZyk7DQo+IAkJ ZnJlZShkZXZpY2VfZmlsdGVyX3N0cik7DQo+IAkJZGV2aWNlX2ZpbHRlcl9zdHIgPSBzdHJkdXAo b3B0YXJnKTsNCj4gCQlicmVhazsNCj4gfQ0KPiANCj4gLyogLi4uICovDQo+IA0KPiBpZiAoZGV2 aWNlX2ZpbHRlcl9zdHIpIHsNCj4gCWlndF9kZXZpY2VfZmlsdGVyX2FkZChkZXZpY2VfZmlsdGVy X3N0cik7DQo+IAlmcmVlKGRldmljZV9maWx0ZXJfc3RyKTsNCj4gfQ0KDQpJIHdvdWxkIGFsc28g ZG8gdGhhdCBidXQgY3VycmVudCBJR1QgY29kZSBkbyB0aGUgZm9sbG93aW5nOg0KDQpjb21tb25f aW5pdCgpDQogICAtPiBjb21tb25faW5pdF9lbnYoKSAtIGdldGVudihJR1RfREVWSUNFKQ0KICAg Li4uDQogICAtPiBnZXRvcHQoKSBsb29wIC0gKC0tZGV2aWNlKSBwYXNzaW5nDQogICAuLi4NCiAg IC0+IGNvbW1vbl9pbml0X2NvbmZpZygpIC0gcGFyc2UgLmlndHJjDQoNClNvIHJlYWRpbmcgLmln dHJjIGlzIGRvbmUgYXQgdGhlIGVuZCwgc28gSSBoYXZlIGRvIHNvbWUgdHJpY2tzDQp0byBrZWVw IGRldmljZSBzZWxlY3Rpb24gb3JkZXIgd2Ugc2V0IGluIHByZXZpb3VzIGVtYWlsLg0KDQpaYmln bmlldw0KDQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldg==