From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paulo Zanoni Subject: Re: [PATCH 1/2] drm/i915/icp: Add Interrupt Support Date: Tue, 26 Jun 2018 13:09:54 -0700 Message-ID: <1530043794.2574.5.camel@intel.com> References: <1529530565-8985-1-git-send-email-anusha.srivatsa@intel.com> ,<1529968667.2591.10.camel@intel.com> <83F5C7385F545743AD4FB2A62F75B07333A85AA7@ORSMSX108.amr.corp.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 772596E635 for ; Tue, 26 Jun 2018 20:10:02 +0000 (UTC) In-Reply-To: <83F5C7385F545743AD4FB2A62F75B07333A85AA7@ORSMSX108.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: "Srivatsa, Anusha" , "intel-gfx@lists.freedesktop.org" Cc: "Pandiyan, Dhinakaran" List-Id: intel-gfx@lists.freedesktop.org RW0gVGVyLCAyMDE4LTA2LTI2IMOgcyAxMTozMiAtMDcwMCwgU3JpdmF0c2EsIEFudXNoYSBlc2Ny ZXZldToKPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gRnJvbTog WmFub25pLCBQYXVsbyBSCj4gU2VudDogTW9uZGF5LCBKdW5lIDI1LCAyMDE4IDQ6MTcgUE0KPiBU bzogU3JpdmF0c2EsIEFudXNoYTsgaW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IENj OiBQYW5kaXlhbiwgRGhpbmFrYXJhbgo+IFN1YmplY3Q6IFJlOiBbSW50ZWwtZ2Z4XSBbUEFUQ0gg MS8yXSBkcm0vaTkxNS9pY3A6IEFkZCBJbnRlcnJ1cHQKPiBTdXBwb3J0Cj4gCj4gRW0gUXVhLCAy MDE4LTA2LTIwIMOgcyAxNDozNiAtMDcwMCwgQW51c2hhIFNyaXZhdHNhIGVzY3JldmV1Ogo+ID4g VGhpcyBwYXRjaCBhZGRyZXNzZXMgSW50ZXJydXB0cyBmcm9tIHNvdXRoIGRpc3BsYXkgZW5naW5l IChTREUpLgo+ID4gCj4gPiBJQ1AgaGFzIHR3byByZWdpc3RlcnMgLSBTSE9UUExVR19DVExfRERJ IGFuZCBTSE9UUExVR19DVExfVEMuCj4gPiBJbnRyb2R1Y2UgdGhlc2UgcmVnaXN0ZXJzIGFuZCB0 aGVpciBpbnRlbmRlZCB2YWx1ZXMuCj4gPiAKPiA+IEludHJvZHVjZSBpY3BfaXJxX2hhbmRsZXIo KS4KPiA+IAo+ID4gdjI6Cj4gPiAtIHJlbW92ZSByZWR1bmRhbnQgcmVnaXN0ZXIgZGVmaW5lcy4o THVjYXMpCj4gPiAtIENoYW5nZSByZWdpc3RlciBuYW1lcyB0byBiZSBtb3JlIGNvbnNpc3RlbnQg d2l0aAo+ID4gcHJldmlvdXMgcGxhdGZvcm1zIChMdWNhcykKPiA+IAo+ID4gQ2M6IEx1Y2FzIERl IE1hcmNoaSA8bHVjYXMuZGUubWFyY2hpQGdtYWlsLmNvbT4KPiA+IENjOiBQYXVsbyBaYW5vbmkg PHBhdWxvLnIuemFub25pQGludGVsLmNvbT4KPiA+IENjOiBEaGluYWthcmFuIFBhbmRpeWFuIDxk aGluYWthcmFuLnBhbmRpeWFuQGludGVsLmNvbT4KPiA+IENjOiBWaWxsZSBTeXJqYWxhIDx2aWxs ZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiA+IFNpZ25lZC1vZmYtYnk6IEFudXNoYSBTcml2 YXRzYSA8YW51c2hhLnNyaXZhdHNhQGludGVsLmNvbT4KPiA+IFtQYXVsbzogY29kaW5nIHN0eWxl IGJpa2VzaGVkcyBhbmQgcmViYXNlc10uCj4gPiBTaWduZWQtb2ZmLWJ5OiBQYXVsbyBaYW5vbmkg PHBhdWxvLnIuemFub25pQGludGVsLmNvbT4KPiA+IC0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfaXJxLmMgfCAxMzQKPiA+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIHwgIDQwICsrKysr KysrKysrKwo+ID4gIDIgZmlsZXMgY2hhbmdlZCwgMTcyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2ly cS5jCj4gPiBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKPiA+IGluZGV4IDQ2YWFl ZjUuLjdhN2M0YTIgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2ly cS5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gPiBAQCAtMTIy LDYgKzEyMiwxNSBAQCBzdGF0aWMgY29uc3QgdTMyIGhwZF9nZW4xMVtIUERfTlVNX1BJTlNdID0g ewo+ID4gICAgICAgW0hQRF9QT1JUX0ZdID0gR0VOMTFfVEM0X0hPVFBMVUcgfCBHRU4xMV9UQlQ0 X0hPVFBMVUcKPiA+ICB9Owo+ID4gCj4gPiArc3RhdGljIGNvbnN0IHUzMiBocGRfaWNwW0hQRF9O VU1fUElOU10gPSB7Cj4gPiArICAgICBbSFBEX1BPUlRfQV0gPSBTREVfRERJQV9IT1RQTFVHX0lD UCwKPiA+ICsgICAgIFtIUERfUE9SVF9CXSA9IFNERV9ERElCX0hPVFBMVUdfSUNQLAo+ID4gKyAg ICAgW0hQRF9QT1JUX0NdID0gU0RFX1RDMV9IT1RQTFVHX0lDUCwKPiA+ICsgICAgIFtIUERfUE9S VF9EXSA9IFNERV9UQzJfSE9UUExVR19JQ1AsCj4gPiArICAgICBbSFBEX1BPUlRfRV0gPSBTREVf VEMzX0hPVFBMVUdfSUNQLAo+ID4gKyAgICAgW0hQRF9QT1JUX0ZdID0gU0RFX1RDNF9IT1RQTFVH X0lDUAo+ID4gK307Cj4gPiArCj4gPiAgLyogSUlSIGNhbiB0aGVvcmV0aWNhbGx5IHF1ZXVlIHVw IHR3byBldmVudHMuIEJlIHBhcmFub2lkLiAqLwo+ID4gICNkZWZpbmUgR0VOOF9JUlFfUkVTRVRf TkRYKHR5cGUsIHdoaWNoKSBkbyB7IFwKPiA+ICAgICAgIEk5MTVfV1JJVEUoR0VOOF8jI3R5cGUj I19JTVIod2hpY2gpLCAweGZmZmZmZmZmKTsgXAo+ID4gQEAgLTE1ODYsNiArMTU5NSwzNCBAQCBz dGF0aWMgYm9vbAo+ID4gYnh0X3BvcnRfaG90cGx1Z19sb25nX2RldGVjdChlbnVtCj4gPiBwb3J0 IHBvcnQsIHUzMiB2YWwpCj4gPiAgICAgICB9Cj4gPiAgfQo+ID4gCj4gPiArc3RhdGljIGJvb2wg aWNwX2RkaV9wb3J0X2hvdHBsdWdfbG9uZ19kZXRlY3QoZW51bSBwb3J0IHBvcnQsIHUzMgo+ID4g dmFsKQo+ID4gK3sKPiA+ICsgICAgIHN3aXRjaCAocG9ydCkgewo+ID4gKyAgICAgY2FzZSBQT1JU X0E6Cj4gPiArICAgICAgICAgICAgIHJldHVybiB2YWwgJiBJQ1BfRERJQV9IUERfTE9OR19ERVRF Q1Q7Cj4gPiArICAgICBjYXNlIFBPUlRfQjoKPiA+ICsgICAgICAgICAgICAgcmV0dXJuIHZhbCAm IElDUF9ERElCX0hQRF9MT05HX0RFVEVDVDsKPiA+ICsgICAgIGRlZmF1bHQ6Cj4gPiArICAgICAg ICAgICAgIHJldHVybiBmYWxzZTsKPiA+ICsgICAgIH0KPiA+ICt9Cj4gPiArCj4gPiArc3RhdGlj IGJvb2wgaWNwX3RjX3BvcnRfaG90cGx1Z19sb25nX2RldGVjdChlbnVtIHBvcnQgcG9ydCwgdTMy Cj4gPiB2YWwpCj4gPiArewo+ID4gKyAgICAgc3dpdGNoIChwb3J0KSB7Cj4gPiArICAgICBjYXNl IFBPUlRfQzoKPiA+ICsgICAgICAgICAgICAgcmV0dXJuIHZhbCAmIElDUF9UQ19IUERfTE9OR19E RVRFQ1QoUE9SVF9UQzEpOwo+ID4gKyAgICAgY2FzZSBQT1JUX0Q6Cj4gPiArICAgICAgICAgICAg IHJldHVybiB2YWwgJiBJQ1BfVENfSFBEX0xPTkdfREVURUNUKFBPUlRfVEMyKTsKPiA+ICsgICAg IGNhc2UgUE9SVF9FOgo+ID4gKyAgICAgICAgICAgICByZXR1cm4gdmFsICYgSUNQX1RDX0hQRF9M T05HX0RFVEVDVChQT1JUX1RDMyk7Cj4gPiArICAgICBjYXNlIFBPUlRfRjoKPiA+ICsgICAgICAg ICAgICAgcmV0dXJuIHZhbCAmIElDUF9UQ19IUERfTE9OR19ERVRFQ1QoUE9SVF9UQzQpOwo+ID4g KyAgICAgZGVmYXVsdDoKPiA+ICsgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwo+ID4gKyAgICAg fQo+ID4gK30KPiA+ICsKPiA+ICBzdGF0aWMgYm9vbCBzcHRfcG9ydF9ob3RwbHVnMl9sb25nX2Rl dGVjdChlbnVtIHBvcnQgcG9ydCwgdTMyIHZhbCkKPiA+ICB7Cj4gPiAgICAgICBzd2l0Y2ggKHBv cnQpIHsKPiA+IEBAIC0yMzg1LDYgKzI0MjIsNDMgQEAgc3RhdGljIHZvaWQgY3B0X2lycV9oYW5k bGVyKHN0cnVjdAo+ID4gZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBwY2hfaWlyKQo+ ID4gICAgICAgICAgICAgICBjcHRfc2Vycl9pbnRfaGFuZGxlcihkZXZfcHJpdik7Cj4gPiAgfQo+ ID4gCj4gPiArc3RhdGljIHZvaWQgaWNwX2lycV9oYW5kbGVyKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwgdTMyCj4gPiBwY2hfaWlyKQo+ID4gK3sKPiA+ICsgICAgIHUzMiBkZGlf aG90cGx1Z190cmlnZ2VyID0gcGNoX2lpciAmIFNERV9ERElfTUFTS19JQ1A7Cj4gPiArICAgICB1 MzIgdGNfaG90cGx1Z190cmlnZ2VyID0gcGNoX2lpciAmIFNERV9UQ19NQVNLX0lDUDsKPiA+ICsg ICAgIHUzMiBwaW5fbWFzayA9IDAsIGxvbmdfbWFzayA9IDA7Cj4gPiArCj4gPiArICAgICBpZiAo ZGRpX2hvdHBsdWdfdHJpZ2dlcikgewo+ID4gKyAgICAgICAgICAgICB1MzIgZGlnX2hvdHBsdWdf cmVnOwo+ID4gKwo+ID4gKyAgICAgICAgICAgICBkaWdfaG90cGx1Z19yZWcgPSBJOTE1X1JFQUQo U0hPVFBMVUdfQ1RMX0RESSk7Cj4gPiArICAgICAgICAgICAgIEk5MTVfV1JJVEUoU0hPVFBMVUdf Q1RMX0RESSwgZGlnX2hvdHBsdWdfcmVnKTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgaW50ZWxf Z2V0X2hwZF9waW5zKGRldl9wcml2LCAmcGluX21hc2ssICZsb25nX21hc2ssCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBkZGlfaG90cGx1Z190cmlnZ2VyLAo+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlnX2hvdHBsdWdfcmVnLCBocGRfaWNwLAo+ID4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNwX2RkaV9wb3J0X2hvdHBsdWdfbG9u Z19kZXRlY3QpCj4gPiA7Cj4gPiArICAgICB9Cj4gPiArCj4gPiArICAgICBpZiAodGNfaG90cGx1 Z190cmlnZ2VyKSB7Cj4gPiArICAgICAgICAgICAgIHUzMiBkaWdfaG90cGx1Z19yZWc7Cj4gPiAr Cj4gPiArICAgICAgICAgICAgIGRpZ19ob3RwbHVnX3JlZyA9IEk5MTVfUkVBRChTSE9UUExVR19D VExfVEMpOwo+ID4gKyAgICAgICAgICAgICBJOTE1X1dSSVRFKFNIT1RQTFVHX0NUTF9UQywgZGln X2hvdHBsdWdfcmVnKTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgaW50ZWxfZ2V0X2hwZF9waW5z KGRldl9wcml2LCAmcGluX21hc2ssICZsb25nX21hc2ssCj4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0Y19ob3RwbHVnX3RyaWdnZXIsCj4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBkaWdfaG90cGx1Z19yZWcsIGhwZF9pY3AsCj4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpY3BfdGNfcG9ydF9ob3RwbHVnX2xvbmdfZGV0ZWN0KTsKPiA+ ICsgICAgIH0KPiA+ICsKPiA+ICsgICAgIGlmIChwaW5fbWFzaykKPiA+ICsgICAgICAgICAgICAg aW50ZWxfaHBkX2lycV9oYW5kbGVyKGRldl9wcml2LCBwaW5fbWFzaywKPiA+IGxvbmdfbWFzayk7 Cj4gPiArCj4gPiArICAgICBpZiAocGNoX2lpciAmIFNERV9HTUJVU19JQ1ApCj4gPiArICAgICAg ICAgICAgIGdtYnVzX2lycV9oYW5kbGVyKGRldl9wcml2KTsKPiA+ICt9Cj4gPiArCj4gPiAgc3Rh dGljIHZvaWQgc3B0X2lycV9oYW5kbGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwgdTMyCj4gPiBwY2hfaWlyKQo+ID4gIHsKPiA+ICAgICAgIHUzMiBob3RwbHVnX3RyaWdnZXIg PSBwY2hfaWlyICYgU0RFX0hPVFBMVUdfTUFTS19TUFQgJgo+ID4gQEAgLTI4MDQsOCArMjg3OCwx MSBAQCBnZW44X2RlX2lycV9oYW5kbGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlCj4gPiAqZGV2 X3ByaXYsIHUzMiBtYXN0ZXJfY3RsKQo+ID4gICAgICAgICAgICAgICAgICAgICAgIEk5MTVfV1JJ VEUoU0RFSUlSLCBpaXIpOwo+ID4gICAgICAgICAgICAgICAgICAgICAgIHJldCA9IElSUV9IQU5E TEVEOwo+ID4gCj4gPiAtICAgICAgICAgICAgICAgICAgICAgaWYgKEhBU19QQ0hfU1BUKGRldl9w cml2KSB8fAo+ID4gSEFTX1BDSF9LQlAoZGV2X3ByaXYpIHx8Cj4gPiAtICAgICAgICAgICAgICAg ICAgICAgICAgIEhBU19QQ0hfQ05QKGRldl9wcml2KSkKPiA+ICsgICAgICAgICAgICAgICAgICAg ICBpZiAoSEFTX1BDSF9JQ1AoZGV2X3ByaXYpKQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaWNwX2lycV9oYW5kbGVyKGRldl9wcml2LCBpaXIpOwo+ID4gKyAgICAgICAgICAgICAg ICAgICAgIGVsc2UgaWYgKEhBU19QQ0hfU1BUKGRldl9wcml2KSB8fAo+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEhBU19QQ0hfS0JQKGRldl9wcml2KSB8fAo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEhBU19QQ0hfQ05QKGRldl9wcml2KSkKPiA+ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHNwdF9pcnFfaGFuZGxlcihkZXZfcHJpdiwgaWlyKTsKPiA+ ICAgICAgICAgICAgICAgICAgICAgICBlbHNlCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjcHRfaXJxX2hhbmRsZXIoZGV2X3ByaXYsIGlpcik7Cj4gPiBAQCAtMzU4NCw2ICszNjYx LDkgQEAgc3RhdGljIHZvaWQgZ2VuMTFfaXJxX3Jlc2V0KHN0cnVjdCBkcm1fZGV2aWNlCj4gPiAq ZGV2KQo+ID4gICAgICAgR0VOM19JUlFfUkVTRVQoR0VOMTFfREVfSFBEXyk7Cj4gPiAgICAgICBH RU4zX0lSUV9SRVNFVChHRU4xMV9HVV9NSVNDXyk7Cj4gPiAgICAgICBHRU4zX0lSUV9SRVNFVChH RU44X1BDVV8pOwo+ID4gKwo+ID4gKyAgICAgaWYgKEhBU19QQ0hfSUNQKGRldl9wcml2KSkKPiA+ ICsgICAgICAgICAgICAgR0VOM19JUlFfUkVTRVQoU0RFKTsKPiA+ICB9Cj4gPiAKPiA+ICB2b2lk IGdlbjhfaXJxX3Bvd2VyX3dlbGxfcG9zdF9lbmFibGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUK PiA+ICpkZXZfcHJpdiwKPiA+IEBAIC0zNzAwLDYgKzM3ODAsMzUgQEAgc3RhdGljIHZvaWQgaWJ4 X2hwZF9pcnFfc2V0dXAoc3RydWN0Cj4gPiBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiA+ ICAgICAgIGlieF9ocGRfZGV0ZWN0aW9uX3NldHVwKGRldl9wcml2KTsKPiA+ICB9Cj4gPiAKPiA+ ICtzdGF0aWMgdm9pZCBpY3BfaHBkX2RldGVjdGlvbl9zZXR1cChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZQo+ID4gKmRldl9wcml2KQo+ID4gK3sKPiA+ICsgICAgIHUzMiBob3RwbHVnOwo+ID4gKwo+ ID4gKyAgICAgaG90cGx1ZyA9IEk5MTVfUkVBRChTSE9UUExVR19DVExfRERJKTsKPiA+ICsgICAg IGhvdHBsdWcgfD0gSUNQX0RESUFfSFBEX0VOQUJMRSB8Cj4gPiArICAgICAgICAgICAgICAgIElD UF9ERElCX0hQRF9FTkFCTEU7Cj4gPiArICAgICBJOTE1X1dSSVRFKFNIT1RQTFVHX0NUTF9EREks IGhvdHBsdWcpOwo+ID4gKwo+ID4gKyAgICAgaG90cGx1ZyA9IEk5MTVfUkVBRChTSE9UUExVR19D VExfVEMpOwo+ID4gKyAgICAgaG90cGx1ZyB8PSBJQ1BfVENfSFBEX0VOQUJMRShQT1JUX1RDMSkg fAo+ID4gKyAgICAgICAgICAgICAgICBJQ1BfVENfSFBEX0VOQUJMRShQT1JUX1RDMikgfAo+ID4g KyAgICAgICAgICAgICAgICBJQ1BfVENfSFBEX0VOQUJMRShQT1JUX1RDMykgfAo+ID4gKyAgICAg ICAgICAgICAgICBJQ1BfVENfSFBEX0VOQUJMRShQT1JUX1RDNCk7Cj4gPiArICAgICBJOTE1X1dS SVRFKFNIT1RQTFVHX0NUTF9UQywgaG90cGx1Zyk7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyB2 b2lkIGljcF9ocGRfaXJxX3NldHVwKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK PiA+ICt7Cj4gPiArICAgICB1MzIgaG90cGx1Z19pcnFzLCBlbmFibGVkX2lycXM7Cj4gPiArCj4g PiArICAgICBob3RwbHVnX2lycXMgPSBTREVfRERJX01BU0tfSUNQIHwgU0RFX1RDX01BU0tfSUNQ Owo+ID4gKyAgICAgZW5hYmxlZF9pcnFzID0gaW50ZWxfaHBkX2VuYWJsZWRfaXJxcyhkZXZfcHJp diwgaHBkX2ljcCk7Cj4gPiArCj4gPiArICAgICBpYnhfZGlzcGxheV9pbnRlcnJ1cHRfdXBkYXRl KGRldl9wcml2LCBob3RwbHVnX2lycXMsCj4gPiBlbmFibGVkX2lycXMpOwo+ID4gKwo+ID4gKyAg ICAgaWNwX2hwZF9kZXRlY3Rpb25fc2V0dXAoZGV2X3ByaXYpOwo+ID4gK30KPiA+ICsKPiA+ICBz dGF0aWMgdm9pZCBnZW4xMV9ocGRfZGV0ZWN0aW9uX3NldHVwKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlCj4gPiAqZGV2X3ByaXYpCj4gPiAgewo+ID4gICAgICAgdTMyIGhvdHBsdWc7Cj4gPiBAQCAt MzczMyw2ICszODQyLDkgQEAgc3RhdGljIHZvaWQgZ2VuMTFfaHBkX2lycV9zZXR1cChzdHJ1Y3QK PiA+IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ID4gICAgICAgUE9TVElOR19SRUFEKEdF TjExX0RFX0hQRF9JTVIpOwo+ID4gCj4gPiAgICAgICBnZW4xMV9ocGRfZGV0ZWN0aW9uX3NldHVw KGRldl9wcml2KTsKPiA+ICsKPiA+ICsgICAgIGlmIChIQVNfUENIX0lDUChkZXZfcHJpdikpCj4g PiArICAgICAgICAgICAgIGljcF9ocGRfaXJxX3NldHVwKGRldl9wcml2KTsKPiA+ICB9Cj4gPiAK PiA+ICBzdGF0aWMgdm9pZCBzcHRfaHBkX2RldGVjdGlvbl9zZXR1cChzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZQo+ID4gKmRldl9wcml2KQo+ID4gQEAgLTQxNjgsMTEgKzQyODAsMjkgQEAgc3RhdGlj IHZvaWQgZ2VuMTFfZ3RfaXJxX3Bvc3RpbnN0YWxsKHN0cnVjdAo+ID4gZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCj4gPiAgICAgICBJOTE1X1dSSVRFKEdFTjExX0dQTV9XR0JPWFBFUkZfSU5U Ul9NQVNLLCAgfjApOwo+ID4gIH0KPiA+IAo+ID4gK3N0YXRpYyB2b2lkIGljcF9pcnFfcG9zdGlu c3RhbGwoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+ICt7Cj4gPiArICAgICBzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Cj4gPiArICAgICB1MzIgbWFz ayA9IFNERV9HTUJVU19JQ1A7Cj4gPiArCj4gPiArICAgICBXQVJOX09OKEk5MTVfUkVBRChTREVJ RVIpICE9IDApOwo+ID4gKyAgICAgSTkxNV9XUklURShTREVJRVIsIDB4ZmZmZmZmZmYpOwo+ID4g KyAgICAgUE9TVElOR19SRUFEKFNERUlFUik7Cj4gPiArCj4gPiArICAgICBnZW4zX2Fzc2VydF9p aXJfaXNfemVybyhkZXZfcHJpdiwgU0RFSUlSKTsKPiA+ICsgICAgIEk5MTVfV1JJVEUoU0RFSU1S LCB+bWFzayk7Cj4gPiArCj4gPiArICAgICBpY3BfaHBkX2RldGVjdGlvbl9zZXR1cChkZXZfcHJp dik7Cj4gCj4gSGF2aW5nIGEgc2VudGVuY2UvcGFyYWdyYXBoIG9uIHRoZSBjb21taXQgbWVzc2Fn ZSBleHBsYWluaW5nIHdoeSB3ZQo+IGNhbgo+IGFmZm9yZCB0byBkbyB0aGlzIGluc3RlYWQgb2Yg Z29pbmcgdGhlIGlieF9pcnFfcHJlX3Bvc3RpbnN0YWxsKCkKPiBmb2xsb3dlZCBieSBpYnhfaXJx X3Bvc3RpbnN0YWxsKCkgZG9uZSBieSB0aGUgcHJldmlvdXMgcGxhdGZvcm1zCj4gd291bGQKPiBo ZWxwLgo+IAo+IE15IHVuZGVyc3RhbmRpbmcgaXMgdGhhdCB0aGlzIGlzIE9LLCBidXQgYSBjb25m aXJtYXRpb24gd291bGQgYWx3YXlzCj4gYmUKPiBmaW5lLgo+IAo+IAo+ID4gK30KPiA+ICsKPiA+ ICBzdGF0aWMgaW50IGdlbjExX2lycV9wb3N0aW5zdGFsbChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 KQo+ID4gIHsKPiA+ICAgICAgIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRl di0+ZGV2X3ByaXZhdGU7Cj4gPiAgICAgICB1MzIgZ3VfbWlzY19tYXNrZWQgPSBHRU4xMV9HVV9N SVNDX0dTRTsKPiA+IAo+ID4gKyAgICAgaWYgKEhBU19QQ0hfSUNQKGRldl9wcml2KSkKPiA+ICsg ICAgICAgICAgICAgaWNwX2lycV9wb3N0aW5zdGFsbChkZXYpOwo+ID4gKwo+ID4gICAgICAgZ2Vu MTFfZ3RfaXJxX3Bvc3RpbnN0YWxsKGRldl9wcml2KTsKPiA+ICAgICAgIGdlbjhfZGVfaXJxX3Bv c3RpbnN0YWxsKGRldl9wcml2KTsKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcmVnLmgKPiA+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+ ID4gaW5kZXggNGJmZDdhOS4uZTM0NzA1NSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcmVnLmgKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVn LmgKPiA+IEBAIC03NTE3LDYgKzc1MTcsNDYgQEAgZW51bSB7Cj4gPiAgI2RlZmluZSAgUE9SVEVf SE9UUExVR19TSE9SVF9ERVRFQ1QgICgxIDw8IDApCj4gPiAgI2RlZmluZSAgUE9SVEVfSE9UUExV R19MT05HX0RFVEVDVCAgICgyIDw8IDApCj4gPiAKPiA+ICsvKiBJQ1AgKi8KPiA+ICsjZGVmaW5l ICAgU0RFX1RDNF9IT1RQTFVHX0lDUCAgICAgICAgICAgICAgICAoMSA8PCAyNykKPiA+ICsjZGVm aW5lICAgU0RFX1RDM19IT1RQTFVHX0lDUCAgICAgICAgICAgICAgICAoMSA8PCAyNikKPiA+ICsj ZGVmaW5lICAgU0RFX1RDMl9IT1RQTFVHX0lDUCAgICAgICAgICAgICAgICAoMSA8PCAyNSkKPiA+ ICsjZGVmaW5lICAgU0RFX1RDMV9IT1RQTFVHX0lDUCAgICAgICAgICAgICAgICAoMSA8PCAyNCkK PiA+ICsjZGVmaW5lICAgU0RFX0dNQlVTX0lDUCAgICAgICAgICAgICAgICAgICAgICAoMSA8PCAy MykKPiA+ICsjZGVmaW5lICAgU0RFX0RESUJfSE9UUExVR19JQ1AgICAgICAgICAgICAgICAoMSA8 PCAxNykKPiA+ICsjZGVmaW5lICAgU0RFX0RESUFfSE9UUExVR19JQ1AgICAgICAgICAgICAgICAo MSA8PCAxNikKPiA+ICsKPiA+ICsjZGVmaW5lIFNERV9ERElfTUFTS19JQ1AgICAgICAgICAgICAg KFNERV9ERElCX0hPVFBMVUdfSUNQIHwKPiA+IFwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFNERV9ERElBX0hPVFBMVUdfSUNQKQo+ID4gKwo+ID4gKyNkZWZpbmUg U0RFX1RDX01BU0tfSUNQICAgICAgICAgICAgICAgICAgICAgIChTREVfVEM0X0hPVFBMVUdfSUNQ Cj4gPiA+ICAgICBcCj4gPiAKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFNERV9UQzNfSE9UUExVR19JQ1AgfAo+ID4gXAo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU0RFX1RDMl9IT1RQTFVHX0lDUCB8Cj4gPiBcCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTREVfVEMxX0hPVFBMVUdfSUNQKQo+IAo+ IE5vdyB0aGVzZSBkZWZpbml0aW9ucyBhcmUgcmlnaHQgYmVsb3cgUENIX1BPUlRfSE9UUExVRzIs IGJ1dCB0aGVzZQo+IGJpdHMKPiBhcmUgbm90IGZvciB0aGF0IHJlZ2lzdGVyLiBQbGVhc2UgbW92 ZSB0aGUgZGVmaW5pdGlvbnMgdG8gdGhlIHBsYWNlCj4gdGhhdCBoYXMgdGhlIG90aGVyIFNERSBk ZWZpbml0aW9ucy4gQWxzbyBwbGVhc2UgY2hhbmdlIHRoYXQgLyogSUNQICovCj4gY29tbWVudCB0 byBtYXRjaCB0aGUgc3R5bGUgdXNlZCBieSB0aGUgb3RoZXIgUENIczogLyogc291dGggZGlzcGxh eQo+IGVuZ2luZSBpbnRlcnJ1cHQ6IElDUCAqLyAoYWxzbyBwb3NzaWJseSBmaXhpbmcgdGhlICJD UFQvUFBUIiBjb21tZW50Cj4gdG8KPiAiQ1BUIC0gQ05QIiBvciBzb21ldGhpbmcgbGlrZSB0aGF0 Lgo+IFllcy4gVGhhdCBpcyBnb29kIHBvaW50Lgo+IFFRLCB0aGUgY2hhbmdlIG9mICJDUFQvUFBU Li4uLiIgd2lsbCBiZSBhIHNlcGFyYXRlIHBhdGNoIHRob3VnaCwKPiByaWdodD8KClNpbmNlIGl0 J3MganVzdCBhIHNpbmdsZSBsaW5lIGNvbW1lbnQgY2hhbmdlIGFuZCBpdCdzIHJlbGF0ZWQgdG8g eW91cgpjdXJyZW50IGNoYW5nZSAodXBkYXRlIHRvIHRoZSBiaXRzIG9mIHRoZSByZWdpc3RlciBp biBxdWVzdGlvbiksIEkKd291bGQgc2F5IHRoZXJlJ3Mgbm8gbmVlZCB0byBiZSBpbiBhIHNlcGFy YXRlIHBhdGNoIElNSE8sIGJ1dCBvZiBjb3Vyc2UKd2Ugd291bGQgYWxzbyBhY2NlcHQgdGhlIGNo YW5nZSBpbiBhIHNlcGFyYXRlIHBhdGNoLgoKCj4gCj4gPiArCj4gPiArLyogVGhpcyByZWdpc3Rl ciBpcyBhIHJldXNlIG9mIFBDSF9QT1JUX0hPVFBMVUcgcmVnaXN0ZXIuIFRoZSBTcGVjCj4gPiAr ICogaGFzIHRoZSBuYW1lIFNIT1RQTFVHX0NUTF9EREkgZm9yIElDUC4gTGV0IHVzIHN0aWNrIHRv IHRoZQo+ID4gU3BlYy4KPiAKPiBJIHRoaW5rIHRoZSBiZXN0IHdheSB0byBkZXNjcmliZSB3b3Vs ZCBiZSB0byBzYXkgdGhhdCB3aGF0IHdhcwo+IHByZXZpb3VzbHkgZG9uZSBieSBhIHNpbmdsZSBy ZWdpc3RlciAoUENIX1BPUlRfSE9UUExVRykgaXMgbm93IGRvbmUKPiBieQo+IHR3byByZWdpc3Rl cnMsIG9uZSBmb3IgRERJIGFuZCB0aGUgb3RoZXIgZm9yIFRDLCBhbmQgdGhhdCdzIHdoeSB3ZQo+ IGhhdmUKPiBicmFuZCBuZXcgZGVmaW5pdGlvbnMuCj4gCj4gVGhhbmtzIHBhdWxvIGZvciB0aGUg cmV2aWV3cy4gV2lsbCBtYWtlIHRoZSBjaGFuZ2VzLgo+IAo+IEFudXNoYSAKPiBPdGhlcndpc2Us IGxvb2tzIGdvb2QuCgpQbGVhc2UgZml4IHlvdXIgZW1haWwgY2xpZW50IHRvIGFkZCAiPiIgd2hl biB5b3UgcmVwbHkgdG8gZW1haWxzLCB0aGlzCmVtYWlsIHdhcyBzdXBlciBjb25mdXNpbmcuCgo+ IAo+IFRoYW5rcywKPiBQYXVsbwo+IAo+ID4gKyAqLwo+ID4gKwo+ID4gKyNkZWZpbmUgU0hPVFBM VUdfQ1RMX0RESSAgICAgICAgICAgICAgICAgICAgIF9NTUlPKDB4YzQwMzApCj4gPiArI2RlZmlu ZSAgIElDUF9ERElCX0hQRF9FTkFCTEUgICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCA3KQo+ ID4gKyNkZWZpbmUgICBJQ1BfRERJQl9IUERfU1RBVFVTX01BU0sgICAgICAgICAgICgzIDw8IDQp Cj4gPiArI2RlZmluZSAgIElDUF9ERElCX0hQRF9OT19ERVRFQ1QgICAgICAgICAgICAgKDAgPDwg NCkKPiA+ICsjZGVmaW5lICAgSUNQX0RESUJfSFBEX1NIT1JUX0RFVEVDVCAgICAgICAgICAoMSA8 PCA0KQo+ID4gKyNkZWZpbmUgICBJQ1BfRERJQl9IUERfTE9OR19ERVRFQ1QgICAgICAgICAgICgy IDw8IDQpCj4gPiArI2RlZmluZSAgIElDUF9ERElCX0hQRF9TSE9SVF9MT05HX0RFVEVDVCAgICAg KDMgPDwgNCkKPiA+ICsjZGVmaW5lICAgSUNQX0RESUFfSFBEX0VOQUJMRSAgICAgICAgICAgICAg ICAgICAgICAgICgxIDw8IDMpCj4gPiArI2RlZmluZSAgIElDUF9ERElBX0hQRF9TVEFUVVNfTUFT SyAgICAgICAgICAgKDMgPDwgMCkKPiA+ICsjZGVmaW5lICAgSUNQX0RESUFfSFBEX05PX0RFVEVD VCAgICAgICAgICAgICAoMCA8PCAwKQo+ID4gKyNkZWZpbmUgICBJQ1BfRERJQV9IUERfU0hPUlRf REVURUNUICAgICAgICAgICgxIDw8IDApCj4gPiArI2RlZmluZSAgIElDUF9ERElBX0hQRF9MT05H X0RFVEVDVCAgICAgICAgICAgKDIgPDwgMCkKPiA+ICsjZGVmaW5lICAgSUNQX0RESUFfSFBEX1NI T1JUX0xPTkdfREVURUNUICAgICAoMyA8PCAwKQo+ID4gKwo+ID4gKyNkZWZpbmUgU0hPVFBMVUdf Q1RMX1RDICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX01NSU8oMHhjNDAzNAo+ID4gKQo+ ID4gKyNkZWZpbmUgICBJQ1BfVENfSFBEX0VOQUJMRSh0Y19wb3J0KSAgICAgICAgICg4IDw8ICh0 Y19wb3J0KQo+ID4gKiA0KQo+ID4gKyNkZWZpbmUgICBJQ1BfVENfSFBEX0xPTkdfREVURUNUKHRj X3BvcnQpICAgICgyIDw8ICh0Y19wb3J0KSAqCj4gPiA0KQo+ID4gKyNkZWZpbmUgICBJQ1BfVENf SFBEX1NIT1JUX0RFVEVDVCh0Y19wb3J0KSAgICgxIDw8ICh0Y19wb3J0KSAqCj4gPiA0KQo+ID4g Kwo+ID4gICNkZWZpbmUgUENIX0dQSU9BICAgICAgICAgICAgICAgX01NSU8oMHhjNTAxMCkKPiA+ ICAjZGVmaW5lIFBDSF9HUElPQiAgICAgICAgICAgICAgIF9NTUlPKDB4YzUwMTQpCj4gPiAgI2Rl ZmluZSBQQ0hfR1BJT0MgICAgICAgICAgICAgICBfTU1JTygweGM1MDE4KQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK