From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Souza, Jose" Subject: Re: [PATCH v3 4/9] drm/i915/tgl: Add dkl phy programming sequences Date: Tue, 24 Sep 2019 23:21:52 +0000 Message-ID: <7ba6a25da0441df93c5d018f67fbbc4caad2465a.camel@intel.com> References: <20190923195513.207536-1-jose.souza@intel.com> <20190923195513.207536-5-jose.souza@intel.com> <20190924130006.GA25906@ideak-desk.fi.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id DE3646EB07 for ; Tue, 24 Sep 2019 23:21:53 +0000 (UTC) In-Reply-To: <20190924130006.GA25906@ideak-desk.fi.intel.com> Content-Language: en-US Content-ID: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "lucas.de.marchi@gmail.com" , "Deak, Imre" Cc: "intel-gfx@lists.freedesktop.org" List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCAyMDE5LTA5LTI0IGF0IDE2OjAwICswMzAwLCBJbXJlIERlYWsgd3JvdGU6DQo+IE9u IE1vbiwgU2VwIDIzLCAyMDE5IGF0IDAzOjAyOjU0UE0gLTA3MDAsIEx1Y2FzIERlIE1hcmNoaSB3 cm90ZToNCj4gPiBPbiBNb24sIFNlcCAyMywgMjAxOSBhdCAxMjo1NSBQTSBKb3PDqSBSb2JlcnRv IGRlIFNvdXphDQo+ID4gPGpvc2Uuc291emFAaW50ZWwuY29tPiB3cm90ZToNCj4gPiA+IFsuLi5d DQo+ID4gPiArICAgICAgICAgICAgICAgbG4xICY9IH4oREtMX0RQX01PREVfQ0ZHX0RQX1gxX01P REUgfA0KPiA+ID4gREtMX0RQX01PREVfQ0ZHX0RQX1gyX01PREUpOw0KPiA+ID4gKw0KPiA+ID4g KyAgICAgICAgICAgICAgIGxhbmVfbWFzayA9DQo+ID4gPiBpbnRlbF90Y19wb3J0X2dldF9sYW5l X21hc2soaW50ZWxfZGlnX3BvcnQpOyAvKiBEUFg0VFhMQVRDICovDQo+ID4gPiArICAgICAgICAg ICAgICAgcGluX21hc2sgPQ0KPiA+ID4gaW50ZWxfdGNfcG9ydF9nZXRfcGluX2Fzc2lnbm1lbnRf bWFzayhpbnRlbF9kaWdfcG9ydCk7IC8qIERQUEFUQw0KPiA+ID4gKi8NCj4gPiA+ICsNCj4gPiA+ ICsgICAgICAgICAgICAgICBzd2l0Y2ggKHBpbl9tYXNrKSB7DQo+ID4gDQo+ID4gRnJvbSBhIHF1 aWNrIGxvb2sgdG8gdGhlIHRhYmxlLCB3ZSBkb24ndCBjaGFuZ2UgYmFzZWQgb24gcGluX21hc2ss DQo+ID4gYnV0DQo+ID4gcmF0aGVyIGJhc2VkIG9uIGxhbmVfbWFzaywganVzdCBsaWtlIGZvciBN Ry4NCj4gDQo+IFRoZXJlIGFyZSBkaWZmZXJlbmNlcywgZm9yIGluc3RhbmNlIHBpbl9tYXNrPTB4 NCwweDYvbGFuZV9tYXNrPTB4Mw0KPiB2cy4NCj4gcGluX21hc2s9MHgyL2xhbmVfbWFzaz0weDMu DQo+IA0KPiA+IEJ0dywgbGFuZV9tYXNrIGlzIHVudXNlZCBpbiB0aGlzIGZ1bmN0aW9uIG5vdyBh bmQgd2UgZG9uJ3QgZ2V0IGENCj4gPiB3YXJuaW5nIGp1c3QgYmVjYXVzZSBpdCdzIG1pc3VzZWQg aW4gYQ0KPiA+IE1JU1NJTkdfQ0FTRSgpIGJlbG93Lg0KPiA+IA0KPiA+IFRoZSB2YWx1ZXMgZG8g Y2hhbmdlIGJhc2VkIG9uIHdpZHRoLCBidXQgSSdtIG5vdCBzdXJlIHdoeSBNRw0KPiA+IGRvZXNu J3QNCj4gPiBuZWVkIHRvIHRha2UgdGhhdCBpbnRvIGFjY291bnQuDQo+IA0KPiBZZXMsIGxvb2tz IGxpa2UgY3J0Y19zdGF0ZS0+bGFuZV9jb3VudCBzaG91bGQgYmUgY29uc2lkZXJlZC4gTm90IHN1 cmUNCj4gd2h5IHRoZSBNRyB2ZXJzaW9uIGRvZXNuJ3QgZG8gdGhhdCBlaXRoZXIsIEkgYXNzdW1l IGl0IHdhcyBhbg0KPiBhZGRpdGlvbg0KPiB0byBCU3BlYyBvbmx5IGFmdGVyIHRoZSBmdW5jdGlv biB3YXMgYWRkZWQuIFRoZSBzYW1lIGFwcGxpZXMgdG8NCj4gcGluX21hc2suDQoNCkxvb2tpbmcg bW9yZSBjYXJlZnVsbHksIEZJQSB0YWtlcyBjYXJlIG9mIGZsaXAvcmV2ZXJzYWwgbGFuZXMsIHNv IGZvcg0KdXMganVzdCBtYXR0ZXIgd2hhdCBsYW5lcyBjYW4gYmUgdXNlZC4NCg0KU28gZHJvcHBp bmcgdGhlIHBhdGNoIGFkZGluZyBpbnRlbF90Y19wb3J0X2dldF9waW5fYXNzaWdubWVudF9tYXNr KCksDQpkcm9wcGluZyB0Z2xfcHJvZ3JhbV9ka2xfZHBfbW9kZSBhbmQgdGdsX3BoeV9zZXRfY2xv Y2tfZ2F0aW5nKCkgYW5kDQpyZXVzaW5nIElDTCB2ZXJzaW9ucyB3aXRoIGEgY291cGxlIG9mICJp ZiBnZW4gPiAxMiIgdG8gYWNjZXNzIGRrbA0KcmVnaXN0ZXIuDQoNCk9uZSBvZGQgdGhpbmcgdGhh dCBJIG5vdGljZSBpcyB0aGF0IHdlIHVzZSBwb3J0IGluc3RlYWQgb2YgdGNfcG9ydCBpbg0KbW9z dCBNRyByZWdpc3RlcnMsIHRob3NlIE1HIHJlZ2lzdGVycyB1c2VzIGEgbWFjcm8gdGhhdCBzdWJ0 cmFjdCBwb3J0DQphbmQgUE9SVF9DIHRvIGdldCB0aGUgcmlnaHQgcmVnaXN0ZXIsIHRoaW5raW5n IGluIHNlbmQgYSBwYXRjaCBjaGFuZ2luZw0KYWxsIG9mIHRob3NlIHRvIHJlY2VpdmUgYXMgcGFy YW1ldGVyIHRjX3BvcnQgdG8gbWFrZSBpdCBjb25zaXN0ZW50LA0Kd2hhdCB5b3UgZ3V5cyB0aGlu az8NCg0KDQo+IA0KPiA+ICtJbXJlIERlYWsNCj4gPiANCj4gPiBMdWNhcyBEZSBNYXJjaGkNCj4g PiANCj4gPiA+ICsgICAgICAgICAgICAgICBjYXNlIDB4MDoNCj4gPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgIGlmIChudW1fbGFuZXMgPT0gMSkgew0KPiA+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBsbjEgfD0NCj4gPiA+IERLTF9EUF9NT0RFX0NGR19EUF9YMV9NT0RFOw0K PiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsNCj4gPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgbG4wIHw9DQo+ID4gPiBES0xfRFBfTU9ERV9DRkdfRFBfWDJf TU9ERTsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG4xIHw9DQo+ID4g PiBES0xfRFBfTU9ERV9DRkdfRFBfWDJfTU9ERTsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgIH0NCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0KPiA+ID4gKyAgICAg ICAgICAgICAgIGNhc2UgMHgxOg0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgaWYgKG51 bV9sYW5lcyA9PSA0KSB7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxu MCB8PQ0KPiA+ID4gREtMX0RQX01PREVfQ0ZHX0RQX1gyX01PREU7DQo+ID4gPiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGxuMSB8PQ0KPiA+ID4gREtMX0RQX01PREVfQ0ZHX0RQX1gy X01PREU7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICB9DQo+ID4gPiArICAgICAgICAg ICAgICAgICAgICAgICBicmVhazsNCj4gPiA+ICsgICAgICAgICAgICAgICBjYXNlIDB4MjoNCj4g PiA+ICsgICAgICAgICAgICAgICAgICAgICAgIGlmIChudW1fbGFuZXMgPT0gMikgew0KPiA+ID4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsbjAgfD0NCj4gPiA+IERLTF9EUF9NT0RF X0NGR19EUF9YMl9NT0RFOw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs bjEgfD0NCj4gPiA+IERLTF9EUF9NT0RFX0NGR19EUF9YMl9NT0RFOw0KPiA+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgfQ0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQo+ ID4gPiArICAgICAgICAgICAgICAgY2FzZSAweDM6DQo+ID4gPiArICAgICAgICAgICAgICAgY2Fz ZSAweDU6DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICBpZiAobnVtX2xhbmVzID09IDEp IHsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG4wIHw9DQo+ID4gPiBE S0xfRFBfTU9ERV9DRkdfRFBfWDFfTU9ERTsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgbG4xIHw9DQo+ID4gPiBES0xfRFBfTU9ERV9DRkdfRFBfWDFfTU9ERTsNCj4gPiA+ ICsgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7DQo+ID4gPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGxuMCB8PQ0KPiA+ID4gREtMX0RQX01PREVfQ0ZHX0RQX1gyX01PREU7 DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxuMSB8PQ0KPiA+ID4gREtM X0RQX01PREVfQ0ZHX0RQX1gyX01PREU7DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICB9 DQo+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNCj4gPiA+ICsgICAgICAgICAg ICAgICBjYXNlIDB4NDoNCj4gPiA+ICsgICAgICAgICAgICAgICBjYXNlIDB4NjoNCj4gPiA+ICsg ICAgICAgICAgICAgICAgICAgICAgIGlmIChudW1fbGFuZXMgPT0gMSkgew0KPiA+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBsbjAgfD0NCj4gPiA+IERLTF9EUF9NT0RFX0NGR19E UF9YMV9NT0RFOw0KPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsbjEgfD0N Cj4gPiA+IERLTF9EUF9NT0RFX0NGR19EUF9YMV9NT0RFOw0KPiA+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgfSBlbHNlIHsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bG4wIHw9DQo+ID4gPiBES0xfRFBfTU9ERV9DRkdfRFBfWDJfTU9ERTsNCj4gPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgbG4xIHw9DQo+ID4gPiBES0xfRFBfTU9ERV9DRkdfRFBf WDJfTU9ERTsNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIH0NCj4gPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgIGJyZWFrOw0KPiA+ID4gKyAgICAgICAgICAgICAgIGRlZmF1bHQ6DQo+ ID4gPiArICAgICAgICAgICAgICAgICAgICAgICBNSVNTSU5HX0NBU0UobGFuZV9tYXNrKTsNCj4g PiA+ICsgICAgICAgICAgICAgICB9DQo+ID4gPiArICAgICAgICAgICAgICAgYnJlYWs7DQo+ID4g PiArDQo+ID4gPiArICAgICAgIGNhc2UgVENfUE9SVF9MRUdBQ1k6DQo+ID4gPiArICAgICAgICAg ICAgICAgbG4wIHw9IERLTF9EUF9NT0RFX0NGR19EUF9YMV9NT0RFIHwNCj4gPiA+IERLTF9EUF9N T0RFX0NGR19EUF9YMl9NT0RFOw0KPiA+ID4gKyAgICAgICAgICAgICAgIGxuMSB8PSBES0xfRFBf TU9ERV9DRkdfRFBfWDFfTU9ERSB8DQo+ID4gPiBES0xfRFBfTU9ERV9DRkdfRFBfWDJfTU9ERTsN Cj4gPiA+ICsgICAgICAgICAgICAgICBicmVhazsNCj4gPiA+ICsNCj4gPiA+ICsgICAgICAgZGVm YXVsdDoNCj4gPiA+ICsgICAgICAgICAgICAgICBNSVNTSU5HX0NBU0UoaW50ZWxfZGlnX3BvcnQt PnRjX21vZGUpOw0KPiA+ID4gKyAgICAgICAgICAgICAgIHJldHVybjsNCj4gPiA+ICsgICAgICAg fQ0KPiA+ID4gKw0KPiA+ID4gKyAgICAgICBJOTE1X1dSSVRFKEhJUF9JTkRFWF9SRUcodGNfcG9y dCksIEhJUF9JTkRFWF9WQUwodGNfcG9ydCwNCj4gPiA+IDB4MCkpOw0KPiA+ID4gKyAgICAgICBJ OTE1X1dSSVRFKERLTF9EUF9NT0RFKHRjX3BvcnQpLCBsbjApOw0KPiA+ID4gKyAgICAgICBJOTE1 X1dSSVRFKEhJUF9JTkRFWF9SRUcodGNfcG9ydCksIEhJUF9JTkRFWF9WQUwodGNfcG9ydCwNCj4g PiA+IDB4MSkpOw0KPiA+ID4gKyAgICAgICBJOTE1X1dSSVRFKERLTF9EUF9NT0RFKHRjX3BvcnQp LCBsbjEpOw0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICBzdGF0aWMgdm9pZCBpbnRlbF9kcF9z aW5rX3NldF9mZWNfcmVhZHkoc3RydWN0IGludGVsX2RwDQo+ID4gPiAqaW50ZWxfZHAsDQo+ID4g PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0DQo+ ID4gPiBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQ0KPiA+ID4gIHsNCj4gPiA+IEBAIC0z MjE4LDcgKzM0MzEsNyBAQCBzdGF0aWMgdm9pZCB0Z2xfZGRpX3ByZV9lbmFibGVfZHAoc3RydWN0 DQo+ID4gPiBpbnRlbF9lbmNvZGVyICplbmNvZGVyLA0KPiA+ID4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGRpZ19wb3J0LQ0KPiA+ID4gPmRkaV9pb19wb3dlcl9kb21h aW4pOw0KPiA+ID4gDQo+ID4gPiAgICAgICAgIC8qIDYuICovDQo+ID4gPiAtICAgICAgIGljbF9w cm9ncmFtX21nX2RwX21vZGUoZGlnX3BvcnQpOw0KPiA+ID4gKyAgICAgICB0Z2xfcHJvZ3JhbV9k a2xfZHBfbW9kZShkaWdfcG9ydCk7DQo+ID4gPiANCj4gPiA+ICAgICAgICAgLyoNCj4gPiA+ICAg ICAgICAgICogNy5hIC0gU3RlcHMgaW4gdGhpcyBmdW5jdGlvbiBzaG91bGQgb25seSBiZSBleGVj dXRlZA0KPiA+ID4gb3bCtGVyIE1TVA0KPiA+ID4gQEAgLTMyMzEsMTAgKzM0NDQsMTAgQEAgc3Rh dGljIHZvaWQgdGdsX2RkaV9wcmVfZW5hYmxlX2RwKHN0cnVjdA0KPiA+ID4gaW50ZWxfZW5jb2Rl ciAqZW5jb2RlciwNCj4gPiA+ICAgICAgICAgaW50ZWxfZGRpX2NvbmZpZ190cmFuc2NvZGVyX2Z1 bmMoY3J0Y19zdGF0ZSk7DQo+ID4gPiANCj4gPiA+ICAgICAgICAgLyogNy5kICovDQo+ID4gPiAt ICAgICAgIGljbF9waHlfc2V0X2Nsb2NrX2dhdGluZyhkaWdfcG9ydCwgZmFsc2UpOw0KPiA+ID4g KyAgICAgICB0Z2xfcGh5X3NldF9jbG9ja19nYXRpbmcoZGlnX3BvcnQsIGZhbHNlKTsNCj4gPiA+ IA0KPiA+ID4gICAgICAgICAvKiA3LmUgKi8NCj4gPiA+IC0gICAgICAgaWNsX2RkaV92c3dpbmdf c2VxdWVuY2UoZW5jb2RlciwgY3J0Y19zdGF0ZS0+cG9ydF9jbG9jaywNCj4gPiA+IGxldmVsLA0K PiA+ID4gKyAgICAgICB0Z2xfZGRpX3Zzd2luZ19zZXF1ZW5jZShlbmNvZGVyLCBjcnRjX3N0YXRl LT5wb3J0X2Nsb2NrLA0KPiA+ID4gbGV2ZWwsDQo+ID4gPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGVuY29kZXItPnR5cGUpOw0KPiA+ID4gDQo+ID4gPiAgICAgICAgIC8qIDcuZiAq Lw0KPiA+ID4gQEAgLTMyNjYsNiArMzQ3OSwxNSBAQCBzdGF0aWMgdm9pZCB0Z2xfZGRpX3ByZV9l bmFibGVfZHAoc3RydWN0DQo+ID4gPiBpbnRlbF9lbmNvZGVyICplbmNvZGVyLA0KPiA+ID4gICAg ICAgICAvKiA3LmsgKi8NCj4gPiA+ICAgICAgICAgaW50ZWxfZHBfc3RvcF9saW5rX3RyYWluKGlu dGVsX2RwKTsNCj4gPiA+IA0KPiA+ID4gKyAgICAgICAvKg0KPiA+ID4gKyAgICAgICAgKiBUT0RP OiBlbmFibGUgY2xvY2sgZ2F0aW5nDQo+ID4gPiArICAgICAgICAqDQo+ID4gPiArICAgICAgICAq IEl0IGlzIG5vdCB3cml0dGVuIGluIERQIGVuYWJsaW5nIHNlcXVlbmNlIGJ1dCAiUEhZDQo+ID4g PiBDbG9ja2dhdGluZw0KPiA+ID4gKyAgICAgICAgKiBwcm9ncmFtbWluZyIgc3RhdGVzIHRoYXQg Y2xvY2sgZ2F0aW5nIHNob3VsZCBiZQ0KPiA+ID4gZW5hYmxlZCBhZnRlciB0aGUNCj4gPiA+ICsg ICAgICAgICogbGluayB0cmFpbmluZyBidXQgZG9pbmcgc28gY2F1c2VzIGFsbCB0aGUgZm9sbG93 aW5nDQo+ID4gPiB0cmFpbmluZ3MgdG8gZmFpbA0KPiA+ID4gKyAgICAgICAgKiBzbyBub3QgZW5h YmxpbmcgaXQgZm9yIG5vdy4NCj4gPiA+ICsgICAgICAgICovDQo+ID4gPiArDQo+ID4gPiAgICAg ICAgIC8qIDcubCAqLw0KPiA+ID4gICAgICAgICBpbnRlbF9kZGlfZW5hYmxlX2ZlYyhlbmNvZGVy LCBjcnRjX3N0YXRlKTsNCj4gPiA+ICAgICAgICAgaW50ZWxfZHNjX2VuYWJsZShlbmNvZGVyLCBj cnRjX3N0YXRlKTsNCj4gPiA+IEBAIC0zMzcxLDkgKzM1OTMsMTUgQEAgc3RhdGljIHZvaWQNCj4g PiA+IGludGVsX2RkaV9wcmVfZW5hYmxlX2hkbWkoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29k ZXIsDQo+ID4gPiAgICAgICAgIGludGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2LCBkaWdf cG9ydC0NCj4gPiA+ID5kZGlfaW9fcG93ZXJfZG9tYWluKTsNCj4gPiA+IA0KPiA+ID4gICAgICAg ICBpY2xfcHJvZ3JhbV9tZ19kcF9tb2RlKGRpZ19wb3J0KTsNCj4gPiA+IC0gICAgICAgaWNsX3Bo eV9zZXRfY2xvY2tfZ2F0aW5nKGRpZ19wb3J0LCBmYWxzZSk7DQo+ID4gPiArICAgICAgIGlmIChJ TlRFTF9HRU4oZGV2X3ByaXYpID49IDEyKQ0KPiA+ID4gKyAgICAgICAgICAgICAgIHRnbF9waHlf c2V0X2Nsb2NrX2dhdGluZyhkaWdfcG9ydCwgZmFsc2UpOw0KPiA+ID4gKyAgICAgICBlbHNlDQo+ ID4gPiArICAgICAgICAgICAgICAgaWNsX3BoeV9zZXRfY2xvY2tfZ2F0aW5nKGRpZ19wb3J0LCBm YWxzZSk7DQo+ID4gPiANCj4gPiA+IC0gICAgICAgaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0g MTEpDQo+ID4gPiArICAgICAgIGlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDEyKQ0KPiA+ID4g KyAgICAgICAgICAgICAgIHRnbF9kZGlfdnN3aW5nX3NlcXVlbmNlKGVuY29kZXIsIGNydGNfc3Rh dGUtDQo+ID4gPiA+cG9ydF9jbG9jaywNCj4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBsZXZlbCwNCj4gPiA+IElOVEVMX09VVFBVVF9IRE1JKTsNCj4gPiA+ICsg ICAgICAgZWxzZSBpZiAoSU5URUxfR0VOKGRldl9wcml2KSA9PSAxMSkNCj4gPiA+ICAgICAgICAg ICAgICAgICBpY2xfZGRpX3Zzd2luZ19zZXF1ZW5jZShlbmNvZGVyLCBjcnRjX3N0YXRlLQ0KPiA+ ID4gPnBvcnRfY2xvY2ssDQo+ID4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbGV2ZWwsDQo+ID4gPiBJTlRFTF9PVVRQVVRfSERNSSk7DQo+ID4gPiAgICAgICAgIGVs c2UgaWYgKElTX0NBTk5PTkxBS0UoZGV2X3ByaXYpKQ0KPiA+ID4gQEAgLTMzODMsNyArMzYxMSwx MCBAQCBzdGF0aWMgdm9pZA0KPiA+ID4gaW50ZWxfZGRpX3ByZV9lbmFibGVfaGRtaShzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqZW5jb2RlciwNCj4gPiA+ICAgICAgICAgZWxzZQ0KPiA+ID4gICAgICAg ICAgICAgICAgIGludGVsX3ByZXBhcmVfaGRtaV9kZGlfYnVmZmVycyhlbmNvZGVyLCBsZXZlbCk7 DQo+ID4gPiANCj4gPiA+IC0gICAgICAgaWNsX3BoeV9zZXRfY2xvY2tfZ2F0aW5nKGRpZ19wb3J0 LCB0cnVlKTsNCj4gPiA+ICsgICAgICAgaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTIpDQo+ ID4gPiArICAgICAgICAgICAgICAgdGdsX3BoeV9zZXRfY2xvY2tfZ2F0aW5nKGRpZ19wb3J0LCB0 cnVlKTsNCj4gPiA+ICsgICAgICAgZWxzZQ0KPiA+ID4gKyAgICAgICAgICAgICAgIGljbF9waHlf c2V0X2Nsb2NrX2dhdGluZyhkaWdfcG9ydCwgdHJ1ZSk7DQo+ID4gPiANCj4gPiA+ICAgICAgICAg aWYgKElTX0dFTjlfQkMoZGV2X3ByaXYpKQ0KPiA+ID4gICAgICAgICAgICAgICAgIHNrbF9kZGlf c2V0X2lib29zdChlbmNvZGVyLCBsZXZlbCwNCj4gPiA+IElOVEVMX09VVFBVVF9IRE1JKTsNCj4g PiA+IC0tDQo+ID4gPiAyLjIzLjANCj4gPiA+IA0KPiA+ID4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18NCj4gPiA+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QN Cj4gPiA+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcNCj4gPiA+IGh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4DQo+ID4gDQo+ID4g DQo+ID4gLS0gDQo+ID4gTHVjYXMgRGUgTWFyY2hpDQpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZng=