From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 1/3] drm/i915: refactor the IRQ init/reset macros Date: Tue, 9 Apr 2019 21:10:35 +0300 Message-ID: <20190409181035.GV3888@intel.com> References: <20190409003729.20857-1-paulo.r.zanoni@intel.com> <20190409003729.20857-2-paulo.r.zanoni@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 34152891FD for ; Tue, 9 Apr 2019 18:10:39 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190409003729.20857-2-paulo.r.zanoni@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Paulo Zanoni Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBBcHIgMDgsIDIwMTkgYXQgMDU6Mzc6MjdQTSAtMDcwMCwgUGF1bG8gWmFub25pIHdy b3RlOgo+IFRoZSB3aG9sZSBwb2ludCBvZiBoYXZpbmcgbWFjcm9zIGhlcmUgaXMgZm9yIHRoZSB0 b2tlbiBwYXN0aW5nCj4gbmVjZXNzYXJ5IHRvIGF1dG9tYXRpY2FsbHkgaGF2ZSBJTVIsIElJUiBh bmQgSUVSIHNlbGVjdGVkLiBXZSBkb24ndAo+IHJlYWxseSBuZWVkIG9yIHdhbnQgYWxsIHRoZSBp bmxpbmluZyB0aGF0IGhhcHBlbnMgYXMgYSBjb25zZXF1ZW5jZS4KPiBUaGUgZ29vZCB0aGluZyBh Ym91dCB0aGUgY3VycmVudCBjb2RlIGlzIHRoYXQgaXQgd29ya3MgcmVnYXJkbGVzcyBvZgo+IHRo ZSByZWxhdGl2ZSBvZmZzZXRzIGJldHdlZW4gdGhlc2UgcmVnaXN0ZXJzICh0aGV5IGNoYW5nZSBh ZnRlciBnZW4zKS4KCkRpZCB5b3UgbWVhbiAiYWZ0ZXIgZ2VuNCI/IFRoZSBERS9HVCBzcGxpdCBo YXBwZW5lZCBhdCBpbGssIGFuZCBJCmd1ZXNzIHRoYXQncyB3aGVuIHRoZSBmb3VyIHJlZ2lzdGVy cyBhbHNvIGdvdCByZXNodWZmbGVkIGZvciBzb21lCnJlYXNvbi4gSWdub3JpbmcgdGhlIGZ1bmt5 bmVzcyBvZiB2bHYvY2h2IG9yIGNvdXJzZSA6KQoKPiAKPiBPbmUgdGhpbmcgd2hpY2ggd2UgY2Fu IGRvIGlzIHRvIHNwbGl0IHRoZSBsb2dpYyBvZiB3aGF0IHdlIGRvIHdpdGgKPiBpbXIvaWVyL2lp ciB0byBmdW5jdGlvbnMgc2VwYXJhdGUgZnJvbSB0aGUgbWFjcm9zIHRoYXQgcGljayB0aGVtLgo+ IFRoYXQncyB3aGF0IHdlIGRvIGluIHRoaXMgY29tbWl0LiBUaGlzIGFsbG93cyB1cyB0byBnZXQg cmlkIG9mIHRoZQo+IGdlbjggZHVwbGljYXRlcyBhbmQgYWxzbyBhbGwgdGhlIGlubGluaW5nOgo+ IAo+IGFkZC9yZW1vdmU6IDIvMCBncm93L3NocmluazogMC8yMSB1cC9kb3duOiAzODMvLTYwMDYg KC01NjIzKQo+IEZ1bmN0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9s ZCAgICAgbmV3ICAgZGVsdGEKPiBnZW4zX2lycV9yZXNldCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC0gICAgIDIzMyAgICArMjMzCj4gZ2VuM19pcnFfaW5pdCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAtICAgICAxNTAgICAgKzE1MAo+IGk4eHhfaXJxX3Bvc3RpbnN0 YWxsICAgICAgICAgICAgICAgICAgICAgICAgIDQ1OSAgICAgNDQyICAgICAtMTcKPiBnZW4xMV9p cnFfcG9zdGluc3RhbGwgICAgICAgICAgICAgICAgICAgICAgICA4MDQgICAgIDc0NCAgICAgLTYw Cj4gaXJvbmxha2VfaXJxX3Bvc3RpbnN0YWxsICAgICAgICAgICAgICAgICAgICAgNDUwICAgICAz NTMgICAgIC05Nwo+IHZsdl9kaXNwbGF5X2lycV9wb3N0aW5zdGFsbCAgICAgICAgICAgICAgICAg IDM0OCAgICAgMjQ1ICAgIC0xMDMKPiBpOTY1X2lycV9wb3N0aW5zdGFsbCAgICAgICAgICAgICAg ICAgICAgICAgICAzNzggICAgIDI3NSAgICAtMTAzCj4gaTkxNV9pcnFfcG9zdGluc3RhbGwgICAg ICAgICAgICAgICAgICAgICAgICAgMzMzICAgICAyMjggICAgLTEwNQo+IGdlbjhfaXJxX3Bvd2Vy X3dlbGxfcG9zdF9lbmFibGUgICAgICAgICAgICAgIDM3NCAgICAgMjEwICAgIC0xNjQKPiBpcm9u bGFrZV9pcnFfcmVzZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAzOTcgICAgIDIxOCAgICAt MTc5Cj4gdmx2X2Rpc3BsYXlfaXJxX3Jlc2V0ICAgICAgICAgICAgICAgICAgICAgICAgNjE2ICAg ICA0MzMgICAgLTE4Mwo+IGk5NjVfaXJxX3Jlc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDM3NCAgICAgMTgwICAgIC0xOTQKPiBjaGVycnl2aWV3X2lycV9yZXNldCAgICAgICAgICAg ICAgICAgICAgICAgICAzNzkgICAgIDE4NSAgICAtMTk0Cj4gaTkxNV9pcnFfcmVzZXQgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgNDA3ICAgICAyMDkgICAgLTE5OAo+IGlieF9pcnFfcmVz ZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMzMiAgICAgMTMzICAgIC0xOTkKPiBn ZW41X2d0X2lycV9wb3N0aW5zdGFsbCAgICAgICAgICAgICAgICAgICAgICA1MzMgICAgIDMzMiAg ICAtMjAxCj4gZ2VuOF9pcnFfcG93ZXJfd2VsbF9wcmVfZGlzYWJsZSAgICAgICAgICAgICAgNDM0 ICAgICAyMDQgICAgLTIzMAo+IGdlbjhfZ3RfaXJxX3Bvc3RpbnN0YWxsICAgICAgICAgICAgICAg ICAgICAgIDQ2OSAgICAgMTk2ICAgIC0yNzMKPiBnZW44X2RlX2lycV9wb3N0aW5zdGFsbCAgICAg ICAgICAgICAgICAgICAgIDEyMDAgICAgIDgwNSAgICAtMzk1Cj4gZ2VuNV9ndF9pcnFfcmVzZXQg ICAgICAgICAgICAgICAgICAgICAgICAgICAgNDcxICAgICAgNzYgICAgLTM5NQo+IGdlbjhfZ3Rf aXJxX3Jlc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDc3NSAgICAgIDk5ICAgIC02NzYK PiBnZW44X2lycV9yZXNldCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExMDAgICAgIDMz MyAgICAtNzY3Cj4gZ2VuMTFfaXJxX3Jlc2V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAx OTU5ICAgICA2ODYgICAtMTI3Mwo+IFRvdGFsOiBCZWZvcmU9MjI2MjA1MSwgQWZ0ZXI9MjI1NjQy OCwgY2hnIC0wLjI1JQo+IAo+IFNpZ25lZC1vZmYtYnk6IFBhdWxvIFphbm9uaSA8cGF1bG8uci56 YW5vbmlAaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5j IHwgMTIzICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tCj4gIDEgZmlsZSBjaGFuZ2Vk LCA3MyBpbnNlcnRpb25zKCspLCA1MCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf aXJxLmMKPiBpbmRleCA2NDU0ZGRjMzdmOGIuLmExZTc5NDRmYjVkMCAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9pcnEuYwo+IEBAIC0xMzYsMzYgKzEzNiw0NSBAQCBzdGF0aWMgY29uc3QgdTMyIGhw ZF9pY3BbSFBEX05VTV9QSU5TXSA9IHsKPiAgCVtIUERfUE9SVF9GXSA9IFNERV9UQzRfSE9UUExV R19JQ1AKPiAgfTsKPiAgCj4gLS8qIElJUiBjYW4gdGhlb3JldGljYWxseSBxdWV1ZSB1cCB0d28g ZXZlbnRzLiBCZSBwYXJhbm9pZC4gKi8KPiAtI2RlZmluZSBHRU44X0lSUV9SRVNFVF9ORFgodHlw ZSwgd2hpY2gpIGRvIHsgXAo+IC0JSTkxNV9XUklURShHRU44XyMjdHlwZSMjX0lNUih3aGljaCks IDB4ZmZmZmZmZmYpOyBcCj4gLQlQT1NUSU5HX1JFQUQoR0VOOF8jI3R5cGUjI19JTVIod2hpY2gp KTsgXAo+IC0JSTkxNV9XUklURShHRU44XyMjdHlwZSMjX0lFUih3aGljaCksIDApOyBcCj4gLQlJ OTE1X1dSSVRFKEdFTjhfIyN0eXBlIyNfSUlSKHdoaWNoKSwgMHhmZmZmZmZmZik7IFwKPiAtCVBP U1RJTkdfUkVBRChHRU44XyMjdHlwZSMjX0lJUih3aGljaCkpOyBcCj4gLQlJOTE1X1dSSVRFKEdF TjhfIyN0eXBlIyNfSUlSKHdoaWNoKSwgMHhmZmZmZmZmZik7IFwKPiAtCVBPU1RJTkdfUkVBRChH RU44XyMjdHlwZSMjX0lJUih3aGljaCkpOyBcCj4gLX0gd2hpbGUgKDApCj4gLQo+IC0jZGVmaW5l IEdFTjNfSVJRX1JFU0VUKHR5cGUpIGRvIHsgXAo+IC0JSTkxNV9XUklURSh0eXBlIyNJTVIsIDB4 ZmZmZmZmZmYpOyBcCj4gLQlQT1NUSU5HX1JFQUQodHlwZSMjSU1SKTsgXAo+IC0JSTkxNV9XUklU RSh0eXBlIyNJRVIsIDApOyBcCj4gLQlJOTE1X1dSSVRFKHR5cGUjI0lJUiwgMHhmZmZmZmZmZik7 IFwKPiAtCVBPU1RJTkdfUkVBRCh0eXBlIyNJSVIpOyBcCj4gLQlJOTE1X1dSSVRFKHR5cGUjI0lJ UiwgMHhmZmZmZmZmZik7IFwKPiAtCVBPU1RJTkdfUkVBRCh0eXBlIyNJSVIpOyBcCj4gLX0gd2hp bGUgKDApCj4gLQo+IC0jZGVmaW5lIEdFTjJfSVJRX1JFU0VUKHR5cGUpIGRvIHsgXAo+IC0JSTkx NV9XUklURTE2KHR5cGUjI0lNUiwgMHhmZmZmKTsgXAo+IC0JUE9TVElOR19SRUFEMTYodHlwZSMj SU1SKTsgXAo+IC0JSTkxNV9XUklURTE2KHR5cGUjI0lFUiwgMCk7IFwKPiAtCUk5MTVfV1JJVEUx Nih0eXBlIyNJSVIsIDB4ZmZmZik7IFwKPiAtCVBPU1RJTkdfUkVBRDE2KHR5cGUjI0lJUik7IFwK PiAtCUk5MTVfV1JJVEUxNih0eXBlIyNJSVIsIDB4ZmZmZik7IFwKPiAtCVBPU1RJTkdfUkVBRDE2 KHR5cGUjI0lJUik7IFwKPiAtfSB3aGlsZSAoMCkKPiArc3RhdGljIHZvaWQgZ2VuM19pcnFfcmVz ZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBpOTE1X3JlZ190IGltciwKPiAr CQkJICAgaTkxNV9yZWdfdCBpaXIsIGk5MTVfcmVnX3QgaWVyKQo+ICt7Cj4gKwlJOTE1X1dSSVRF KGltciwgMHhmZmZmZmZmZik7Cj4gKwlQT1NUSU5HX1JFQUQoaW1yKTsKPiArCj4gKwlJOTE1X1dS SVRFKGllciwgMCk7Cj4gKwo+ICsJLyogSUlSIGNhbiB0aGVvcmV0aWNhbGx5IHF1ZXVlIHVwIHR3 byBldmVudHMuIEJlIHBhcmFub2lkLiAqLwo+ICsJSTkxNV9XUklURShpaXIsIDB4ZmZmZmZmZmYp Owo+ICsJUE9TVElOR19SRUFEKGlpcik7Cj4gKwlJOTE1X1dSSVRFKGlpciwgMHhmZmZmZmZmZik7 Cj4gKwlQT1NUSU5HX1JFQUQoaWlyKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgZ2VuMl9pcnFf cmVzZXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBpOTE1X3JlZ190IGltciwK PiArCQkJICAgaTkxNV9yZWdfdCBpaXIsIGk5MTVfcmVnX3QgaWVyKQo+ICt7Cj4gKwlJOTE1X1dS SVRFMTYoaW1yLCAweGZmZmYpOwo+ICsJUE9TVElOR19SRUFEMTYoaW1yKTsKPiArCj4gKwlJOTE1 X1dSSVRFMTYoaWVyLCAwKTsKPiArCj4gKwkvKiBJSVIgY2FuIHRoZW9yZXRpY2FsbHkgcXVldWUg dXAgdHdvIGV2ZW50cy4gQmUgcGFyYW5vaWQuICovCj4gKwlJOTE1X1dSSVRFMTYoaWlyLCAweGZm ZmYpOwo+ICsJUE9TVElOR19SRUFEMTYoaWlyKTsKPiArCUk5MTVfV1JJVEUxNihpaXIsIDB4ZmZm Zik7Cj4gKwlQT1NUSU5HX1JFQUQxNihpaXIpOwo+ICt9Cj4gKwo+ICsjZGVmaW5lIEdFTjhfSVJR X1JFU0VUX05EWCh0eXBlLCB3aGljaCkgXAo+ICsJZ2VuM19pcnFfcmVzZXQoZGV2X3ByaXYsIEdF TjhfIyN0eXBlIyNfSU1SKHdoaWNoKSwgXAo+ICsJCSAgICAgICBHRU44XyMjdHlwZSMjX0lJUih3 aGljaCksIEdFTjhfIyN0eXBlIyNfSUVSKHdoaWNoKSkKPiArCj4gKyNkZWZpbmUgR0VOM19JUlFf UkVTRVQodHlwZSkgXAo+ICsJZ2VuM19pcnFfcmVzZXQoZGV2X3ByaXYsIHR5cGUjI0lNUiwgdHlw ZSMjSUlSLCB0eXBlIyNJRVIpCj4gKwo+ICsjZGVmaW5lIEdFTjJfSVJRX1JFU0VUKHR5cGUpIFwK PiArCWdlbjJfaXJxX3Jlc2V0KGRldl9wcml2LCB0eXBlIyNJTVIsIHR5cGUjI0lJUiwgdHlwZSMj SUVSKQo+ICAKPiAgLyoKPiAgICogV2Ugc2hvdWxkIGNsZWFyIElNUiBhdCBwcmVpbnN0YWxsL3Vu aW5zdGFsbCwgYW5kIGp1c3QgY2hlY2sgYXQgcG9zdGluc3RhbGwuCj4gQEAgLTIwMiwyNiArMjEx LDQwIEBAIHN0YXRpYyB2b2lkIGdlbjJfYXNzZXJ0X2lpcl9pc196ZXJvKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCVBPU1RJTkdfUkVBRDE2KHJlZyk7Cj4gIH0KPiAgCj4g LSNkZWZpbmUgR0VOOF9JUlFfSU5JVF9ORFgodHlwZSwgd2hpY2gsIGltcl92YWwsIGllcl92YWwp IGRvIHsgXAo+IC0JZ2VuM19hc3NlcnRfaWlyX2lzX3plcm8oZGV2X3ByaXYsIEdFTjhfIyN0eXBl IyNfSUlSKHdoaWNoKSk7IFwKPiAtCUk5MTVfV1JJVEUoR0VOOF8jI3R5cGUjI19JRVIod2hpY2gp LCAoaWVyX3ZhbCkpOyBcCj4gLQlJOTE1X1dSSVRFKEdFTjhfIyN0eXBlIyNfSU1SKHdoaWNoKSwg KGltcl92YWwpKTsgXAo+IC0JUE9TVElOR19SRUFEKEdFTjhfIyN0eXBlIyNfSU1SKHdoaWNoKSk7 IFwKPiAtfSB3aGlsZSAoMCkKPiAtCj4gLSNkZWZpbmUgR0VOM19JUlFfSU5JVCh0eXBlLCBpbXJf dmFsLCBpZXJfdmFsKSBkbyB7IFwKPiAtCWdlbjNfYXNzZXJ0X2lpcl9pc196ZXJvKGRldl9wcml2 LCB0eXBlIyNJSVIpOyBcCj4gLQlJOTE1X1dSSVRFKHR5cGUjI0lFUiwgKGllcl92YWwpKTsgXAo+ IC0JSTkxNV9XUklURSh0eXBlIyNJTVIsIChpbXJfdmFsKSk7IFwKPiAtCVBPU1RJTkdfUkVBRCh0 eXBlIyNJTVIpOyBcCj4gLX0gd2hpbGUgKDApCj4gLQo+IC0jZGVmaW5lIEdFTjJfSVJRX0lOSVQo dHlwZSwgaW1yX3ZhbCwgaWVyX3ZhbCkgZG8geyBcCj4gLQlnZW4yX2Fzc2VydF9paXJfaXNfemVy byhkZXZfcHJpdiwgdHlwZSMjSUlSKTsgXAo+IC0JSTkxNV9XUklURTE2KHR5cGUjI0lFUiwgKGll cl92YWwpKTsgXAo+IC0JSTkxNV9XUklURTE2KHR5cGUjI0lNUiwgKGltcl92YWwpKTsgXAo+IC0J UE9TVElOR19SRUFEMTYodHlwZSMjSU1SKTsgXAo+IC19IHdoaWxlICgwKQo+ICtzdGF0aWMgdm9p ZCBnZW4zX2lycV9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgaTkxNV9y ZWdfdCBpbXIsCj4gKwkJCSAgaTkxNV9yZWdfdCBpaXIsIGk5MTVfcmVnX3QgaWVyLCB1MzIgaW1y X3ZhbCwKPiArCQkJICB1MzIgaWVyX3ZhbCkKCk1heWJlIHdlIHNob3VsZCBvcmRlciB0aGVzZSBt b3JlIGxpa2UgdGhpcwpmb28oaW1yLCBpbXJfdmFsdWUsIGllciwgaWVyX3ZhbHVlLCBpaXIpID8K CkNvdWxkIG1ha2UgYSBiaXQgbW9yZSBvYnZpb3VzIHdoaWNoIHZhbHVlcyBnb2VzIHRvIHdoaWNo IHJlZ2lzdGVyLiBCdXQKSSBzdXBwb3NlIGFzIGxvbmcgYXMgdGhleSdyZSBhbHdheXMgd3JhcHBl ZCBpbiB0aG9zZSBtYWNyb3MgaXQgZG9lc24ndApyZWFsbHkgbWF0dGVyLgoKUmV2aWV3ZWQtYnk6 IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cgo+ICt7Cj4g KwlnZW4zX2Fzc2VydF9paXJfaXNfemVybyhkZXZfcHJpdiwgaWlyKTsKPiArCj4gKwlJOTE1X1dS SVRFKGllciwgaWVyX3ZhbCk7Cj4gKwlJOTE1X1dSSVRFKGltciwgaW1yX3ZhbCk7Cj4gKwlQT1NU SU5HX1JFQUQoaW1yKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQgZ2VuMl9pcnFfaW5pdChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGk5MTVfcmVnX3QgaW1yLAo+ICsJCQkgIGk5 MTVfcmVnX3QgaWlyLCBpOTE1X3JlZ190IGllciwgdTMyIGltcl92YWwsCj4gKwkJCSAgdTMyIGll cl92YWwpCj4gK3sKPiArCWdlbjJfYXNzZXJ0X2lpcl9pc196ZXJvKGRldl9wcml2LCBpaXIpOwo+ ICsKPiArCUk5MTVfV1JJVEUxNihpZXIsIGllcl92YWwpOwo+ICsJSTkxNV9XUklURTE2KGltciwg aW1yX3ZhbCk7Cj4gKwlQT1NUSU5HX1JFQUQxNihpbXIpOwo+ICt9Cj4gKwo+ICsjZGVmaW5lIEdF TjhfSVJRX0lOSVRfTkRYKHR5cGUsIHdoaWNoLCBpbXJfdmFsLCBpZXJfdmFsKSBcCj4gKwlnZW4z X2lycV9pbml0KGRldl9wcml2LCBHRU44XyMjdHlwZSMjX0lNUih3aGljaCksIFwKPiArCQkgICAg ICBHRU44XyMjdHlwZSMjX0lJUih3aGljaCksIEdFTjhfIyN0eXBlIyNfSUVSKHdoaWNoKSwgXAo+ ICsJCSAgICAgIGltcl92YWwsIGllcl92YWwpCj4gKwo+ICsjZGVmaW5lIEdFTjNfSVJRX0lOSVQo dHlwZSwgaW1yX3ZhbCwgaWVyX3ZhbCkgXAo+ICsJZ2VuM19pcnFfaW5pdChkZXZfcHJpdiwgdHlw ZSMjSU1SLCB0eXBlIyNJSVIsIHR5cGUjI0lFUiwgaW1yX3ZhbCwgXAo+ICsJCSAgICAgIGllcl92 YWwpCj4gKwo+ICsjZGVmaW5lIEdFTjJfSVJRX0lOSVQodHlwZSwgaW1yX3ZhbCwgaWVyX3ZhbCkg XAo+ICsJZ2VuMl9pcnFfaW5pdChkZXZfcHJpdiwgdHlwZSMjSU1SLCB0eXBlIyNJSVIsIHR5cGUj I0lFUiwgaW1yX3ZhbCwgXAo+ICsJCSAgICAgIGllcl92YWwpCj4gIAo+ICBzdGF0aWMgdm9pZCBn ZW42X3Jwc19pcnFfaGFuZGxlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUz MiBwbV9paXIpOwo+ICBzdGF0aWMgdm9pZCBnZW45X2d1Y19pcnFfaGFuZGxlcihzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBwbV9paXIpOwo+IC0tIAo+IDIuMjAuMQo+IAo+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0g ClZpbGxlIFN5cmrDpGzDpApJbnRlbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZng=