From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: Re: [PATCH v12 1/6] drm/i915: mei_hdcp: I915 sends ddi index as per ME FW Date: Thu, 29 Aug 2019 09:26:23 +0530 Message-ID: <20190829035623.GB4606@intel.com> References: <20190828164216.405-1-ramalingam.c@intel.com> <20190828164216.405-2-ramalingam.c@intel.com> <5B8DA87D05A7694D9FA63FD143655C1B9DCA7479@hasmsx108.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <5B8DA87D05A7694D9FA63FD143655C1B9DCA7479@hasmsx108.ger.corp.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: "Winkler, Tomas" Cc: "Nikula, Jani" , intel-gfx , dri-devel List-Id: dri-devel@lists.freedesktop.org T24gMjAxOS0wOC0yOCBhdCAyMzoyMzo0MiArMDUzMCwgV2lua2xlciwgVG9tYXMgd3JvdGU6Cj4g PiBGVwo+ID4gCj4gPiBJOTE1IGNvbnZlcnRzIGl0J3MgcG9ydCB2YWx1ZSBpbnRvIGRkaSBpbmRl eCBkZWZpZW5kIGJ5IE1FIEZXIGFuZCBwYXNzIGl0IGFzIGEKPiA+IG1lbWJlciBvZiBoZGNwX3Bv cnRfZGF0YSBzdHJ1Y3R1cmUuCj4gPiAKPiA+IEhlbmNlIGV4cG9zZSB0aGUgZW51bSBtZWlfZndf ZGRpIHRvIEk5MTUgdGhyb3VnaCBpOTE1X21laV9pbnRlcmZhY2UuaC4KPiA+IAo+ID4gdjI6Cj4g PiAgIENvcHlyaWdodCB5ZWFycyBhcmUgYnVtcGVkIFtUb21hc10KPiA+IAo+ID4gU2lnbmVkLW9m Zi1ieTogUmFtYWxpbmdhbSBDIDxyYW1hbGluZ2FtLmNAaW50ZWwuY29tPgo+ID4gQWNrZWQtYnk6 IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+Cj4gPiBSZXZpZXdlZC1ieTogU2hh c2hhbmsgU2hhcm1hIDxzaGFzaGFuay5zaGFybWFAaW50ZWwuY29tPgo+ID4gQWNrZWQtYnk6IFRv bWFzIFdpbmtsZXIgPHRvbWFzLndpbmtsZXJAaW50ZWwuY29tPgo+ID4gLS0tCj4gPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9oZGNwLmMgfCAxNyArKysrKysrKysrKy0KPiA+ ICBkcml2ZXJzL21pc2MvbWVpL2hkY3AvbWVpX2hkY3AuYyAgICAgICAgICB8IDM0ICsrKysrKysr LS0tLS0tLS0tLS0tLS0tCj4gPiAgZHJpdmVycy9taXNjL21laS9oZGNwL21laV9oZGNwLmggICAg ICAgICAgfCAxMiAtLS0tLS0tLQo+ID4gIGluY2x1ZGUvZHJtL2k5MTVfbWVpX2hkY3BfaW50ZXJm YWNlLmggICAgIHwgMTggKysrKysrKysrKy0tCj4gPiAgNCBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNl cnRpb25zKCspLCAzOSBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaGRjcC5jCj4gPiBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfaGRjcC5jCj4gPiBpbmRleCA2ZWM1Y2VlYWI2MDEuLmU4YjA0Y2M4 ZmNiMSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf aGRjcC5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hkY3Au Ywo+ID4gQEAgLTEsOSArMSwxMSBAQAo+ID4gIC8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBN SVQgKi8KPiA+ICAvKgo+ID4gICAqIENvcHlyaWdodCAoQykgMjAxNyBHb29nbGUsIEluYy4KPiA+ ICsgKiBDb3B5cmlnaHQgXyAyMDE3LTIwMTksIEludGVsIENvcnBvcmF0aW9uLgo+IAo+IFNvbWV0 aGluZyBoYXBwZW5lZCBoZXJlIHdpdGggKEMpID8KSW4gZmV3IEk5MTUgZmlsZXMgSSBhbSBzZWVp bmcgdGhpcyBmb3JtYXQgb2YgY29weXJpZ2h0IHRvby4gSWYgdGhpcyBpcyBub3QKcmlnaHQgSSBj b3VsZCBhZGQgKEMpIHRvby4KCi1SYW0KPiAKPiA+ICAgKgo+ID4gICAqIEF1dGhvcnM6Cj4gPiAg ICogU2VhbiBQYXVsIDxzZWFucGF1bEBjaHJvbWl1bS5vcmc+Cj4gPiArICogUmFtYWxpbmdhbSBD IDxyYW1hbGluZ2FtLmNAaW50ZWwuY29tPgo+ID4gICAqLwo+ID4gCj4gPiAgI2luY2x1ZGUgPGxp bnV4L2NvbXBvbmVudC5oPgo+ID4gQEAgLTE3NDksMTMgKzE3NTEsMjYgQEAgc3RhdGljIGNvbnN0 IHN0cnVjdCBjb21wb25lbnRfb3BzCj4gPiBpOTE1X2hkY3BfY29tcG9uZW50X29wcyA9IHsKPiA+ ICAJLnVuYmluZCA9IGk5MTVfaGRjcF9jb21wb25lbnRfdW5iaW5kLAo+ID4gIH07Cj4gPiAKPiA+ ICtzdGF0aWMgaW5saW5lCj4gPiArZW51bSBtZWlfZndfZGRpIGludGVsX2dldF9tZWlfZndfZGRp X2luZGV4KGVudW0gcG9ydCBwb3J0KSB7Cj4gPiArCXN3aXRjaCAocG9ydCkgewo+ID4gKwljYXNl IFBPUlRfQToKPiA+ICsJCXJldHVybiBNRUlfRERJX0E7Cj4gPiArCWNhc2UgUE9SVF9CIC4uLiBQ T1JUX0Y6Cj4gPiArCQlyZXR1cm4gKGVudW0gbWVpX2Z3X2RkaSlwb3J0Owo+ID4gKwlkZWZhdWx0 Ogo+ID4gKwkJcmV0dXJuIE1FSV9ERElfSU5WQUxJRF9QT1JUOwo+ID4gKwl9Cj4gPiArfQo+ID4g Kwo+ID4gIHN0YXRpYyBpbmxpbmUgaW50IGluaXRpYWxpemVfaGRjcF9wb3J0X2RhdGEoc3RydWN0 IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4gIAkJCQkJICAgIGNvbnN0IHN0cnVjdCBp bnRlbF9oZGNwX3NoaW0gKnNoaW0pCj4gPiB7Cj4gPiAgCXN0cnVjdCBpbnRlbF9oZGNwICpoZGNw ID0gJmNvbm5lY3Rvci0+aGRjcDsKPiA+ICAJc3RydWN0IGhkY3BfcG9ydF9kYXRhICpkYXRhID0g JmhkY3AtPnBvcnRfZGF0YTsKPiA+IAo+ID4gLQlkYXRhLT5wb3J0ID0gY29ubmVjdG9yLT5lbmNv ZGVyLT5wb3J0Owo+ID4gKwlkYXRhLT5md19kZGkgPSBpbnRlbF9nZXRfbWVpX2Z3X2RkaV9pbmRl eChjb25uZWN0b3ItPmVuY29kZXItCj4gPiA+cG9ydCk7Cj4gPiAgCWRhdGEtPnBvcnRfdHlwZSA9 ICh1OClIRENQX1BPUlRfVFlQRV9JTlRFR1JBVEVEOwo+ID4gIAlkYXRhLT5wcm90b2NvbCA9ICh1 OClzaGltLT5wcm90b2NvbDsKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWlzYy9tZWkv aGRjcC9tZWlfaGRjcC5jCj4gPiBiL2RyaXZlcnMvbWlzYy9tZWkvaGRjcC9tZWlfaGRjcC5jCj4g PiBpbmRleCBjNjgxZjZmYWIzNDIuLjM2MzhjNzdlYmEyNiAxMDA2NDQKPiA+IC0tLSBhL2RyaXZl cnMvbWlzYy9tZWkvaGRjcC9tZWlfaGRjcC5jCj4gPiArKysgYi9kcml2ZXJzL21pc2MvbWVpL2hk Y3AvbWVpX2hkY3AuYwo+ID4gQEAgLTI3LDE4ICsyNyw2IEBACj4gPiAKPiA+ICAjaW5jbHVkZSAi bWVpX2hkY3AuaCIKPiA+IAo+ID4gLXN0YXRpYyBpbmxpbmUgdTggbWVpX2dldF9kZGlfaW5kZXgo ZW51bSBwb3J0IHBvcnQpIC17Cj4gPiAtCXN3aXRjaCAocG9ydCkgewo+ID4gLQljYXNlIFBPUlRf QToKPiA+IC0JCXJldHVybiBNRUlfRERJX0E7Cj4gPiAtCWNhc2UgUE9SVF9CIC4uLiBQT1JUX0Y6 Cj4gPiAtCQlyZXR1cm4gKHU4KXBvcnQ7Cj4gPiAtCWRlZmF1bHQ6Cj4gPiAtCQlyZXR1cm4gTUVJ X0RESV9JTlZBTElEX1BPUlQ7Cj4gPiAtCX0KPiA+IC19Cj4gPiAtCj4gPiAgLyoqCj4gPiAgICog bWVpX2hkY3BfaW5pdGlhdGVfc2Vzc2lvbigpIC0gSW5pdGlhdGUgYSBXaXJlZCBIRENQMi4yIFR4 IFNlc3Npb24gaW4gTUUgRlcKPiA+ICAgKiBAZGV2OiBkZXZpY2UgY29ycmVzcG9uZGluZyB0byB0 aGUgbWVpX2NsX2RldmljZSBAQCAtNjksNyArNTcsNyBAQAo+ID4gbWVpX2hkY3BfaW5pdGlhdGVf c2Vzc2lvbihzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBoZGNwX3BvcnRfZGF0YSAqZGF0YSwK PiA+IAo+ID4gCVdJUkVEX0NNRF9CVUZfTEVOX0lOSVRJQVRFX0hEQ1AyX1NFU1NJT05fSU47Cj4g PiAKPiA+ICAJc2Vzc2lvbl9pbml0X2luLnBvcnQuaW50ZWdyYXRlZF9wb3J0X3R5cGUgPSBkYXRh LT5wb3J0X3R5cGU7Cj4gPiAtCXNlc3Npb25faW5pdF9pbi5wb3J0LnBoeXNpY2FsX3BvcnQgPSBt ZWlfZ2V0X2RkaV9pbmRleChkYXRhLT5wb3J0KTsKPiA+ICsJc2Vzc2lvbl9pbml0X2luLnBvcnQu cGh5c2ljYWxfcG9ydCA9ICh1OClkYXRhLT5md19kZGk7Cj4gPiAgCXNlc3Npb25faW5pdF9pbi5w cm90b2NvbCA9IGRhdGEtPnByb3RvY29sOwo+ID4gCj4gPiAgCWJ5dGUgPSBtZWlfY2xkZXZfc2Vu ZChjbGRldiwgKHU4ICopJnNlc3Npb25faW5pdF9pbiwgQEAgLTEzOCw3Cj4gPiArMTI2LDcgQEAg bWVpX2hkY3BfdmVyaWZ5X3JlY2VpdmVyX2NlcnRfcHJlcGFyZV9rbShzdHJ1Y3QgZGV2aWNlICpk ZXYsCj4gPiAKPiA+IAlXSVJFRF9DTURfQlVGX0xFTl9WRVJJRllfUkVDRUlWRVJfQ0VSVF9JTjsK PiA+IAo+ID4gIAl2ZXJpZnlfcnhjZXJ0X2luLnBvcnQuaW50ZWdyYXRlZF9wb3J0X3R5cGUgPSBk YXRhLT5wb3J0X3R5cGU7Cj4gPiAtCXZlcmlmeV9yeGNlcnRfaW4ucG9ydC5waHlzaWNhbF9wb3J0 ID0gbWVpX2dldF9kZGlfaW5kZXgoZGF0YS0+cG9ydCk7Cj4gPiArCXZlcmlmeV9yeGNlcnRfaW4u cG9ydC5waHlzaWNhbF9wb3J0ID0gKHU4KWRhdGEtPmZ3X2RkaTsKPiA+IAo+ID4gIAl2ZXJpZnlf cnhjZXJ0X2luLmNlcnRfcnggPSByeF9jZXJ0LT5jZXJ0X3J4Owo+ID4gIAltZW1jcHkodmVyaWZ5 X3J4Y2VydF9pbi5yX3J4LCAmcnhfY2VydC0+cl9yeCwgSERDUF8yXzJfUlJYX0xFTik7Cj4gPiBA QCAtMjA4LDcgKzE5Niw3IEBAIG1laV9oZGNwX3ZlcmlmeV9ocHJpbWUoc3RydWN0IGRldmljZSAq ZGV2LCBzdHJ1Y3QKPiA+IGhkY3BfcG9ydF9kYXRhICpkYXRhLAo+ID4gIAlzZW5kX2hwcmltZV9p bi5oZWFkZXIuYnVmZmVyX2xlbiA9Cj4gPiBXSVJFRF9DTURfQlVGX0xFTl9BS0VfU0VORF9IUFJJ TUVfSU47Cj4gPiAKPiA+ICAJc2VuZF9ocHJpbWVfaW4ucG9ydC5pbnRlZ3JhdGVkX3BvcnRfdHlw ZSA9IGRhdGEtPnBvcnRfdHlwZTsKPiA+IC0Jc2VuZF9ocHJpbWVfaW4ucG9ydC5waHlzaWNhbF9w b3J0ID0gbWVpX2dldF9kZGlfaW5kZXgoZGF0YS0+cG9ydCk7Cj4gPiArCXNlbmRfaHByaW1lX2lu LnBvcnQucGh5c2ljYWxfcG9ydCA9ICh1OClkYXRhLT5md19kZGk7Cj4gPiAKPiA+ICAJbWVtY3B5 KHNlbmRfaHByaW1lX2luLmhfcHJpbWUsIHJ4X2hwcmltZS0+aF9wcmltZSwKPiA+ICAJICAgICAg IEhEQ1BfMl8yX0hfUFJJTUVfTEVOKTsKPiA+IEBAIC0yNjUsNyArMjUzLDcgQEAgbWVpX2hkY3Bf c3RvcmVfcGFpcmluZ19pbmZvKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0Cj4gPiBoZGNwX3Bv cnRfZGF0YSAqZGF0YSwKPiA+IAo+ID4gCVdJUkVEX0NNRF9CVUZfTEVOX1NFTkRfUEFJUklOR19J TkZPX0lOOwo+ID4gCj4gPiAgCXBhaXJpbmdfaW5mb19pbi5wb3J0LmludGVncmF0ZWRfcG9ydF90 eXBlID0gZGF0YS0+cG9ydF90eXBlOwo+ID4gLQlwYWlyaW5nX2luZm9faW4ucG9ydC5waHlzaWNh bF9wb3J0ID0gbWVpX2dldF9kZGlfaW5kZXgoZGF0YS0+cG9ydCk7Cj4gPiArCXBhaXJpbmdfaW5m b19pbi5wb3J0LnBoeXNpY2FsX3BvcnQgPSAodTgpZGF0YS0+ZndfZGRpOwo+ID4gCj4gPiAgCW1l bWNweShwYWlyaW5nX2luZm9faW4uZV9raF9rbSwgcGFpcmluZ19pbmZvLT5lX2toX2ttLAo+ID4g IAkgICAgICAgSERDUF8yXzJfRV9LSF9LTV9MRU4pOwo+ID4gQEAgLTMyMyw3ICszMTEsNyBAQCBt ZWlfaGRjcF9pbml0aWF0ZV9sb2NhbGl0eV9jaGVjayhzdHJ1Y3QgZGV2aWNlICpkZXYsCj4gPiAg CWxjX2luaXRfaW4uaGVhZGVyLmJ1ZmZlcl9sZW4gPQo+ID4gV0lSRURfQ01EX0JVRl9MRU5fSU5J VF9MT0NBTElUWV9DSEVDS19JTjsKPiA+IAo+ID4gIAlsY19pbml0X2luLnBvcnQuaW50ZWdyYXRl ZF9wb3J0X3R5cGUgPSBkYXRhLT5wb3J0X3R5cGU7Cj4gPiAtCWxjX2luaXRfaW4ucG9ydC5waHlz aWNhbF9wb3J0ID0gbWVpX2dldF9kZGlfaW5kZXgoZGF0YS0+cG9ydCk7Cj4gPiArCWxjX2luaXRf aW4ucG9ydC5waHlzaWNhbF9wb3J0ID0gKHU4KWRhdGEtPmZ3X2RkaTsKPiA+IAo+ID4gIAlieXRl ID0gbWVpX2NsZGV2X3NlbmQoY2xkZXYsICh1OCAqKSZsY19pbml0X2luLCBzaXplb2YobGNfaW5p dF9pbikpOwo+ID4gIAlpZiAoYnl0ZSA8IDApIHsKPiA+IEBAIC0zNzgsNyArMzY2LDcgQEAgbWVp X2hkY3BfdmVyaWZ5X2xwcmltZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdAo+ID4gaGRjcF9w b3J0X2RhdGEgKmRhdGEsCj4gPiAKPiA+IAlXSVJFRF9DTURfQlVGX0xFTl9WQUxJREFURV9MT0NB TElUWV9JTjsKPiA+IAo+ID4gIAl2ZXJpZnlfbHByaW1lX2luLnBvcnQuaW50ZWdyYXRlZF9wb3J0 X3R5cGUgPSBkYXRhLT5wb3J0X3R5cGU7Cj4gPiAtCXZlcmlmeV9scHJpbWVfaW4ucG9ydC5waHlz aWNhbF9wb3J0ID0gbWVpX2dldF9kZGlfaW5kZXgoZGF0YS0+cG9ydCk7Cj4gPiArCXZlcmlmeV9s cHJpbWVfaW4ucG9ydC5waHlzaWNhbF9wb3J0ID0gKHU4KWRhdGEtPmZ3X2RkaTsKPiA+IAo+ID4g IAltZW1jcHkodmVyaWZ5X2xwcmltZV9pbi5sX3ByaW1lLCByeF9scHJpbWUtPmxfcHJpbWUsCj4g PiAgCSAgICAgICBIRENQXzJfMl9MX1BSSU1FX0xFTik7Cj4gPiBAQCAtNDM1LDcgKzQyMyw3IEBA IHN0YXRpYyBpbnQgbWVpX2hkY3BfZ2V0X3Nlc3Npb25fa2V5KHN0cnVjdCBkZXZpY2UKPiA+ICpk ZXYsCj4gPiAgCWdldF9za2V5X2luLmhlYWRlci5idWZmZXJfbGVuID0KPiA+IFdJUkVEX0NNRF9C VUZfTEVOX0dFVF9TRVNTSU9OX0tFWV9JTjsKPiA+IAo+ID4gIAlnZXRfc2tleV9pbi5wb3J0Lmlu dGVncmF0ZWRfcG9ydF90eXBlID0gZGF0YS0+cG9ydF90eXBlOwo+ID4gLQlnZXRfc2tleV9pbi5w b3J0LnBoeXNpY2FsX3BvcnQgPSBtZWlfZ2V0X2RkaV9pbmRleChkYXRhLT5wb3J0KTsKPiA+ICsJ Z2V0X3NrZXlfaW4ucG9ydC5waHlzaWNhbF9wb3J0ID0gKHU4KWRhdGEtPmZ3X2RkaTsKPiA+IAo+ ID4gIAlieXRlID0gbWVpX2NsZGV2X3NlbmQoY2xkZXYsICh1OCAqKSZnZXRfc2tleV9pbiwgc2l6 ZW9mKGdldF9za2V5X2luKSk7Cj4gPiAgCWlmIChieXRlIDwgMCkgewo+ID4gQEAgLTQ5OSw3ICs0 ODcsNyBAQCBtZWlfaGRjcF9yZXBlYXRlcl9jaGVja19mbG93X3ByZXBhcmVfYWNrKHN0cnVjdAo+ ID4gZGV2aWNlICpkZXYsCj4gPiAKPiA+IAlXSVJFRF9DTURfQlVGX0xFTl9WRVJJRllfUkVQRUFU RVJfSU47Cj4gPiAKPiA+ICAJdmVyaWZ5X3JlcGVhdGVyX2luLnBvcnQuaW50ZWdyYXRlZF9wb3J0 X3R5cGUgPSBkYXRhLT5wb3J0X3R5cGU7Cj4gPiAtCXZlcmlmeV9yZXBlYXRlcl9pbi5wb3J0LnBo eXNpY2FsX3BvcnQgPSBtZWlfZ2V0X2RkaV9pbmRleChkYXRhLQo+ID4gPnBvcnQpOwo+ID4gKwl2 ZXJpZnlfcmVwZWF0ZXJfaW4ucG9ydC5waHlzaWNhbF9wb3J0ID0gKHU4KWRhdGEtPmZ3X2RkaTsK PiA+IAo+ID4gIAltZW1jcHkodmVyaWZ5X3JlcGVhdGVyX2luLnJ4X2luZm8sIHJlcF90b3BvbG9n eS0+cnhfaW5mbywKPiA+ICAJICAgICAgIEhEQ1BfMl8yX1JYSU5GT19MRU4pOwo+ID4gQEAgLTU2 OSw3ICs1NTcsNyBAQCBzdGF0aWMgaW50IG1laV9oZGNwX3ZlcmlmeV9tcHJpbWUoc3RydWN0IGRl dmljZSAqZGV2LAo+ID4gCj4gPiAJV0lSRURfQ01EX0JVRl9MRU5fUkVQRUFURVJfQVVUSF9TVFJF QU1fUkVRX01JTl9JTjsKPiA+IAo+ID4gIAl2ZXJpZnlfbXByaW1lX2luLnBvcnQuaW50ZWdyYXRl ZF9wb3J0X3R5cGUgPSBkYXRhLT5wb3J0X3R5cGU7Cj4gPiAtCXZlcmlmeV9tcHJpbWVfaW4ucG9y dC5waHlzaWNhbF9wb3J0ID0gbWVpX2dldF9kZGlfaW5kZXgoZGF0YS0+cG9ydCk7Cj4gPiArCXZl cmlmeV9tcHJpbWVfaW4ucG9ydC5waHlzaWNhbF9wb3J0ID0gKHU4KWRhdGEtPmZ3X2RkaTsKPiA+ IAo+ID4gIAltZW1jcHkodmVyaWZ5X21wcmltZV9pbi5tX3ByaW1lLCBzdHJlYW1fcmVhZHktPm1f cHJpbWUsCj4gPiAgCSAgICAgICBIRENQXzJfMl9NUFJJTUVfTEVOKTsKPiA+IEBAIC02MzAsNyAr NjE4LDcgQEAgc3RhdGljIGludCBtZWlfaGRjcF9lbmFibGVfYXV0aGVudGljYXRpb24oc3RydWN0 Cj4gPiBkZXZpY2UgKmRldiwKPiA+ICAJZW5hYmxlX2F1dGhfaW4uaGVhZGVyLmJ1ZmZlcl9sZW4g PQo+ID4gV0lSRURfQ01EX0JVRl9MRU5fRU5BQkxFX0FVVEhfSU47Cj4gPiAKPiA+ICAJZW5hYmxl X2F1dGhfaW4ucG9ydC5pbnRlZ3JhdGVkX3BvcnRfdHlwZSA9IGRhdGEtPnBvcnRfdHlwZTsKPiA+ IC0JZW5hYmxlX2F1dGhfaW4ucG9ydC5waHlzaWNhbF9wb3J0ID0gbWVpX2dldF9kZGlfaW5kZXgo ZGF0YS0+cG9ydCk7Cj4gPiArCWVuYWJsZV9hdXRoX2luLnBvcnQucGh5c2ljYWxfcG9ydCA9ICh1 OClkYXRhLT5md19kZGk7Cj4gPiAgCWVuYWJsZV9hdXRoX2luLnN0cmVhbV90eXBlID0gZGF0YS0+ c3RyZWFtc1swXS5zdHJlYW1fdHlwZTsKPiA+IAo+ID4gIAlieXRlID0gbWVpX2NsZGV2X3NlbmQo Y2xkZXYsICh1OCAqKSZlbmFibGVfYXV0aF9pbiwgQEAgLTY4NCw3Cj4gPiArNjcyLDcgQEAgbWVp X2hkY3BfY2xvc2Vfc2Vzc2lvbihzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBoZGNwX3BvcnRf ZGF0YQo+ID4gKmRhdGEpCj4gPiAgCQkJCVdJUkVEX0NNRF9CVUZfTEVOX0NMT1NFX1NFU1NJT05f SU47Cj4gPiAKPiA+ICAJc2Vzc2lvbl9jbG9zZV9pbi5wb3J0LmludGVncmF0ZWRfcG9ydF90eXBl ID0gZGF0YS0+cG9ydF90eXBlOwo+ID4gLQlzZXNzaW9uX2Nsb3NlX2luLnBvcnQucGh5c2ljYWxf cG9ydCA9IG1laV9nZXRfZGRpX2luZGV4KGRhdGEtPnBvcnQpOwo+ID4gKwlzZXNzaW9uX2Nsb3Nl X2luLnBvcnQucGh5c2ljYWxfcG9ydCA9ICh1OClkYXRhLT5md19kZGk7Cj4gPiAKPiA+ICAJYnl0 ZSA9IG1laV9jbGRldl9zZW5kKGNsZGV2LCAodTggKikmc2Vzc2lvbl9jbG9zZV9pbiwKPiA+ICAJ CQkgICAgICBzaXplb2Yoc2Vzc2lvbl9jbG9zZV9pbikpOwo+ID4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvbWlzYy9tZWkvaGRjcC9tZWlfaGRjcC5oCj4gPiBiL2RyaXZlcnMvbWlzYy9tZWkvaGRjcC9t ZWlfaGRjcC5oCj4gPiBpbmRleCBlNGIxY2Q1NGM4NTMuLmU2MDI4MmViMmQ0OCAxMDA2NDQKPiA+ IC0tLSBhL2RyaXZlcnMvbWlzYy9tZWkvaGRjcC9tZWlfaGRjcC5oCj4gPiArKysgYi9kcml2ZXJz L21pc2MvbWVpL2hkY3AvbWVpX2hkY3AuaAo+ID4gQEAgLTM2MiwxNiArMzYyLDQgQEAgc3RydWN0 IHdpcmVkX2NtZF9yZXBlYXRlcl9hdXRoX3N0cmVhbV9yZXFfb3V0IHsKPiA+ICAJc3RydWN0IGhk Y3BfY21kX2hlYWRlcgloZWFkZXI7Cj4gPiAgCXN0cnVjdCBoZGNwX3BvcnRfaWQJcG9ydDsKPiA+ ICB9IF9fcGFja2VkOwo+ID4gLQo+ID4gLWVudW0gbWVpX2Z3X2RkaSB7Cj4gPiAtCU1FSV9ERElf SU5WQUxJRF9QT1JUID0gMHgwLAo+ID4gLQo+ID4gLQlNRUlfRERJX0IgPSAxLAo+ID4gLQlNRUlf RERJX0MsCj4gPiAtCU1FSV9ERElfRCwKPiA+IC0JTUVJX0RESV9FLAo+ID4gLQlNRUlfRERJX0Ys Cj4gPiAtCU1FSV9ERElfQSA9IDcsCj4gPiAtCU1FSV9ERElfUkFOR0VfRU5EID0gTUVJX0RESV9B LAo+ID4gLX07Cj4gPiAgI2VuZGlmIC8qIF9fTUVJX0hEQ1BfSF9fICovCj4gPiBkaWZmIC0tZ2l0 IGEvaW5jbHVkZS9kcm0vaTkxNV9tZWlfaGRjcF9pbnRlcmZhY2UuaAo+ID4gYi9pbmNsdWRlL2Ry bS9pOTE1X21laV9oZGNwX2ludGVyZmFjZS5oCj4gPiBpbmRleCA4YzM0NDI1NTE0NmEuLjA4Njcw YWE2NTBkNCAxMDA2NDQKPiA+IC0tLSBhL2luY2x1ZGUvZHJtL2k5MTVfbWVpX2hkY3BfaW50ZXJm YWNlLmgKPiA+ICsrKyBiL2luY2x1ZGUvZHJtL2k5MTVfbWVpX2hkY3BfaW50ZXJmYWNlLmgKPiA+ IEBAIC0xLDYgKzEsNiBAQAo+ID4gIC8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiAoR1BMLTIu MCspICovCj4gPiAgLyoKPiA+IC0gKiBDb3B5cmlnaHQgwqkgMjAxNy0yMDE4IEludGVsIENvcnBv cmF0aW9uCj4gPiArICogQ29weXJpZ2h0IMKpIDIwMTctMjAxOSBJbnRlbCBDb3Jwb3JhdGlvbgo+ ID4gICAqCj4gPiAgICogQXV0aG9yczoKPiA+ICAgKiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0u Y0BpbnRlbC5jb20+IEBAIC00Miw5ICs0MiwyMSBAQCBlbnVtCj4gPiBoZGNwX3dpcmVkX3Byb3Rv Y29sIHsKPiA+ICAJSERDUF9QUk9UT0NPTF9EUAo+ID4gIH07Cj4gPiAKPiA+ICtlbnVtIG1laV9m d19kZGkgewo+ID4gKwlNRUlfRERJX0lOVkFMSURfUE9SVCA9IDB4MCwKPiA+ICsKPiA+ICsJTUVJ X0RESV9CID0gMSwKPiA+ICsJTUVJX0RESV9DLAo+ID4gKwlNRUlfRERJX0QsCj4gPiArCU1FSV9E RElfRSwKPiA+ICsJTUVJX0RESV9GLAo+ID4gKwlNRUlfRERJX0EgPSA3LAo+ID4gKwlNRUlfRERJ X1JBTkdFX0VORCA9IE1FSV9ERElfQSwKPiA+ICt9Owo+ID4gKwo+ID4gIC8qKgo+ID4gICAqIHN0 cnVjdCBoZGNwX3BvcnRfZGF0YSAtIGludGVsIHNwZWNpZmljIEhEQ1AgcG9ydCBkYXRhCj4gPiAt ICogQHBvcnQ6IHBvcnQgaW5kZXggYXMgcGVyIEk5MTUKPiA+ICsgKiBAZndfZGRpOiBkZGkgaW5k ZXggYXMgcGVyIE1FIEZXCj4gPiAgICogQHBvcnRfdHlwZTogSERDUCBwb3J0IHR5cGUgYXMgcGVy IE1FIEZXIGNsYXNzaWZpY2F0aW9uCj4gPiAgICogQHByb3RvY29sOiBIRENQIGFkYXB0YXRpb24g YXMgcGVyIE1FIEZXCj4gPiAgICogQGs6IE5vIG9mIHN0cmVhbXMgdHJhbnNtaXR0ZWQgb24gYSBw b3J0LiBPbmx5IG9uIERQIE1TVCB0aGlzIGlzICE9IDEgQEAgLQo+ID4gNTYsNyArNjgsNyBAQCBl bnVtIGhkY3Bfd2lyZWRfcHJvdG9jb2wgewo+ID4gICAqCSAgICAgc3RyZWFtcwo+ID4gICAqLwo+ ID4gIHN0cnVjdCBoZGNwX3BvcnRfZGF0YSB7Cj4gPiAtCWVudW0gcG9ydCBwb3J0Owo+ID4gKwll bnVtIG1laV9md19kZGkgZndfZGRpOwo+ID4gIAl1OCBwb3J0X3R5cGU7Cj4gPiAgCXU4IHByb3Rv Y29sOwo+ID4gIAl1MTYgazsKPiA+IC0tCj4gPiAyLjIwLjEKPiAKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmkt ZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs