From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: Re: [PATCH v3] drm/i915/ddi: Get AUX power domain for DP main link too Date: Thu, 21 Jun 2018 23:09:14 +0300 Message-ID: <20180621200914.GB26959@ideak-desk.fi.intel.com> References: <20180621171247.20350-1-imre.deak@intel.com> <20180621184449.26634-1-imre.deak@intel.com> <1529612070.12516.36.camel@intel.com> <20180621195400.GA26959@ideak-desk.fi.intel.com> <1529612920.12516.41.camel@intel.com> Reply-To: imre.deak@intel.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 839DD6E935 for ; Thu, 21 Jun 2018 20:09:32 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1529612920.12516.41.camel@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Dhinakaran Pandiyan Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBKdW4gMjEsIDIwMTggYXQgMDE6Mjg6NDBQTSAtMDcwMCwgRGhpbmFrYXJhbiBQYW5k aXlhbiB3cm90ZToKPiBPbiBUaHUsIDIwMTgtMDYtMjEgYXQgMjI6NTQgKzAzMDAsIEltcmUgRGVh ayB3cm90ZToKPiA+IE9uIFRodSwgSnVuIDIxLCAyMDE4IGF0IDAxOjE0OjMwUE0gLTA3MDAsIERo aW5ha2FyYW4gUGFuZGl5YW4gd3JvdGU6Cj4gPiA+IAo+ID4gPiBPbiBUaHUsIDIwMTgtMDYtMjEg YXQgMjE6NDQgKzAzMDAsIEltcmUgRGVhayB3cm90ZToKPiA+ID4gPiAKPiA+ID4gPiBTbyBmYXIg d2UgZ290IGFuIEFVWCBwb3dlciBkb21haW4gcmVmZXJlbmNlIG9ubHkgZm9yIHRoZSBkdXJhdGlv bgo+ID4gPiA+IG9mCj4gPiA+ID4gRFAKPiA+ID4gPiBBVVggdHJhbnNmZXJzLiBIb3dldmVyLCB0 aGUgZm9sbG93aW5nIHN1Z2dlc3RzIHRoYXQgd2UgYWxzbyBuZWVkCj4gPiA+ID4gdGhlc2UKPiA+ ID4gPiBmb3IgbWFpbiBsaW5rIGZ1bmN0aW9uYWxpdHk6Cj4gPiA+ID4gLSBUaGUgc3BlY2lmaWNh dGlvbiBkb2Vzbid0IHN0YXRlIHdoZXRoZXIgaXQncyBuZWVkZWQgb3Igbm90IGZvcgo+ID4gPiA+ IG1haW4KPiA+ID4gPiDCoCBsaW5rIGZ1bmN0aW9uYWxpdHksIGJ1dCBzdWdnZXN0cyB0aGF0IHRo ZXNlIHBvd2VyIHdlbGxzIG5lZWQgdG8KPiA+ID4gPiBiZQo+ID4gPiA+IMKgIGVuYWJsZWQgYWxy ZWFkeSBkdXJpbmcgZGlzcGxheSBjb3JlIGluaXRpYWxpemF0aW9uIChTZXF1ZW5jZXMKPiA+ID4g PiB0bwo+ID4gPiA+IMKgIEluaXRpYWxpemUgRGlzcGxheSkuCj4gPiA+IEhtbS4gVGhlIHNlcXVl bmNlIGFsc28gc2F5cyAiSWYgYW4gQXV4IGNoYW5uZWwgd2lsbCBub3QgYmUgdXNlZCwgaXQKPiA+ ID4gZG9lcyBub3QgbmVlZCB0byBiZSBwb3dlcmVkIHVwLiIKPiA+IFdlbGwsIEkgY29uc2lkZXIg dGhhdCBoaW50cyBhdCBub3QgdXNpbmcgdGhlIHBvcnQgYXQgYWxsIGZvciBEUCwKPiA+IHNpbmNl Cj4gPiBmb3IgRFAgeW91IHdpbGwgbmVlZCBBVVguCj4gPiAKPiAKPiBJIGFsc28gc2VlIGFuIGlu c3RydWN0aW9uIHRvICJzZXQgUE9SVF9DTF9EVzEyXzxwb3J0IGxldHRlcj4gTGFuZQo+IEVuYWJs ZSBBdXggdG8gMWIiIGZvciBhdXggY2hhbm5lbHMgb24gY29tYm8gcG9ydHMuIEEgcXVpY2sgY2hl Y2sgc2hvd3MKPiB0aGUgcmVnaXN0ZXIgaXMgbm90IGRlZmluZWQgaW4gdGhlIGRyaXZlci4gTXkg Y29uY2VybiBpcyB3ZSBtaWdodCBiZQo+IG1pc3NpbmcgYSBzdGVwIGZvciBjb21ibyBwb3J0cy4K Ckl0IGlzIGFkZGVkIGluIHRoZSBJQ0wgcG93ZXIgd2VsbCBlbmFibGluZyBwYXRjaCAoc2VlIGlu dGVybmFsIGJyYW5jaCksCmFuZCBpcyBzb21ldGhpbmcgSSB0ZXN0ZWQgdGhlIGFib3ZlIHNjZW5h cmlvIHdpdGguCgo+IAo+IAo+ID4gPiAKPiA+ID4gCj4gPiA+ID4gCj4gPiA+ID4gLSBGb3IgUFNS IHdlIG5lZWQgdG8ga2VlcCB0aGUgQVVYIHBvd2VyIHdlbGwgZW5hYmxlZC4KPiA+ID4gPiAtIE9u IElDTCBjb21ibyBQSFkgcG9ydHMgKG5vbi1UQykgdGhlIEFVWCBwb3dlciB3ZWxsIGlzIG5lZWRl ZAo+ID4gPiA+IGZvcgo+ID4gPiA+IMKgIGxpbmsgdHJhaW5pbmcgdG9vOiB3aGlsZSB0aGUgcG9y dCBpcyBlbmFibGVkIHdpdGggYSBEUCBsaW5rCj4gPiA+ID4gdHJhaW5pbmcKPiA+ID4gSSBkb24n dCBzZWUgdGhpcyBpbiB0aGUgc3BlYywgaXMgdGhpcyBzb21ldGhpbmcgeW91IG9ic2VydmVkPwo+ ID4gWWVzLgo+ID4gCj4gPiA+IAo+ID4gPiAKPiA+ID4gPiAKPiA+ID4gPiDCoCB0ZXN0IHBhdHRl cm4gdHJ5aW5nIHRvIHRvZ2dsZSB0aGUgQVVYIHBvd2VyIHdlbGwgd2lsbCB0aW1lIG91dC4KPiA+ ID4gQ2FuIHdlIGVuYWJsZSBBVVggcG93ZXIgd2VsbCBiZWZvcmUgbGluayB0cmFpbmluZyBzdGFy dHMgYW5kCj4gPiA+IGRpc2FibGUKPiA+ID4gYWZ0ZXIgd2UgYXJlIGRvbmUgdHJhaW5pbmc/IElz IHRoYXQgZW5vdWdoPwo+ID4gVGhhdCB3YXMgbXkgZmlyc3QgaWRlYSB0b28sIGJ1dCBnaXZlbiB0 aGUgcmVzdCBvZiB0aGUgcG9pbnRzIEkKPiA+IGNvbnNpZGVyCj4gPiBpdCBhIHNhZmVyIG9wdGlv biB0byBlbmFibGUgaXQgZm9yIG1haW4gbGluayBmdW5jdGlvbmFsaXR5Lgo+ID4gCj4gPiA+IAo+ ID4gPiAKPiA+ID4gPiAKPiA+ID4gPiAtIE9uIElDTCBNRyBQSFkgcG9ydHMgKFRDKSB0aGUgQVVY IHBvd2VyIHdlbGwgaXMgbmVlZGVkIGFsc28gZm9yCj4gPiA+ID4gbWFpbgo+ID4gPiA+IMKgIGxp bmsgZnVuY3Rpb25hbGl0eSAoYm90aCBpbiBEUCBhbmQgSERNSSBtb2RlcykuCj4gPiA+ID4gLSBX aW5kb3dzIGVuYWJsZXMgdGhlc2UgcG93ZXIgd2VsbHMgYm90aCBmb3IgbWFpbiBhbmQgQVVYIGxh bmUKPiA+ID4gPiDCoCBmdW5jdGlvbmFsaXR5Lgo+ID4gPiA+IAo+ID4gPiA+IEJhc2VkIG9uIHRo ZSBhYm92ZSB0YWtlIGFuIEFVWCBwb3dlciByZWZlcmVuY2UgZm9yIG1haW4gbGluawo+ID4gPiA+ IGZ1bmN0aW9uYWxpdHkgdG9vLiBUaGlzIG1ha2VzIGEgZGlmZmVyZW5jZSBvbmx5IG9uIEdFTjEw KyAoR0xLKykKPiA+ID4gPiBwbGF0Zm9ybXMsIHdoZXJlIHdlIGhhdmUgc2VwYXJhdGUgcG9ydCBz cGVjaWZpYyBBVVggcG93ZXIgd2VsbHMuCj4gPiA+ID4gCj4gPiA+ID4gRm9yIFBTUiB3ZSBzdGls bCBuZWVkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gcG9ydCBBIGFuZCB0aGUgb3RoZXIKPiA+ID4g PiBwb3J0cywgc2luY2Ugb24gcG9ydCBBIERDIHN0YXRlcyBtdXN0IHN0YXkgZW5hYmxlZCBmb3Ig bWFpbiBsaW5rCj4gPiA+ID4gZnVuY3Rpb25hbGl0eSwgYnV0IERDIHN0YXRlcyBtdXN0IGJlIGRp c2FibGVkIGZvciBkcml2ZXIKPiA+ID4gPiBpbml0aWF0ZWQKPiA+ID4gPiBBVVggdHJhbnNmZXJz LiBTbyByZS11c2UgdGhlIGNvcnJlc3BvbmRpbmcgaGVscGVyIGZyb20KPiA+ID4gPiBpbnRlbF9w c3IuYy4KPiA+ID4gPiAKPiA+ID4gPiBTaW5jZSB3ZSB0YWtlIG5vdyBhIHJlZmVyZW5jZSBmb3Ig bWFpbiBsaW5rIGZ1bmN0aW9uYWxpdHkgb24gYWxsCj4gPiA+ID4gRFAKPiA+ID4gPiBwb3J0cyB3 ZSBjYW4gZm9yZ28gdGFraW5nIHRoZSBzZXBhcmF0ZSBwb3dlciByZWYgZm9yIFBTUgo+ID4gPiA+ IGZ1bmN0aW9uYWxpdHkuCj4gPiA+ID4gCj4gPiA+ID4gdjI6Cj4gPiA+ID4gLSBNYWtlIHN1cmUg REMgc3RhdGVzIHN0YXkgZW5hYmxlZCB3aGVuIHRha2luZyB0aGUgcmVmIG9uIHBvcnQgQS4KPiA+ ID4gPiDCoCAoVmlsbGUpCj4gPiA+ID4gCj4gPiA+ID4gdjM6IChWaWxsZSkKPiA+ID4gPiAtIEZp eCBjb21tZW50IGFib3V0IGxvZ2ljIGZvciBlbmNvZGVycyB3aXRob3V0IGEgY3J0YyBzdGF0ZSBh bmQKPiA+ID4gPiDCoCBhZGQgRklYTUUgbm90ZSBmb3IgYSBzaW1wbGlmaWNhdGlvbiB0byBhdm9p ZCBjYWxsaW5nCj4gPiA+ID4gZ2V0X3Bvd2VyX2RvbWFpbnMKPiA+ID4gPiDCoCBpbiBzdWNoIGNh c2VzLgo+ID4gPiA+IC0gVXNlIGludGVsX2NydGNfaGFzX2RwX2VuY29kZXIoKSBpbnN0ZWFkCj4g PiA+ID4gIWludGVsX2NydGNfaGFzX3R5cGUoSERNSSkuCj4gPiA+ID4gCj4gPiA+ID4gQ2M6IFZp bGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gPiA+ID4gQ2M6 IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRoaW5ha2FyYW4ucGFuZGl5YW5AaW50ZWwuY29tPgo+ID4g PiA+IENjOiBQYXVsbyBaYW5vbmkgPHBhdWxvLnIuemFub25pQGludGVsLmNvbT4KPiA+ID4gPiBT aWduZWQtb2ZmLWJ5OiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Cj4gPiA+ID4gLS0t Cj4gPiA+ID4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuY8KgwqDCoMKgwqDCoMKg wqB8IDU0Cj4gPiA+ID4gKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCj4gPiA+ID4g wqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmPCoMKgwqDCoHwgMTIgKysrKysr Ky0KPiA+ID4gPiDCoGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5owqDCoMKgwqDCoMKg wqDCoHzCoMKgMyArLQo+ID4gPiA+IMKgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmPC oMKgwqDCoMKgwqDCoMKgfCA0MSAtLS0tLS0tLS0tLS0tLS0tLQo+ID4gPiA+IC0tLS0KPiA+ID4g PiAtLS0tCj4gPiA+ID4gwqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMg fMKgwqAxICsKPiA+ID4gPiDCoDUgZmlsZXMgY2hhbmdlZCwgNjQgaW5zZXJ0aW9ucygrKSwgNDcg ZGVsZXRpb25zKC0pCj4gPiA+ID4gCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RkaS5jCj4gPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k ZGkuYwo+ID4gPiA+IGluZGV4IDA0NGZlMWZiOTg3Mi4uMDMxOTgyNWI3MjViIDEwMDY0NAo+ID4g PiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gPiA+ID4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiA+ID4gPiBAQCAtMTk4MywxNSArMTk4 Myw1NSBAQCBib29sIGludGVsX2RkaV9nZXRfaHdfc3RhdGUoc3RydWN0Cj4gPiA+ID4gaW50ZWxf ZW5jb2RlciAqZW5jb2RlciwKPiA+ID4gPiDCoAlyZXR1cm4gcmV0Owo+ID4gPiA+IMKgfQo+ID4g PiA+IMKgCj4gPiA+ID4gLXN0YXRpYyB1NjQgaW50ZWxfZGRpX2dldF9wb3dlcl9kb21haW5zKHN0 cnVjdCBpbnRlbF9lbmNvZGVyCj4gPiA+ID4gKmVuY29kZXIpCj4gPiA+ID4gK3N0YXRpYyBpbmxp bmUgZW51bSBpbnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbgo+ID4gPiA+ICtpbnRlbF9kZGlfbWFp bl9saW5rX2F1eF9kb21haW4oc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiA+ID4gPiArewo+ ID4gPiA+ICsJLyogQ05MIEhXIHJlcXVpcmVzIGNvcnJlc3BvbmRpbmcgQVVYIElPcyB0byBiZSBw b3dlcmVkCj4gPiA+ID4gdXAKPiA+ID4gPiBmb3IgUFNSIHdpdGgKPiA+ID4gPiArCcKgKiBEQyBz dGF0ZXMgZW5hYmxlZCBhdCB0aGUgc2FtZSB0aW1lLCB3aGlsZSBmb3IgZHJpdmVyCj4gPiA+ID4g aW5pdGlhdGVkIEFVWAo+ID4gPiA+ICsJwqAqIHRyYW5zZmVycyB3ZSBuZWVkIHRoZSBzYW1lIEFV WCBJT3MgdG8gYmUgcG93ZXJlZCBidXQKPiA+ID4gPiB3aXRoCj4gPiA+ID4gREMgc3RhdGVzCj4g PiA+ID4gKwnCoCogZGlzYWJsZWQuIEFjY29yZGluZ2x5IHVzZSB0aGUgQVVYIHBvd2VyIGRvbWFp biBoZXJlCj4gPiA+ID4gd2hpY2gKPiA+ID4gPiBsZWF2ZXMgREMKPiA+ID4gPiArCcKgKiBzdGF0 ZXMgZW5hYmxlZC4KPiA+ID4gPiArCcKgKiBIb3dldmVyLCBmb3Igbm9uLUEgQVVYIHBvcnRzIHRo ZSBjb3JyZXNwb25kaW5nIG5vbi0KPiA+ID4gPiBFRFAKPiA+ID4gPiB0cmFuc2NvZGVycwo+ID4g PiA+ICsJwqAqIHdvdWxkIGhhdmUgYWxyZWFkeSBlbmFibGVkIHBvd2VyIHdlbGwgMiBhbmQgRENf T0ZGLgo+ID4gPiA+IFRoaXMKPiA+ID4gPiBtZWFucyB3ZSBjYW4KPiA+ID4gPiArCcKgKiBhY3F1 aXJlIGEgd2lkZXIgUE9XRVJfRE9NQUlOX0FVWF97QixDLEQsRn0gcmVmZXJlbmNlCj4gPiA+ID4g aW5zdGVhZCBvZiBhCj4gPiA+ID4gKwnCoCogc3BlY2lmaWMgQVVYX0lPIHJlZmVyZW5jZSB3aXRo b3V0IHBvd2VyaW5nIHVwIGFueQo+ID4gPiA+IGV4dHJhCj4gPiA+ID4gd2VsbHMuCj4gPiA+ID4g KwnCoCogTm90ZSB0aGF0IFBTUiBpcyBlbmFibGVkIG9ubHkgb24gUG9ydCBBIGV2ZW4gdGhvdWdo Cj4gPiA+ID4gdGhpcwo+ID4gPiA+IGZ1bmN0aW9uCj4gPiA+ID4gKwnCoCogcmV0dXJucyB0aGUg Y29ycmVjdCBkb21haW4gZm9yIG90aGVyIHBvcnRzIHRvby4KPiA+ID4gPiArCcKgKi8KPiA+ID4g PiArCXJldHVybiBpbnRlbF9kcC0+YXV4X2NoID09IEFVWF9DSF9BID8KPiA+ID4gPiBQT1dFUl9E T01BSU5fQVVYX0lPX0EKPiA+ID4gPiA6Cj4gPiA+ID4gKwkJCQkJwqDCoMKgwqDCoMKgaW50ZWxf ZHAtCj4gPiA+ID4gPiAKPiA+ID4gPiA+IGF1eF9wb3dlcl9kb21haW47Cj4gPiA+ID4gK30KPiA+ ID4gPiArCj4gPiA+ID4gK3N0YXRpYyB1NjQgaW50ZWxfZGRpX2dldF9wb3dlcl9kb21haW5zKHN0 cnVjdCBpbnRlbF9lbmNvZGVyCj4gPiA+ID4gKmVuY29kZXIsCj4gPiA+ID4gKwkJCQnCoMKgwqDC oMKgwqDCoHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlCj4gPiA+ID4gKmNydGNfc3RhdGUpCj4gPiA+ ID4gwqB7Cj4gPiA+ID4gwqAJc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqZGlnX3BvcnQgPQo+ ID4gPiA+IGVuY190b19kaWdfcG9ydCgmZW5jb2Rlci0+YmFzZSk7Cj4gPiA+ID4gwqAJZW51bSBw aXBlIHBpcGU7Cj4gPiA+ID4gKwl1NjQgZG9tYWluczsKPiA+ID4gPiDCoAo+ID4gPiA+IC0JaWYg KGludGVsX2RkaV9nZXRfaHdfc3RhdGUoZW5jb2RlciwgJnBpcGUpKQo+ID4gPiA+IC0JCXJldHVy biBCSVRfVUxMKGRpZ19wb3J0LT5kZGlfaW9fcG93ZXJfZG9tYWluKTsKPiA+ID4gPiArCWlmICgh aW50ZWxfZGRpX2dldF9od19zdGF0ZShlbmNvZGVyLCAmcGlwZSkpCj4gPiA+ID4gKwkJcmV0dXJu IDA7Cj4gPiA+ID4gwqAKPiA+ID4gPiAtCXJldHVybiAwOwo+ID4gPiA+ICsJZG9tYWlucyA9IEJJ VF9VTEwoZGlnX3BvcnQtPmRkaV9pb19wb3dlcl9kb21haW4pOwo+ID4gPiA+ICsJaWYgKCFjcnRj X3N0YXRlKQo+ID4gPiA+ICsJCXJldHVybiBkb21haW5zOwo+ID4gPiA+ICsKPiA+ID4gPiArCS8q Cj4gPiA+ID4gKwnCoCogVE9ETzogQWRkIHN1cHBvcnQgZm9yIE1TVCBlbmNvZGVycy4gQXRtLCB0 aGUKPiA+ID4gPiBmb2xsb3dpbmcKPiA+ID4gPiBzaG91bGQgbmV2ZXIKPiA+ID4gPiArCcKgKiBo YXBwZW4gc2luY2UgdGhpcyBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCBvbmx5IGZvcgo+ID4gPiA+ IHRoZQo+ID4gPiA+IHByaW1hcnkKPiA+ID4gPiArCcKgKiBlbmNvZGVyIHdoaWNoIGRvZXNuJ3Qg aGF2ZSBpdHMgb3duIHBpcGUvY3J0Y19zdGF0ZS4KPiA+ID4gPiArCcKgKi8KPiA+ID4gPiArCWlm IChXQVJOX09OKGludGVsX2NydGNfaGFzX3R5cGUoY3J0Y19zdGF0ZSwKPiA+ID4gPiBJTlRFTF9P VVRQVVRfRFBfTVNUKSkpCj4gPiA+ID4gKwkJcmV0dXJuIGRvbWFpbnM7Cj4gPiA+ID4gKwo+ID4g PiA+ICsJLyogQVVYIHBvd2VyIGlzIG9ubHkgbmVlZGVkIGZvciAoZSlEUCBtb2RlLCBub3QgZm9y Cj4gPiA+ID4gSERNSS4gKi8KPiA+ID4gPiArCWlmIChpbnRlbF9jcnRjX2hhc19kcF9lbmNvZGVy KGNydGNfc3RhdGUpKSB7Cj4gPiA+ID4gKwkJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9ICZk aWdfcG9ydC0+ZHA7Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCWRvbWFpbnMgfD0KPiA+ID4gPiBCSVRf VUxMKGludGVsX2RkaV9tYWluX2xpbmtfYXV4X2RvbWFpbihpbnRlbF9kcCkpOwo+ID4gPiA+ICsJ fQo+ID4gPiA+ICsKPiA+ID4gPiArCXJldHVybiBkb21haW5zOwo+ID4gPiA+IMKgfQo+ID4gPiA+ IMKgCj4gPiA+ID4gwqB2b2lkIGludGVsX2RkaV9lbmFibGVfcGlwZV9jbG9jayhjb25zdCBzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZQo+ID4gPiA+ICpjcnRjX3N0YXRlKQo+ID4gPiA+IEBAIC0yNjMx LDYgKzI2NzEsOSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kZGlfcHJlX2VuYWJsZV9kcChzdHJ1Y3QK PiA+ID4gPiBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4gPiA+IMKgCj4gPiA+ID4gwqAJV0FS Tl9PTihpc19tc3QgJiYgKHBvcnQgPT0gUE9SVF9BIHx8IHBvcnQgPT0gUE9SVF9FKSk7Cj4gPiA+ ID4gwqAKPiA+ID4gPiArCWludGVsX2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2LAo+ID4gPiA+ ICsJCQkJaW50ZWxfZGRpX21haW5fbGlua19hdXhfZG9tYWluKGkKPiA+ID4gPiBudGVsCj4gPiA+ ID4gX2RwKSk7Cj4gPiA+ID4gKwo+ID4gPiA+IMKgCWludGVsX2RwX3NldF9saW5rX3BhcmFtcyhp bnRlbF9kcCwgY3J0Y19zdGF0ZS0KPiA+ID4gPiA+cG9ydF9jbG9jaywKPiA+ID4gPiDCoAkJCQnC oGNydGNfc3RhdGUtPmxhbmVfY291bnQsCj4gPiA+ID4gaXNfbXN0KTsKPiA+ID4gPiDCoAo+ID4g PiA+IEBAIC0yNzc1LDYgKzI4MTgsOSBAQCBzdGF0aWMgdm9pZAo+ID4gPiA+IGludGVsX2RkaV9w b3N0X2Rpc2FibGVfZHAoc3RydWN0Cj4gPiA+ID4gaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiA+ ID4gPiDCoAlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwgZGlnX3BvcnQtCj4gPiA+ ID4gPiAKPiA+ID4gPiA+IGRkaV9pb19wb3dlcl9kb21haW4pOwo+ID4gPiA+IMKgCj4gPiA+ID4g wqAJaW50ZWxfZGRpX2Nsa19kaXNhYmxlKGVuY29kZXIpOwo+ID4gPiA+ICsKPiA+ID4gPiArCWlu dGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LAo+ID4gPiA+ICsJCQkJaW50ZWxfZGRpX21h aW5fbGlua19hdXhfZG9tYWluKGkKPiA+ID4gPiBudGVsCj4gPiA+ID4gX2RwKSk7Cj4gPiA+ID4g wqB9Cj4gPiA+ID4gwqAKPiA+ID4gPiDCoHN0YXRpYyB2b2lkIGludGVsX2RkaV9wb3N0X2Rpc2Fi bGVfaGRtaShzdHJ1Y3QgaW50ZWxfZW5jb2Rlcgo+ID4gPiA+ICplbmNvZGVyLAo+ID4gPiA+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiA+ID4gPiBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID4gPiA+IGluZGV4IDJjOGZl ZjNlZGU1NC4uY2U2MTVmODliNDNhIDEwMDY0NAo+ID4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYwo+ID4gPiA+IEBAIC0xNTY3NiwxMSArMTU2NzYsMjEgQEAgZ2V0X2Vu Y29kZXJfcG93ZXJfZG9tYWlucyhzdHJ1Y3QKPiA+ID4gPiBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdikKPiA+ID4gPiDCoAlmb3JfZWFjaF9pbnRlbF9lbmNvZGVyKCZkZXZfcHJpdi0+ZHJtLCBl bmNvZGVyKSB7Cj4gPiA+ID4gwqAJCXU2NCBnZXRfZG9tYWluczsKPiA+ID4gPiDCoAkJZW51bSBp bnRlbF9kaXNwbGF5X3Bvd2VyX2RvbWFpbiBkb21haW47Cj4gPiA+ID4gKwkJc3RydWN0IGludGVs X2NydGNfc3RhdGUgKmNydGNfc3RhdGU7Cj4gPiA+ID4gwqAKPiA+ID4gPiDCoAkJaWYgKCFlbmNv ZGVyLT5nZXRfcG93ZXJfZG9tYWlucykKPiA+ID4gPiDCoAkJCWNvbnRpbnVlOwo+ID4gPiA+IMKg Cj4gPiA+ID4gLQkJZ2V0X2RvbWFpbnMgPSBlbmNvZGVyLQo+ID4gPiA+ID5nZXRfcG93ZXJfZG9t YWlucyhlbmNvZGVyKTsKPiA+ID4gPiArCQkvKgo+ID4gPiA+ICsJCcKgKiBGb3IgTVNUIGFuZCBp bmFjdGl2ZSBlbmNvZGVycyB3ZSBkb24ndCBoYXZlIGEKPiA+ID4gPiBjcnRjIHN0YXRlLgo+ID4g PiA+ICsJCcKgKiBGSVhNRTogbm8gbmVlZCB0byBjYWxsIGdldF9wb3dlcl9kb21haW5zIGluCj4g PiA+ID4gc3VjaAo+ID4gPiA+IGNhc2VzLCBpdAo+ID4gPiA+ICsJCcKgKiB3aWxsIGFsd2F5cyBy ZXR1cm4gMC4KPiA+ID4gPiArCQnCoCovCj4gPiA+ID4gKwkJY3J0Y19zdGF0ZSA9IGVuY29kZXIt PmJhc2UuY3J0YyA/Cj4gPiA+ID4gKwkJCcKgwqDCoMKgwqB0b19pbnRlbF9jcnRjX3N0YXRlKGVu Y29kZXItCj4gPiA+ID4gPmJhc2UuY3J0Yy0KPiA+ID4gPiA+IAo+ID4gPiA+ID4gc3RhdGUpIDoK PiA+ID4gPiArCQkJwqDCoMKgwqDCoE5VTEw7Cj4gPiA+ID4gKwo+ID4gPiA+ICsJCWdldF9kb21h aW5zID0gZW5jb2Rlci0KPiA+ID4gPiA+Z2V0X3Bvd2VyX2RvbWFpbnMoZW5jb2RlciwKPiA+ID4g PiBjcnRjX3N0YXRlKTsKPiA+ID4gPiDCoAkJZm9yX2VhY2hfcG93ZXJfZG9tYWluKGRvbWFpbiwg Z2V0X2RvbWFpbnMpCj4gPiA+ID4gwqAJCQlpbnRlbF9kaXNwbGF5X3Bvd2VyX2dldChkZXZfcHJp diwKPiA+ID4gPiBkb21haW4pOwo+ID4gPiA+IMKgCX0KPiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rydi5oCj4gPiA+ID4gaW5kZXggMGMzYWMwZWFmZGUwLi43MTc0NDI5ZDkzMGEg MTAwNjQ0Cj4gPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiA+ ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4gPiA+IEBAIC0y NTQsNyArMjU0LDggQEAgc3RydWN0IGludGVsX2VuY29kZXIgewo+ID4gPiA+IMKgCQkJwqDCoMKg c3RydWN0IGludGVsX2NydGNfc3RhdGUKPiA+ID4gPiAqcGlwZV9jb25maWcpOwo+ID4gPiA+IMKg CS8qIFJldHVybnMgYSBtYXNrIG9mIHBvd2VyIGRvbWFpbnMgdGhhdCBuZWVkIHRvIGJlCj4gPiA+ ID4gcmVmZXJlbmNlZCBhcyBwYXJ0Cj4gPiA+ID4gwqAJwqAqIG9mIHRoZSBoYXJkd2FyZSBzdGF0 ZSByZWFkb3V0IGNvZGUuICovCj4gPiA+ID4gLQl1NjQgKCpnZXRfcG93ZXJfZG9tYWlucykoc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpOwo+ID4gPiA+ICsJdTY0ICgqZ2V0X3Bvd2VyX2Rv bWFpbnMpKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4gPiA+ICsJCQkJwqBzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZQo+ID4gPiA+ICpjcnRjX3N0YXRlKTsKPiA+ID4gPiDCoAkvKgo+ ID4gPiA+IMKgCcKgKiBDYWxsZWQgZHVyaW5nIHN5c3RlbSBzdXNwZW5kIGFmdGVyIGFsbCBwZW5k aW5nCj4gPiA+ID4gcmVxdWVzdHMKPiA+ID4gPiBmb3IgdGhlCj4gPiA+ID4gwqAJwqAqIGVuY29k ZXIgYXJlIGZsdXNoZWQgKGZvciBleGFtcGxlIGZvciBEUCBBVVgKPiA+ID4gPiB0cmFuc2FjdGlv bnMpCj4gPiA+ID4gYW5kCj4gPiA+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3Bzci5jCj4gPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wc3IuYwo+ ID4gPiA+IGluZGV4IGQ0Y2QxOWZlYTE0OC4uZWVjZGQ4YjViNWUwIDEwMDY0NAo+ID4gPiA+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Bzci5jCj4gPiA+ID4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMKPiA+ID4gPiBAQCAtNTYsNDMgKzU2LDYgQEAKPiA+ ID4gPiDCoCNpbmNsdWRlICJpbnRlbF9kcnYuaCIKPiA+ID4gPiDCoCNpbmNsdWRlICJpOTE1X2Ry di5oIgo+ID4gPiA+IMKgCj4gPiA+ID4gLXN0YXRpYyBpbmxpbmUgZW51bSBpbnRlbF9kaXNwbGF5 X3Bvd2VyX2RvbWFpbgo+ID4gPiA+IC1wc3JfYXV4X2RvbWFpbihzdHJ1Y3QgaW50ZWxfZHAgKmlu dGVsX2RwKQo+ID4gPiA+IC17Cj4gPiA+ID4gLQkvKiBDTkwgSFcgcmVxdWlyZXMgY29ycmVzcG9u ZGluZyBBVVggSU9zIHRvIGJlIHBvd2VyZWQKPiA+ID4gPiB1cAo+ID4gPiA+IGZvciBQU1IuCj4g PiA+ID4gLQnCoCogSG93ZXZlciwgZm9yIG5vbi1BIEFVWCBwb3J0cyB0aGUgY29ycmVzcG9uZGlu ZyBub24tCj4gPiA+ID4gRURQCj4gPiA+ID4gdHJhbnNjb2RlcnMKPiA+ID4gPiAtCcKgKiB3b3Vs ZCBoYXZlIGFscmVhZHkgZW5hYmxlZCBwb3dlciB3ZWxsIDIgYW5kIERDX09GRi4KPiA+ID4gPiBU aGlzCj4gPiA+ID4gbWVhbnMgd2UgY2FuCj4gPiA+ID4gLQnCoCogYWNxdWlyZSBhIHdpZGVyIFBP V0VSX0RPTUFJTl9BVVhfe0IsQyxELEZ9IHJlZmVyZW5jZQo+ID4gPiA+IGluc3RlYWQgb2YgYQo+ ID4gPiA+IC0JwqAqIHNwZWNpZmljIEFVWF9JTyByZWZlcmVuY2Ugd2l0aG91dCBwb3dlcmluZyB1 cCBhbnkKPiA+ID4gPiBleHRyYQo+ID4gPiA+IHdlbGxzLgo+ID4gPiA+IC0JwqAqIE5vdGUgdGhh dCBQU1IgaXMgZW5hYmxlZCBvbmx5IG9uIFBvcnQgQSBldmVuIHRob3VnaAo+ID4gPiA+IHRoaXMK PiA+ID4gPiBmdW5jdGlvbgo+ID4gPiA+IC0JwqAqIHJldHVybnMgdGhlIGNvcnJlY3QgZG9tYWlu IGZvciBvdGhlciBwb3J0cyB0b28uCj4gPiA+ID4gLQnCoCovCj4gPiA+ID4gLQlyZXR1cm4gaW50 ZWxfZHAtPmF1eF9jaCA9PSBBVVhfQ0hfQSA/Cj4gPiA+ID4gUE9XRVJfRE9NQUlOX0FVWF9JT19B Cj4gPiA+ID4gOgo+ID4gPiA+IC0JCQkJCcKgwqDCoMKgwqDCoGludGVsX2RwLQo+ID4gPiA+ID4g Cj4gPiA+ID4gPiBhdXhfcG93ZXJfZG9tYWluOwo+ID4gPiA+IC19Cj4gPiA+ID4gLQo+ID4gPiA+ IC1zdGF0aWMgdm9pZCBwc3JfYXV4X2lvX3Bvd2VyX2dldChzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwKQo+ID4gPiA+IC17Cj4gPiA+ID4gLQlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRl bF9kaWdfcG9ydCA9Cj4gPiA+ID4gZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApOwo+ID4gPiA+IC0J c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0KPiA+ID4gPiB0b19pOTE1KGludGVs X2RpZ19wb3J0LQo+ID4gPiA+ID4gCj4gPiA+ID4gPiBiYXNlLmJhc2UuZGV2KTsKPiA+ID4gPiAt Cj4gPiA+ID4gLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA8IDEwKQo+ID4gPiA+IC0JCXJldHVy bjsKPiA+ID4gPiAtCj4gPiA+ID4gLQlpbnRlbF9kaXNwbGF5X3Bvd2VyX2dldChkZXZfcHJpdiwK PiA+ID4gPiBwc3JfYXV4X2RvbWFpbihpbnRlbF9kcCkpOwo+ID4gPiA+IC19Cj4gPiA+ID4gLQo+ ID4gPiA+IC1zdGF0aWMgdm9pZCBwc3JfYXV4X2lvX3Bvd2VyX3B1dChzdHJ1Y3QgaW50ZWxfZHAg KmludGVsX2RwKQo+ID4gPiA+IC17Cj4gPiA+ID4gLQlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 ICppbnRlbF9kaWdfcG9ydCA9Cj4gPiA+ID4gZHBfdG9fZGlnX3BvcnQoaW50ZWxfZHApOwo+ID4g PiA+IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0KPiA+ID4gPiB0b19pOTE1 KGludGVsX2RpZ19wb3J0LQo+ID4gPiA+ID4gCj4gPiA+ID4gPiBiYXNlLmJhc2UuZGV2KTsKPiA+ ID4gPiAtCj4gPiA+ID4gLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA8IDEwKQo+ID4gPiA+IC0J CXJldHVybjsKPiA+ID4gPiAtCj4gPiA+ID4gLQlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZf cHJpdiwKPiA+ID4gPiBwc3JfYXV4X2RvbWFpbihpbnRlbF9kcCkpOwo+ID4gPiA+IC19Cj4gPiA+ ID4gLQo+ID4gPiA+IMKgdm9pZCBpbnRlbF9wc3JfaXJxX2NvbnRyb2woc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAo+ID4gPiA+IGJvb2wKPiA+ID4gPiBkZWJ1ZykKPiA+ID4gPiDC oHsKPiA+ID4gPiDCoAl1MzIgZGVidWdfbWFzaywgbWFzazsKPiA+ID4gPiBAQCAtNTk1LDggKzU1 OCw2IEBAIHN0YXRpYyB2b2lkIGhzd19wc3JfZW5hYmxlX3NvdXJjZShzdHJ1Y3QKPiA+ID4gPiBp bnRlbF9kcAo+ID4gPiA+ICppbnRlbF9kcCwKPiA+ID4gPiDCoAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4gPiA+ID4gwqAJZW51bSB0cmFuc2NvZGVy IGNwdV90cmFuc2NvZGVyID0gY3J0Y19zdGF0ZS0KPiA+ID4gPiA+Y3B1X3RyYW5zY29kZXI7Cj4g PiA+ID4gwqAKPiA+ID4gPiAtCXBzcl9hdXhfaW9fcG93ZXJfZ2V0KGludGVsX2RwKTsKPiA+ID4g PiAtCj4gPiA+ID4gwqAJLyogT25seSBIU1cgYW5kIEJEVyBoYXZlIFBTUiBBVVggcmVnaXN0ZXJz IHRoYXQgbmVlZCB0bwo+ID4gPiA+IGJlCj4gPiA+ID4gc2V0dXAuIFNLTCsKPiA+ID4gPiDCoAnC oCogdXNlIGhhcmRjb2RlZCB2YWx1ZXMgUFNSIEFVWCB0cmFuc2FjdGlvbnMKPiA+ID4gPiDCoAnC oCovCj4gPiA+ID4gQEAgLTcxNyw4ICs2NzgsNiBAQCBzdGF0aWMgdm9pZCBoc3dfcHNyX2Rpc2Fi bGUoc3RydWN0IGludGVsX2RwCj4gPiA+ID4gKmludGVsX2RwLAo+ID4gPiA+IMKgCQllbHNlCj4g PiA+ID4gwqAJCQlXQVJOX09OKEk5MTVfUkVBRChFRFBfUFNSX0NUTCkgJgo+ID4gPiA+IEVEUF9Q U1JfRU5BQkxFKTsKPiA+ID4gPiDCoAl9Cj4gPiA+ID4gLQo+ID4gPiA+IC0JcHNyX2F1eF9pb19w b3dlcl9wdXQoaW50ZWxfZHApOwo+ID4gPiA+IMKgfQo+ID4gPiA+IMKgCj4gPiA+ID4gwqAvKioK PiA+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVudGltZV9w bS5jCj4gPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMKPiA+ ID4gPiBpbmRleCBkZTNhODEwMzRmNzcuLjI5Njk3ODcyMDFlZiAxMDA2NDQKPiA+ID4gPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMKPiA+ID4gPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMKPiA+ID4gPiBAQCAtMTgyNCw2 ICsxODI0LDcgQEAgdm9pZCBpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChzdHJ1Y3QKPiA+ID4gPiBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiA+ID4gPiDCoAlCSVRfVUxMKFBPV0VSX0RPTUFJ Tl9JTklUKSkKPiA+ID4gPiDCoCNkZWZpbmUgR0xLX0RJU1BMQVlfQVVYX0FfUE9XRVJfRE9NQUlO UyAoCQlcCj4gPiA+ID4gwqAJQklUX1VMTChQT1dFUl9ET01BSU5fQVVYX0EpIHwJCVwKPiA+ID4g PiArCUJJVF9VTEwoUE9XRVJfRE9NQUlOX0FVWF9JT19BKSB8CQlcCj4gPiA+ID4gwqAJQklUX1VM TChQT1dFUl9ET01BSU5fSU5JVCkpCj4gPiA+ID4gwqAjZGVmaW5lIEdMS19ESVNQTEFZX0FVWF9C X1BPV0VSX0RPTUFJTlMgKAkJXAo+ID4gPiA+IMKgCUJJVF9VTEwoUE9XRVJfRE9NQUlOX0FVWF9C KSB8CQlcCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=