From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: Re: [PATCH 04/24] drm/i915/icl: Support for TC North Display interrupts Date: Fri, 15 Jun 2018 16:47:16 -0700 Message-ID: <1529106436.2456.7.camel@intel.com> References: <20180522002558.29262-1-paulo.r.zanoni@intel.com> <20180522002558.29262-5-paulo.r.zanoni@intel.com> <20180613222044.GA17137@ldmartin-desk.amr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 00A096EC4C for ; Fri, 15 Jun 2018 23:47:28 +0000 (UTC) In-Reply-To: <20180613222044.GA17137@ldmartin-desk.amr.corp.intel.com> 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 Cc: Jani Nikula , intel-gfx@lists.freedesktop.org, Dhinakaran Pandiyan List-Id: intel-gfx@lists.freedesktop.org RW0gUXVhLCAyMDE4LTA2LTEzIMOgcyAxNToyMCAtMDcwMCwgTHVjYXMgRGUgTWFyY2hpIGVzY3Jl dmV1Ogo+ICtDaHJpcwo+IAo+IE9uIE1vbiwgTWF5IDIxLCAyMDE4IGF0IDA1OjI1OjM4UE0gLTA3 MDAsIFBhdWxvIFphbm9uaSB3cm90ZToKPiA+IEZyb206IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRo aW5ha2FyYW4ucGFuZGl5YW5AaW50ZWwuY29tPgo+ID4gCj4gPiBUaGUgaG90cGx1ZyBpbnRlcnJ1 cHRzIGZvciB0aGUgcG9ydHMgY2FuIGJlIHJvdXRlZCB0byBlaXRoZXIgTm9ydGgKPiA+IERpc3Bs YXkgb3IgU291dGggRGlzcGxheSBkZXBlbmRpbmcgb24gdGhlIG91dHB1dCBtb2RlLiBEUCBBbHRl cm5hdGUKPiA+IG9yCj4gPiBEUCBvdmVyIFRCVCBvdXRwdXRzIHdpbGwgaGF2ZSBob3RwbHVnIGlu dGVycnVwdHMgcm91dGVkIHRvIHRoZQo+ID4gTm9ydGgKPiA+IERpc3BsYXkgd2hpbGUgaW50ZXJy dXB0cyBmb3IgbGVnYWN5IG1vZGVzIHdpbGwgYmUgcm91dGVkIHRvIHRoZQo+ID4gU291dGgKPiA+ IERpc3BsYXkgaW4gUENILiBUaGlzIHBhdGNoIGFkZHMgaG90cGx1ZyBpbnRlcnJ1cHQgaGFuZGxp bmcgc3VwcG9ydAo+ID4gZm9yCj4gPiBEUCBBbHRlcm5hdGUgbW9kZS4KPiA+IAo+ID4gQ2M6IEph bmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+Cj4gPiBDYzogQW51c2hhIFNyaXZhdHNh IDxhbnVzaGEuc3JpdmF0c2FAaW50ZWwuY29tPgo+ID4gU2lnbmVkLW9mZi1ieTogRGhpbmFrYXJh biBQYW5kaXlhbiA8ZGhpbmFrYXJhbi5wYW5kaXlhbkBpbnRlbC5jb20+Cj4gPiBbUGF1bG86IGNv ZGluZyBzdHlsZSBjaGFuZ2VzXQo+ID4gU2lnbmVkLW9mZi1ieTogUGF1bG8gWmFub25pIDxwYXVs by5yLnphbm9uaUBpbnRlbC5jb20+Cj4gPiAtLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2lycS5jIHwgOTUKPiA+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCB8IDIwICsrKysrKysrKwo+ ID4gIDIgZmlsZXMgY2hhbmdlZCwgMTEyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCj4g PiAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gPiBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKPiA+IGluZGV4IGRkZTkzOGJiZmIwYS4u OWJjZWM1ZmRiOWQwIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9p cnEuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYwo+ID4gQEAgLTEx NSw2ICsxMTUsMTMgQEAgc3RhdGljIGNvbnN0IHUzMiBocGRfYnh0W0hQRF9OVU1fUElOU10gPSB7 Cj4gPiAgCVtIUERfUE9SVF9DXSA9IEJYVF9ERV9QT1JUX0hQX0RESUMKPiA+ICB9Owo+ID4gIAo+ ID4gK3N0YXRpYyBjb25zdCB1MzIgaHBkX3RjX2dlbjExW0hQRF9OVU1fUElOU10gPSB7Cj4gPiAr CVtIUERfUE9SVF9DXSA9IEdFTjExX1RDMV9IT1RQTFVHLAo+ID4gKwlbSFBEX1BPUlRfRF0gPSBH RU4xMV9UQzJfSE9UUExVRywKPiA+ICsJW0hQRF9QT1JUX0VdID0gR0VOMTFfVEMzX0hPVFBMVUcs Cj4gPiArCVtIUERfUE9SVF9GXSA9IEdFTjExX1RDNF9IT1RQTFVHCj4gPiArfTsKPiA+ICsKPiA+ ICAvKiBJSVIgY2FuIHRoZW9yZXRpY2FsbHkgcXVldWUgdXAgdHdvIGV2ZW50cy4gQmUgcGFyYW5v aWQuICovCj4gPiAgI2RlZmluZSBHRU44X0lSUV9SRVNFVF9ORFgodHlwZSwgd2hpY2gpIGRvIHsg XAo+ID4gIAlJOTE1X1dSSVRFKEdFTjhfIyN0eXBlIyNfSU1SKHdoaWNoKSwgMHhmZmZmZmZmZik7 IFwKPiA+IEBAIC0xNTQ5LDYgKzE1NTYsMjIgQEAgc3RhdGljIHZvaWQgZ2VuOF9ndF9pcnFfaGFu ZGxlcihzdHJ1Y3QKPiA+IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCj4gPiAgCX0KPiA+ICB9Cj4g PiAgCj4gPiArc3RhdGljIGJvb2wgZ2VuMTFfcG9ydF9ob3RwbHVnX2xvbmdfZGV0ZWN0KGVudW0g cG9ydCBwb3J0LCB1MzIKPiA+IHZhbCkKPiA+ICt7Cj4gPiArCXN3aXRjaCAocG9ydCkgewo+ID4g KwljYXNlIFBPUlRfQzoKPiA+ICsJCXJldHVybiB2YWwgJgo+ID4gR0VOMTFfSE9UUExVR19DVExf TE9OR19ERVRFQ1QoUE9SVF9UQzEpOwo+ID4gKwljYXNlIFBPUlRfRDoKPiA+ICsJCXJldHVybiB2 YWwgJgo+ID4gR0VOMTFfSE9UUExVR19DVExfTE9OR19ERVRFQ1QoUE9SVF9UQzIpOwo+ID4gKwlj YXNlIFBPUlRfRToKPiA+ICsJCXJldHVybiB2YWwgJgo+ID4gR0VOMTFfSE9UUExVR19DVExfTE9O R19ERVRFQ1QoUE9SVF9UQzMpOwo+ID4gKwljYXNlIFBPUlRfRjoKPiA+ICsJCXJldHVybiB2YWwg Jgo+ID4gR0VOMTFfSE9UUExVR19DVExfTE9OR19ERVRFQ1QoUE9SVF9UQzQpOwo+ID4gKwlkZWZh dWx0Ogo+ID4gKwkJcmV0dXJuIGZhbHNlOwo+ID4gKwl9Cj4gPiArfQo+ID4gKwo+ID4gIHN0YXRp YyBib29sIGJ4dF9wb3J0X2hvdHBsdWdfbG9uZ19kZXRlY3QoZW51bSBwb3J0IHBvcnQsIHUzMiB2 YWwpCj4gPiAgewo+ID4gIAlzd2l0Y2ggKHBvcnQpIHsKPiA+IEBAIC0yNTkwLDYgKzI2MTMsMjUg QEAgc3RhdGljIHZvaWQgYnh0X2hwZF9pcnFfaGFuZGxlcihzdHJ1Y3QKPiA+IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAo+ID4gIAlpbnRlbF9ocGRfaXJxX2hhbmRsZXIoZGV2X3ByaXYsIHBp bl9tYXNrLCBsb25nX21hc2spOwo+ID4gIH0KPiA+ICAKPiA+ICtzdGF0aWMgdm9pZCBnZW4xMV9o cGRfaXJxX2hhbmRsZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUKPiA+ICpkZXZfcHJpdiwgdTMy IGlpcikKPiA+ICt7Cj4gPiArCXUzMiBwaW5fbWFzayA9IDAsIGxvbmdfbWFzayA9IDA7Cj4gPiAr CXUzMiB0cmlnZ2VyX3RjLCBkaWdfaG90cGx1Z19yZWc7Cj4gPiArCj4gPiArCXRyaWdnZXJfdGMg PSBpaXIgJiBHRU4xMV9ERV9UQ19IT1RQTFVHX01BU0s7Cj4gPiArCWlmICh0cmlnZ2VyX3RjKSB7 Cj4gPiArCQlkaWdfaG90cGx1Z19yZWcgPSBJOTE1X1JFQUQoR0VOMTFfVENfSE9UUExVR19DVEwp Owo+ID4gKwkJSTkxNV9XUklURShHRU4xMV9UQ19IT1RQTFVHX0NUTCwgZGlnX2hvdHBsdWdfcmVn KTsKPiA+ICsKPiA+ICsJCWludGVsX2dldF9ocGRfcGlucyhkZXZfcHJpdiwgJnBpbl9tYXNrLAo+ ID4gJmxvbmdfbWFzaywgdHJpZ2dlcl90YywKPiA+ICsJCQkJICAgZGlnX2hvdHBsdWdfcmVnLCBo cGRfdGNfZ2VuMTEsCj4gPiArCQkJCSAgIGdlbjExX3BvcnRfaG90cGx1Z19sb25nX2RldGVjdCkK PiA+IDsKPiA+ICsJCWludGVsX2hwZF9pcnFfaGFuZGxlcihkZXZfcHJpdiwgcGluX21hc2ssCj4g PiBsb25nX21hc2spOwo+ID4gKwl9IGVsc2Ugewo+ID4gKwkJRFJNX0VSUk9SKCJVbmV4cGVjdGVk IERFIEhQRCBpbnRlcnJ1cHQgMHglMDh4XG4iLAo+ID4gaWlyKTsKPiA+ICsJfQo+ID4gK30KPiA+ ICsKPiA+ICBzdGF0aWMgaXJxcmV0dXJuX3QKPiA+ICBnZW44X2RlX2lycV9oYW5kbGVyKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTMyCj4gPiBtYXN0ZXJfY3RsKQo+ID4gIHsK PiA+IEBAIC0yNjI2LDYgKzI2NjgsMTcgQEAgZ2VuOF9kZV9pcnFfaGFuZGxlcihzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZQo+ID4gKmRldl9wcml2LCB1MzIgbWFzdGVyX2N0bCkKPiA+ICAJCQlEUk1f RVJST1IoIlRoZSBtYXN0ZXIgY29udHJvbCBpbnRlcnJ1cHQKPiA+IGxpZWQgKERFIE1JU0MpIVxu Iik7Cj4gPiAgCX0KPiA+ICAKPiA+ICsJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTEgJiYg KG1hc3Rlcl9jdGwgJgo+ID4gR0VOMTFfREVfSFBEX0lSUSkpIHsKPiA+ICsJCWlpciA9IEk5MTVf UkVBRChHRU4xMV9ERV9IUERfSUlSKTsKPiA+ICsJCWlmIChpaXIpIHsKPiA+ICsJCQlJOTE1X1dS SVRFKEdFTjExX0RFX0hQRF9JSVIsIGlpcik7Cj4gPiArCQkJcmV0ID0gSVJRX0hBTkRMRUQ7Cj4g PiArCQkJZ2VuMTFfaHBkX2lycV9oYW5kbGVyKGRldl9wcml2LCBpaXIpOwo+IAo+IEkgdGhpbmsg dGhlIHNhbWUgcXVlc3Rpb24gYXMgZm9yIHRoZSAybmQgcGF0Y2ggcmVtYWlucyBoZXJlLgo+IFNo b3VsZG4ndAo+IHdlIGJlaW5nIHJlLWVuYWJsaW5nIHRoZSBtYXN0ZXIgaW50ZXJydXB0IGJlZm9y ZSBkb2luZyBhbnkgZnVydGhlcgo+IHByb2Nlc3Npbmc/Cj4gCj4gSG93ZXZlciBhbGwgZ2VucyBh cmUgbGlrZSB0aGF0LiBBIGNoYW5nZSBoZXJlIHNlZW1zIHRvIGJlbG9uZyBvbiBhCj4gZGlmZmVy ZW50IHBhdGNoLi4uIGl0J3MgYWxzbyB0aGUgY2FzZSBmb3IgcHJldmlvdXMgZ2Vucy4gQ2hyaXMs IGlzCj4gdGhlcmUKPiBhbnl0aGluZyBkaWZmZXJlbnQgeW91IGFyZSBzZWVpbmcgb24gZ2VuMTE/ CgpJJ2Qgc2F5IHRoaXMgdHlwZSBvZiByZXF1ZXN0IHNob3VsZCBkZWZpbml0ZWx5IGJlIG9uIGEg c2VwYXJhdGUgcGF0Y2guCgpXZSBoYXZlIHNvbWUgbWFqb3IgaW5jb25zaXN0ZW5jaWVzIGluIHRo ZSB3YXkgd2UgaGFuZGxlIGludGVycnVwdHM6CnNvbWUgcGxhY2VzIHVzZSByYXcgd3JpdGUvcmVh ZCwgc29tZSBwbGFjZXMgZG9uJ3QsIHNvbWUgcGxhY2VzIGRvIHVzZQp0aGUgbGlrZWx5L3VubGlr ZWx5IGhlbHBlcnMsIHNvbWUgcGxhY2VzIGRvbid0LCBzb21lIHBsYWNlcyBkbyB0aGUgcG9zdApw cm9jZXNzaW5nLCBzb21lIHBsYWNlcyBkb24ndC4gSWYgd2Ugd2FudCBwZW9wbGUgdG8gdXNlIGEg c3BlY2lmaWMKc3R5bGUgd2Ugc2hvdWxkIHByb2JhYmx5IGNvbnZlcnQgdGhlIGN1cnJlbnQgY29k ZSB0byB1c2UgaXQgZmlyc3QuCgpSZXZpZXdlZC1ieTogUGF1bG8gWmFub25pIDxwYXVsby5yLnph bm9uaUBpbnRlbC5jb20+Cgo+IAo+IEx1Y2FzIERlIE1hcmNoaQo+IAo+IAo+ID4gKwkJfSBlbHNl IHsKPiA+ICsJCQlEUk1fRVJST1IoIlRoZSBtYXN0ZXIgY29udHJvbCBpbnRlcnJ1cHQKPiA+IGxp ZWQsIChERSBIUEQpIVxuIik7Cj4gPiArCQl9Cj4gPiArCX0KPiA+ICsKPiA+ICAJaWYgKG1hc3Rl cl9jdGwgJiBHRU44X0RFX1BPUlRfSVJRKSB7Cj4gPiAgCQlpaXIgPSBJOTE1X1JFQUQoR0VOOF9E RV9QT1JUX0lJUik7Cj4gPiAgCQlpZiAoaWlyKSB7Cj4gPiBAQCAtMzQ5Miw2ICszNTQ1LDcgQEAg c3RhdGljIHZvaWQgZ2VuMTFfaXJxX3Jlc2V0KHN0cnVjdCBkcm1fZGV2aWNlCj4gPiAqZGV2KQo+ ID4gIAo+ID4gIAlHRU4zX0lSUV9SRVNFVChHRU44X0RFX1BPUlRfKTsKPiA+ICAJR0VOM19JUlFf UkVTRVQoR0VOOF9ERV9NSVNDXyk7Cj4gPiArCUdFTjNfSVJRX1JFU0VUKEdFTjExX0RFX0hQRF8p Owo+ID4gIAlHRU4zX0lSUV9SRVNFVChHRU4xMV9HVV9NSVNDXyk7Cj4gPiAgCUdFTjNfSVJRX1JF U0VUKEdFTjhfUENVXyk7Cj4gPiAgfQo+ID4gQEAgLTM2MTAsNiArMzY2NCwzNCBAQCBzdGF0aWMg dm9pZCBpYnhfaHBkX2lycV9zZXR1cChzdHJ1Y3QKPiA+IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQo+ID4gIAlpYnhfaHBkX2RldGVjdGlvbl9zZXR1cChkZXZfcHJpdik7Cj4gPiAgfQo+ID4g IAo+ID4gK3N0YXRpYyB2b2lkIGdlbjExX2hwZF9kZXRlY3Rpb25fc2V0dXAoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUKPiA+ICpkZXZfcHJpdikKPiA+ICt7Cj4gPiArCXUzMiBob3RwbHVnOwo+ID4g Kwo+ID4gKwlob3RwbHVnID0gSTkxNV9SRUFEKEdFTjExX1RDX0hPVFBMVUdfQ1RMKTsKPiA+ICsJ aG90cGx1ZyB8PSBHRU4xMV9IT1RQTFVHX0NUTF9FTkFCTEUoUE9SVF9UQzEpIHwKPiA+ICsJCSAg IEdFTjExX0hPVFBMVUdfQ1RMX0VOQUJMRShQT1JUX1RDMikgfAo+ID4gKwkJICAgR0VOMTFfSE9U UExVR19DVExfRU5BQkxFKFBPUlRfVEMzKSB8Cj4gPiArCQkgICBHRU4xMV9IT1RQTFVHX0NUTF9F TkFCTEUoUE9SVF9UQzQpOwo+ID4gKwlJOTE1X1dSSVRFKEdFTjExX1RDX0hPVFBMVUdfQ1RMLCBo b3RwbHVnKTsKPiA+ICt9Cj4gPiArCj4gPiArc3RhdGljIHZvaWQgZ2VuMTFfaHBkX2lycV9zZXR1 cChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gPiArewo+ID4gKwl1MzIgaG90 cGx1Z19pcnFzLCBlbmFibGVkX2lycXM7Cj4gPiArCXUzMiB2YWw7Cj4gPiArCj4gPiArCWVuYWJs ZWRfaXJxcyA9IGludGVsX2hwZF9lbmFibGVkX2lycXMoZGV2X3ByaXYsCj4gPiBocGRfdGNfZ2Vu MTEpOwo+ID4gKwlob3RwbHVnX2lycXMgPSBHRU4xMV9ERV9UQ19IT1RQTFVHX01BU0s7Cj4gPiAr Cj4gPiArCXZhbCA9IEk5MTVfUkVBRChHRU4xMV9ERV9IUERfSU1SKTsKPiA+ICsJdmFsICY9IH5o b3RwbHVnX2lycXM7Cj4gPiArCUk5MTVfV1JJVEUoR0VOMTFfREVfSFBEX0lNUiwgdmFsKTsKPiA+ ICsJUE9TVElOR19SRUFEKEdFTjExX0RFX0hQRF9JTVIpOwo+ID4gKwo+ID4gKwlnZW4xMV9ocGRf ZGV0ZWN0aW9uX3NldHVwKGRldl9wcml2KTsKPiA+ICt9Cj4gPiArCj4gPiAgc3RhdGljIHZvaWQg c3B0X2hwZF9kZXRlY3Rpb25fc2V0dXAoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUKPiA+ICpkZXZf cHJpdikKPiA+ICB7Cj4gPiAgCXUzMiB2YWwsIGhvdHBsdWc7Cj4gPiBAQCAtMzk4MCwxMCArNDA2 MiwxNyBAQCBzdGF0aWMgdm9pZCBnZW44X2RlX2lycV9wb3N0aW5zdGFsbChzdHJ1Y3QKPiA+IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4gIAlHRU4zX0lSUV9JTklUKEdFTjhfREVfUE9S VF8sIH5kZV9wb3J0X21hc2tlZCwKPiA+IGRlX3BvcnRfZW5hYmxlcyk7Cj4gPiAgCUdFTjNfSVJR X0lOSVQoR0VOOF9ERV9NSVNDXywgfmRlX21pc2NfbWFza2VkLAo+ID4gZGVfbWlzY19tYXNrZWQp Owo+ID4gIAo+ID4gLQlpZiAoSVNfR0VOOV9MUChkZXZfcHJpdikpCj4gPiArCWlmIChJTlRFTF9H RU4oZGV2X3ByaXYpID49IDExKSB7Cj4gPiArCQl1MzIgZGVfaHBkX21hc2tlZCA9IDA7Cj4gPiAr CQl1MzIgZGVfaHBkX2VuYWJsZXMgPSBHRU4xMV9ERV9UQ19IT1RQTFVHX01BU0s7Cj4gPiArCj4g PiArCQlHRU4zX0lSUV9JTklUKEdFTjExX0RFX0hQRF8sIH5kZV9ocGRfbWFza2VkLAo+ID4gZGVf aHBkX2VuYWJsZXMpOwo+ID4gKwkJZ2VuMTFfaHBkX2RldGVjdGlvbl9zZXR1cChkZXZfcHJpdik7 Cj4gPiArCX0gZWxzZSBpZiAoSVNfR0VOOV9MUChkZXZfcHJpdikpIHsKPiA+ICAJCWJ4dF9ocGRf ZGV0ZWN0aW9uX3NldHVwKGRldl9wcml2KTsKPiA+IC0JZWxzZSBpZiAoSVNfQlJPQURXRUxMKGRl dl9wcml2KSkKPiA+ICsJfSBlbHNlIGlmIChJU19CUk9BRFdFTEwoZGV2X3ByaXYpKSB7Cj4gPiAg CQlpbGtfaHBkX2RldGVjdGlvbl9zZXR1cChkZXZfcHJpdik7Cj4gPiArCX0KPiA+ICB9Cj4gPiAg Cj4gPiAgc3RhdGljIGludCBnZW44X2lycV9wb3N0aW5zdGFsbChzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KQo+ID4gQEAgLTQ1MDUsNyArNDU5NCw3IEBAIHZvaWQgaW50ZWxfaXJxX2luaXQoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUKPiA+ICpkZXZfcHJpdikKPiA+ICAJCWRldi0+ZHJpdmVyLT5pcnFf dW5pbnN0YWxsID0gZ2VuMTFfaXJxX3Jlc2V0Owo+ID4gIAkJZGV2LT5kcml2ZXItPmVuYWJsZV92 YmxhbmsgPSBnZW44X2VuYWJsZV92Ymxhbms7Cj4gPiAgCQlkZXYtPmRyaXZlci0+ZGlzYWJsZV92 YmxhbmsgPSBnZW44X2Rpc2FibGVfdmJsYW5rOwo+ID4gLQkJZGV2X3ByaXYtPmRpc3BsYXkuaHBk X2lycV9zZXR1cCA9Cj4gPiBzcHRfaHBkX2lycV9zZXR1cDsKPiA+ICsJCWRldl9wcml2LT5kaXNw bGF5LmhwZF9pcnFfc2V0dXAgPQo+ID4gZ2VuMTFfaHBkX2lycV9zZXR1cDsKPiA+ICAJfSBlbHNl IGlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDgpIHsKPiA+ICAJCWRldi0+ZHJpdmVyLT5pcnFf aGFuZGxlciA9IGdlbjhfaXJxX2hhbmRsZXI7Cj4gPiAgCQlkZXYtPmRyaXZlci0+aXJxX3ByZWlu c3RhbGwgPSBnZW44X2lycV9yZXNldDsKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3JlZy5oCj4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPiA+ IGluZGV4IGNhNDc0ZjZmNTIzYy4uMTk2MDAwOTc1ODFmIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZWcuaAo+ID4gQEAgLTcwMzYsMTEgKzcwMzYsMzEgQEAgZW51bSB7Cj4gPiAgI2RlZmlu ZSAgR0VOMTFfQVVESU9fQ09ERUNfSVJRCQkoMSA8PCAyNCkKPiA+ICAjZGVmaW5lICBHRU4xMV9E RV9QQ0hfSVJRCQkoMSA8PCAyMykKPiA+ICAjZGVmaW5lICBHRU4xMV9ERV9NSVNDX0lSUQkJKDEg PDwgMjIpCj4gPiArI2RlZmluZSAgR0VOMTFfREVfSFBEX0lSUQkJKDEgPDwgMjEpCj4gPiAgI2Rl ZmluZSAgR0VOMTFfREVfUE9SVF9JUlEJCSgxIDw8IDIwKQo+ID4gICNkZWZpbmUgIEdFTjExX0RF X1BJUEVfQwkJKDEgPDwgMTgpCj4gPiAgI2RlZmluZSAgR0VOMTFfREVfUElQRV9CCQkoMSA8PCAx NykKPiA+ICAjZGVmaW5lICBHRU4xMV9ERV9QSVBFX0EJCSgxIDw8IDE2KQo+ID4gIAo+ID4gKyNk ZWZpbmUgR0VOMTFfREVfSFBEX0lTUgkJX01NSU8oMHg0NDQ3MCkKPiA+ICsjZGVmaW5lIEdFTjEx X0RFX0hQRF9JTVIJCV9NTUlPKDB4NDQ0NzQpCj4gPiArI2RlZmluZSBHRU4xMV9ERV9IUERfSUlS CQlfTU1JTygweDQ0NDc4KQo+ID4gKyNkZWZpbmUgR0VOMTFfREVfSFBEX0lFUgkJX01NSU8oMHg0 NDQ3YykKPiA+ICsjZGVmaW5lICBHRU4xMV9UQzRfSE9UUExVRwkJCSgxIDw8IDE5KQo+ID4gKyNk ZWZpbmUgIEdFTjExX1RDM19IT1RQTFVHCQkJKDEgPDwgMTgpCj4gPiArI2RlZmluZSAgR0VOMTFf VEMyX0hPVFBMVUcJCQkoMSA8PCAxNykKPiA+ICsjZGVmaW5lICBHRU4xMV9UQzFfSE9UUExVRwkJ CSgxIDw8IDE2KQo+ID4gKyNkZWZpbmUgIEdFTjExX0RFX1RDX0hPVFBMVUdfTUFTSwkJKEdFTjEx X1RDNF9IT1RQTFUKPiA+IEcgfCBcCj4gPiArCQkJCQkJIEdFTjExX1RDM19IT1RQTFVHCj4gPiB8 IFwKPiA+ICsJCQkJCQkgR0VOMTFfVEMyX0hPVFBMVUcKPiA+IHwgXAo+ID4gKwkJCQkJCSBHRU4x MV9UQzFfSE9UUExVRwo+ID4gKQo+ID4gKwo+ID4gKyNkZWZpbmUgR0VOMTFfVENfSE9UUExVR19D VEwJCQkJX01NSU8oCj4gPiAweDQ0MDM4KQo+ID4gKyNkZWZpbmUgIEdFTjExX0hPVFBMVUdfQ1RM X0VOQUJMRSh0Y19wb3J0KQkJKDggPDwKPiA+ICh0Y19wb3J0KSAqIDQpCj4gPiArI2RlZmluZSAg R0VOMTFfSE9UUExVR19DVExfTE9OR19ERVRFQ1QodGNfcG9ydCkJCSgyCj4gPiA8PCAodGNfcG9y dCkgKiA0KQo+ID4gKyNkZWZpbmUgIEdFTjExX0hPVFBMVUdfQ1RMX1NIT1JUX0RFVEVDVCh0Y19w b3J0KQkoMSA8PAo+ID4gKHRjX3BvcnQpICogNCkKPiA+ICsjZGVmaW5lICBHRU4xMV9IT1RQTFVH X0NUTF9OT19ERVRFQ1QodGNfcG9ydCkJCSgwIDw8Cj4gPiAodGNfcG9ydCkgKiA0KQo+ID4gKwo+ ID4gICNkZWZpbmUgR0VOMTFfR1RfSU5UUl9EVzAJCV9NTUlPKDB4MTkwMDE4KQo+ID4gICNkZWZp bmUgIEdFTjExX0NTTUUJCQkoMzEpCj4gPiAgI2RlZmluZSAgR0VOMTFfR1VOSVQJCQkoMjgpCj4g PiAtLSAKPiA+IDIuMTQuMwo+ID4gCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwo+ID4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ID4gSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4Cg==