From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 18/20] drm/i915: YCBCR 420 support for LSPCON Date: Thu, 13 Jul 2017 16:13:26 +0300 Message-ID: <20170713131326.GF12629@intel.com> References: <1499685528-6926-1-git-send-email-shashank.sharma@intel.com> <1499685528-6926-19-git-send-email-shashank.sharma@intel.com> <20170712171542.GH12629@intel.com> <773167db-9a62-65b6-cce3-e4ad9e6d7f19@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: <773167db-9a62-65b6-cce3-e4ad9e6d7f19@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Sharma, Shashank" Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBKdWwgMTMsIDIwMTcgYXQgMTA6MzI6MDBBTSArMDUzMCwgU2hhcm1hLCBTaGFzaGFu ayB3cm90ZToKPiBSZWdhcmRzCj4gCj4gU2hhc2hhbmsKPiAKPiAKPiBPbiA3LzEyLzIwMTcgMTA6 NDUgUE0sIFZpbGxlIFN5cmrDpGzDpCB3cm90ZToKPiA+IE9uIE1vbiwgSnVsIDEwLCAyMDE3IGF0 IDA0OjQ4OjQ2UE0gKzA1MzAsIFNoYXNoYW5rIFNoYXJtYSB3cm90ZToKPiA+PiBMU1BDT04gY2hp cHMgc3VwcG9ydCBZQ0JDUjQyMCBvdXRwdXRzLiBUbyBiZSBhYmxlIHRvIGdldAo+ID4+IFlDQkNS NDIwIG91dHB1dCBmcm9tIExTUENPTiBjaGlwLCB0aGUgc291cmNlIHNob3VsZDoKPiA+PiAtIEdl bmVyYXRlIFlDQkNSNDQ0IEhETUkgb3V0cHV0Cj4gPj4gLSBTZXQgQVZJIGluZm9mcmFtZXMgZm9y IGEgWUNCQ1I0MjAgb3V0cHV0Lgo+ID4+Cj4gPj4gTFNQQ09OIEZXIGdldHMgdGhlIGluZm9ybWF0 aW9uIGZyb20gQVZJIGluZm9mcmFtZXMsIGFuZCBnZW5lcmF0ZXMKPiA+PiBZQ0JDUjQyMCBvdXRw dXQgZnJvbSBhIFlDQkNSNDQ0IGlucHV0LiBUaGlzIHBhdGNoIGFkZHMgdGhlIG5lY2Vzc2FyeQo+ ID4+IGNoYW5nZXMgdG8gZHJpdmUgWUNCQ1I0MjAgb3V0cHV0IGZyb20gTFNQQ09OIGJhc2VkIEhE TUkgb3V0cHV0Lgo+ID4+Cj4gPj4gQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBs aW51eC5pbnRlbC5jb20+Cj4gPj4gQ2M6IEltcmUgRGVhayA8aW1yZS5kZWFrQGludGVsLmNvbT4K PiA+PiBTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFybWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRl bC5jb20+Cj4gPj4gLS0tCj4gPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMgfCAxMCArKysrKysrLS0tCj4gPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5j ICAgICAgfCAxNiArKysrKysrKysrKysrKystCj4gPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCAgICAgfCAyMCArKysrKysrKysrKysrKysrKy0tLQo+ID4+ICAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfaGRtaS5jICAgIHwgIDcgKysrKystLQo+ID4+ICAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfbHNwY29uLmMgIHwgMTcgKysrKysrKysrKysrKysrKysKPiA+PiAg IDUgZmlsZXMgY2hhbmdlZCwgNjEgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKPiA+Pgo+ ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiA+PiBpbmRleCBjNWZmNTY4Li5j M2M3YjMxIDEwMDY0NAo+ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ID4+ IEBAIC04MTI1LDkgKzgxMjUsMTEgQEAgc3RhdGljIHZvaWQgaGFzd2VsbF9zZXRfcGlwZW1pc2Mo c3RydWN0IGRybV9jcnRjICpjcnRjKQo+ID4+ICAgCQkJdmFsIHw9IFBJUEVNSVNDX0RJVEhFUl9F TkFCTEUgfCBQSVBFTUlTQ19ESVRIRVJfVFlQRV9TUDsKPiA+PiAgIAo+ID4+ICAgCQlpZiAoY29u ZmlnLT55Y2JjcjQyMCkgewo+ID4+IC0JCQl2YWwgfD0gUElQRU1JU0NfT1VUUFVUX1lDQkNSIHwK PiA+PiAtCQkJCVBJUEVNSVNDX1lDQkNSNDIwX0VOQUJMRSB8Cj4gPj4gLQkJCQlQSVBFTUlTQ19Z Q0JDUjQyMF9NT0RFX0JMRU5EOwo+ID4+ICsJCQl2YWwgfD0gUElQRU1JU0NfT1VUUFVUX1lDQkNS Owo+ID4+ICsKPiA+PiArCQkJaWYgKCFjb25maWctPmxzcGNvbl9hY3RpdmUpCj4gPj4gKwkJCQl2 YWwgfD0gUElQRU1JU0NfWUNCQ1I0MjBfRU5BQkxFIHwKPiA+PiArCQkJCQlQSVBFTUlTQ19ZQ0JD UjQyMF9NT0RFX0JMRU5EOwo+ID4+ICAgCQl9Cj4gPj4gICAKPiA+PiAgIAkJSTkxNV9XUklURShQ SVBFTUlTQyhpbnRlbF9jcnRjLT5waXBlKSwgdmFsKTsKPiA+PiBAQCAtMTQyMDUsMTEgKzE0MjA3 LDEzIEBAIHN0YXRpYyB2b2lkIGludGVsX3NldHVwX291dHB1dHMoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KQo+ID4+ICAgCQkgKiBERElfQlVGX0NUTF9BIG9yIFNGVVNFX1NUUkFQ IHJlZ2lzdGVycywgZmluZCBhbm90aGVyIHdheSB0bwo+ID4+ICAgCQkgKiBkZXRlY3QgdGhlIHBv cnRzLgo+ID4+ICAgCQkgKi8KPiA+PiArCj4gPj4gICAJCWludGVsX2RkaV9pbml0KGRldl9wcml2 LCBQT1JUX0EpOwo+ID4+ICAgCQlpbnRlbF9kZGlfaW5pdChkZXZfcHJpdiwgUE9SVF9CKTsKPiA+ PiAgIAkJaW50ZWxfZGRpX2luaXQoZGV2X3ByaXYsIFBPUlRfQyk7Cj4gPj4gICAKPiA+PiAgIAkJ aW50ZWxfZHNpX2luaXQoZGV2X3ByaXYpOwo+ID4+ICsKPiA+PiAgIAl9IGVsc2UgaWYgKEhBU19E REkoZGV2X3ByaXYpKSB7Cj4gPj4gICAJCWludCBmb3VuZDsKPiA+PiAgIAo+ID4+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHAuYwo+ID4+IGluZGV4IDY3YmM4YTdhLi4xNjkwYWE5IDEwMDY0NAo+ID4+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiA+PiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gPj4gQEAgLTE2MTQsNyArMTYxNCw5IEBAIGludGVsX2Rw X2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ID4+ICAgCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5k ZXYpOwo+ID4+ICAgCXN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICphZGp1c3RlZF9tb2RlID0gJnBp cGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGU7Cj4gPj4gICAJc3RydWN0IGludGVsX2RwICpp bnRlbF9kcCA9IGVuY190b19pbnRlbF9kcCgmZW5jb2Rlci0+YmFzZSk7Cj4gPj4gLQllbnVtIHBv cnQgcG9ydCA9IGRwX3RvX2RpZ19wb3J0KGludGVsX2RwKS0+cG9ydDsKPiA+PiArCXN0cnVjdCBp bnRlbF9kaWdpdGFsX3BvcnQgKmRpZ19wb3J0ID0gZW5jX3RvX2RpZ19wb3J0KCZlbmNvZGVyLT5i YXNlKTsKPiA+PiArCWVudW0gcG9ydCBwb3J0ID0gZGlnX3BvcnQtPnBvcnQ7Cj4gPj4gKwlzdHJ1 Y3QgaW50ZWxfbHNwY29uICpsc3Bjb24gPSAmZGlnX3BvcnQtPmxzcGNvbjsKPiA+PiAgIAlzdHJ1 Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMocGlwZV9jb25maWctPmJh c2UuY3J0Yyk7Cj4gPj4gICAJc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9y ID0gaW50ZWxfZHAtPmF0dGFjaGVkX2Nvbm5lY3RvcjsKPiA+PiAgIAlzdHJ1Y3QgaW50ZWxfZGln aXRhbF9jb25uZWN0b3Jfc3RhdGUgKmludGVsX2Nvbm5fc3RhdGUgPQo+ID4+IEBAIC0xNjM1LDYg KzE2MzcsMTggQEAgaW50ZWxfZHBfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIg KmVuY29kZXIsCj4gPj4gICAJY29tbW9uX2xlbiA9IGludGVsX2RwX2NvbW1vbl9sZW5fcmF0ZV9s aW1pdChpbnRlbF9kcCwKPiA+PiAgIAkJCQkJCSAgICBpbnRlbF9kcC0+bWF4X2xpbmtfcmF0ZSk7 Cj4gPj4gICAKPiA+PiArCS8qIExTUENPTiBuZWVkcyBzcGVjaWFsIGhhbmRsaW5nIHRvIGRyaXZl IFlDQkNSNDIwIG91dHB1dHMgKi8KPiA+PiArCWlmIChsc3Bjb24tPmFjdGl2ZSkgewo+ID4+ICsJ CXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IgPSAmaW50ZWxfY29ubmVjdG9yLT5iYXNl Owo+ID4+ICsJCWludCBjbG9ja184YnBjID0gcGlwZV9jb25maWctPmJhc2UuYWRqdXN0ZWRfbW9k ZS5jcnRjX2Nsb2NrOwo+ID4+ICsJCWludCBjbG9ja18xMmJwYyA9IGNsb2NrXzhicGMgKiAzIC8g MjsKPiA+PiArCj4gPj4gKwkJcGlwZV9jb25maWctPmxzcGNvbl9hY3RpdmUgPSB0cnVlOwo+ID4+ ICsJCXBpcGVfY29uZmlnLT55Y2JjcjQyMCA9IGxzcGNvbl95Y2JjcjQyMF9jb25maWcoY29ubmVj dG9yLAo+ID4+ICsJCQkJCSAgICAgcGlwZV9jb25maWcsICZjbG9ja18xMmJwYywKPiA+PiArCQkJ CQkgICAgICZjbG9ja184YnBjKTsKPiA+IEFsbCB0aGlzIGNsb2NrIHN0dWZmIGhlcmUgc2VlbXMg cG9pbnRsZXNzLiBTbyBJJ2QganVzdCByZXBsYWNlIHRoaXMKPiA+IHN0dWZmIHdpdGggdGhlIHN0 cmFpZ2h0Zm9yd2FyZCAncGlwZV9jb25maWctPnljYmNyNDIwID0gbW9kZV9uZWVkc180MjAnOwo+ IHBpcGVfY29uZmlnLT55Y2Jjcl80MjAgPSB0cnVlIG1lYW5zIHdlIGhhdmUgY29tbWl0dGVkIGlu dG8gc3RhdGUgdGhhdCB3ZSAKPiBjYW4gc3VwcG9ydCB0aGlzIG1vZGUgaW4gWUNCQ1I0MjAuCj4g QnV0IGZvciB0aGF0LCB3ZSBuZWVkIHRvIGNoZWNrIGNvbm5lY3Rvci0+eWNiY3I0MjBfYWxsb3dl ZCB0b28uCj4gQWxzbywgd2hlbiB0aGUgbW9kZSBpcyA0MjAsIHdlIG5lZWQgdG8gaGFsZiB0aGUg Y2xvY2tfOGJwYyBhbmQgY2xvY2tfMTJicGMuCgpXZSBkb24ndCB1c2UgdGhvc2UgY2xvY2tzIHdp dGggRFAuIFlvdSd2ZSBqdXN0IGFkZGVkIHRoZW0gaGVyZSBiZWNhdXNlCnRoZSBmdW5jdGlvbiBj YWxsIHJlcXVpcmVzIHRoZW0gYXMgcGFyYW1ldGVycy4gCgpBbHNvIHRoZSBmdW5jdGlvbiBjYWxs IGlzIGFjdHVhbGx5IGRvaW5nIHRoZSB3cm9uZyB0aGluZyBmb3IgRFAKYnkgaGFsdmluZyBwb3J0 X2Nsb2NrLgoKPiAKPiBUaGlzIHdob2xlIHN0dWZmIGlzIGhhcHBlbmluZyBpbnRvIGxzcGNvbl95 Y2JjcjQyMF9jb25maWcgZnVuY3Rpb24gCj4gKHdoaWNoIGludGVybmFsbHkgcmUtdXNlIGhkbWlf eWNuY3I0MjBfY29uZmlnIGZyb20gSERNSSAyLjAgc2VyaWVzKS4KPiBUaGF0J3Mgd2h5IHRoZSBj YWxsIGlzIGltcG9ydGFudC4KPiA+PiArCX0KPiA+PiArCj4gPj4gICAJLyogTm8gY29tbW9uIGxp bmsgcmF0ZXMgYmV0d2VlbiBzb3VyY2UgYW5kIHNpbmsgKi8KPiA+PiAgIAlXQVJOX09OKGNvbW1v bl9sZW4gPD0gMCk7Cj4gPj4gICAKPiA+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+ID4+IGlu ZGV4IGVkMDRkZTkuLjQwZDU2ZjIgMTAwNjQ0Cj4gPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKPiA+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aAo+ID4+IEBAIC03OTAsNiArNzkwLDkgQEAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgewo+ID4+ ICAgCj4gPj4gICAJLyogSERNSSBvdXRwdXQgdHlwZSAqLwo+ID4+ICAgCWJvb2wgeWNiY3I0MjA7 Cj4gPj4gKwo+ID4+ICsJLyogTFNQQ09OIGlzIGFjdGl2ZSBvbiBwb3J0ICovCj4gPj4gKwlib29s IGxzcGNvbl9hY3RpdmU7Cj4gPj4gICB9Owo+ID4+ICAgCj4gPj4gICBzdHJ1Y3QgaW50ZWxfY3J0 YyB7Cj4gPj4gQEAgLTEyMDUsNiArMTIwOCwxMiBAQCBzdGF0aWMgaW5saW5lIHN0cnVjdCBpbnRl bF9kcCAqZW5jX3RvX2ludGVsX2RwKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKPiA+PiAg IAlyZXR1cm4gJmVuY190b19kaWdfcG9ydChlbmNvZGVyKS0+ZHA7Cj4gPj4gICB9Cj4gPj4gICAK PiA+PiArc3RhdGljIGlubGluZSBzdHJ1Y3QgaW50ZWxfbHNwY29uICoKPiA+PiArZW5jX3RvX2lu dGVsX2xzcGNvbihzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCj4gPj4gK3sKPiA+PiArCXJl dHVybiAmZW5jX3RvX2RpZ19wb3J0KGVuY29kZXIpLT5sc3Bjb247Cj4gPj4gK30KPiA+PiArCj4g Pj4gICBzdGF0aWMgaW5saW5lIHN0cnVjdCBpbnRlbF9kaWdpdGFsX3BvcnQgKgo+ID4+ICAgZHBf dG9fZGlnX3BvcnQoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCkKPiA+PiAgIHsKPiA+PiBAQCAt MTY3NSwxNCArMTY4NCwxNiBAQCB2b2lkIGludGVsX2hkbWlfaW5pdF9jb25uZWN0b3Ioc3RydWN0 IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQsCj4gPj4gICAJCQkgICAgICAgc3Ry dWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yKTsKPiA+PiAgIHN0cnVjdCBpbnRl bF9oZG1pICplbmNfdG9faW50ZWxfaGRtaShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpOwo+ ID4+ICAgYm9vbCBpbnRlbF9oZG1pX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVy ICplbmNvZGVyLAo+ID4+IC0JCQkgICAgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVf Y29uZmlnLAo+ID4+IC0JCQkgICAgICAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5f c3RhdGUpOwo+ID4+ICsJCQkJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAo+ ID4+ICsJCQkJc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpOwo+ID4+ICAg dm9pZCBpbnRlbF9oZG1pX2hhbmRsZV9zaW5rX3NjcmFtYmxpbmcoc3RydWN0IGludGVsX2VuY29k ZXIgKmludGVsX2VuY29kZXIsCj4gPj4gICAJCQkJICAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IsCj4gPj4gICAJCQkJICAgICAgIGJvb2wgaGlnaF90bWRzX2Nsb2NrX3JhdGlv LAo+ID4+ICAgCQkJCSAgICAgICBib29sIHNjcmFtYmxpbmcpOwo+ID4+ICAgdm9pZCBpbnRlbF9k cF9kdWFsX21vZGVfc2V0X3RtZHNfb3V0cHV0KHN0cnVjdCBpbnRlbF9oZG1pICpoZG1pLCBib29s IGVuYWJsZSk7Cj4gPj4gLQo+ID4+ICtib29sIGludGVsX2hkbWlfeWNiY3I0MjBfY29uZmlnKHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gPj4gKwkJCQlzdHJ1Y3QgaW50ZWxfY3J0 Y19zdGF0ZSAqY29uZmlnLAo+ID4+ICsJCQkJaW50ICpjbG9ja18xMmJwYywgaW50ICpjbG9ja184 YnBjKTsKPiA+PiAgIAo+ID4+ICAgLyogaW50ZWxfbHZkcy5jICovCj4gPj4gICB2b2lkIGludGVs X2x2ZHNfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwo+ID4+IEBAIC0y MDAzLDYgKzIwMTQsOSBAQCB2b2lkIGludGVsX2NvbG9yX2xvYWRfbHV0cyhzdHJ1Y3QgZHJtX2Ny dGNfc3RhdGUgKmNydGNfc3RhdGUpOwo+ID4+ICAgYm9vbCBsc3Bjb25faW5pdChzdHJ1Y3QgaW50 ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCk7Cj4gPj4gICB2b2lkIGxzcGNvbl9yZXN1 bWUoc3RydWN0IGludGVsX2xzcGNvbiAqbHNwY29uKTsKPiA+PiAgIHZvaWQgbHNwY29uX3dhaXRf cGNvbl9tb2RlKHN0cnVjdCBpbnRlbF9sc3Bjb24gKmxzcGNvbik7Cj4gPj4gK2Jvb2wgbHNwY29u X3ljYmNyNDIwX2NvbmZpZyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+ID4+ICsJ CQkgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNvbmZpZywKPiA+PiArCQkJICAgIGludCAq Y2xvY2tfMTJicGMsIGludCAqY2xvY2tfOGJwYyk7Cj4gPj4gICAKPiA+PiAgIC8qIGludGVsX3Bp cGVfY3JjLmMgKi8KPiA+PiAgIGludCBpbnRlbF9waXBlX2NyY19jcmVhdGUoc3RydWN0IGRybV9t aW5vciAqbWlub3IpOwo+ID4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKPiA+PiBpbmRleCBk MWIxZWZjLi5hMDhhYjk5IDEwMDY0NAo+ID4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2hkbWkuYwo+ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYwo+ ID4+IEBAIC0xMzYyLDggKzEzNjIsNyBAQCBzdGF0aWMgYm9vbCBoZG1pXzEyYnBjX3Bvc3NpYmxl KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ID4+ICAgCXJldHVybiB0cnVl Owo+ID4+ICAgfQo+ID4+ICAgCj4gPj4gLXN0YXRpYyBib29sCj4gPj4gLWludGVsX2hkbWlfeWNi Y3I0MjBfY29uZmlnKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gPj4gK2Jvb2wg aW50ZWxfaGRtaV95Y2JjcjQyMF9jb25maWcoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKPiA+PiAgIAkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY29uZmlnLAo+ID4+ ICAgCQkJICAgICAgIGludCAqY2xvY2tfMTJicGMsIGludCAqY2xvY2tfOGJwYykKPiA+PiAgIHsK PiA+PiBAQCAtMTM4MCw2ICsxMzc5LDEwIEBAIGludGVsX2hkbWlfeWNiY3I0MjBfY29uZmlnKHN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gPj4gICAJKmNsb2NrXzhicGMgLz0gMjsK PiA+PiAgIAljb25maWctPnljYmNyNDIwID0gdHJ1ZTsKPiA+PiAgIAo+ID4+ICsJLyogTFNQQ09O IGRvZXNuJ3QgbmVlZCBzY2FsZXIgZm9yIFlDQkNSNDIwIG91dHB1dCAqLwo+ID4+ICsJaWYgKGNv bmZpZy0+bHNwY29uX2FjdGl2ZSkKPiA+PiArCQlyZXR1cm4gdHJ1ZTsKPiA+PiArCj4gPj4gICAJ LyogWUNCQ1IgNDIwIG91dHB1dCBjb252ZXJzaW9uIG5lZWRzIGEgc2NhbGVyICovCj4gPj4gICAJ aWYgKHNrbF91cGRhdGVfc2NhbGVyX2NydGNfNDIwX291dHB1dChjb25maWcpKSB7Cj4gPj4gICAJ CURSTV9FUlJPUigiU2NhbGVyIGFsbG9jYXRpb24gZm9yIG91dHB1dCBmYWlsZWRcbiIpOwo+ID4+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9sc3Bjb24uYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2xzcGNvbi5jCj4gPj4gaW5kZXggYTM1MGQ3OS4uZjYxMWI2 ZCAxMDA2NDQKPiA+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9sc3Bjb24uYwo+ ID4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xzcGNvbi5jCj4gPj4gQEAgLTIw Miw2ICsyMDIsMjEgQEAgc3RhdGljIHZvaWQgbHNwY29uX3Jlc3VtZV9pbl9wY29uX3dhKHN0cnVj dCBpbnRlbF9sc3Bjb24gKmxzcGNvbikKPiA+PiAgIAlEUk1fREVCVUdfS01TKCJMU1BDT04gRFAg ZGVzY3JpcHRvciBtaXNtYXRjaCBhZnRlciByZXN1bWVcbiIpOwo+ID4+ICAgfQo+ID4+ICAgCj4g Pj4gK2Jvb2wgbHNwY29uX3ljYmNyNDIwX2NvbmZpZyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29u bmVjdG9yLAo+ID4+ICsJCQkgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNvbmZpZywKPiA+ PiArCQkJICAgIGludCAqY2xvY2tfMTJicGMsIGludCAqY2xvY2tfOGJwYykKPiA+PiArewo+ID4+ ICsJc3RydWN0IGRybV9kaXNwbGF5X2luZm8gKmluZm8gPSAmY29ubmVjdG9yLT5kaXNwbGF5X2lu Zm87Cj4gPj4gKwlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSA9ICZjb25maWctPmJhc2Uu YWRqdXN0ZWRfbW9kZTsKPiA+PiArCj4gPj4gKwlpZiAoZHJtX21vZGVfaXNfNDIwX29ubHkoaW5m bywgbW9kZSkpIHsKPiA+PiArCQlyZXR1cm4gaW50ZWxfaGRtaV95Y2JjcjQyMF9jb25maWcoY29u bmVjdG9yLCBjb25maWcsCj4gPj4gKwkJCQkJICBjbG9ja18xMmJwYywgY2xvY2tfOGJwYyk7Cj4g Pj4gKwl9Cj4gPj4gKwo+ID4+ICsJcmV0dXJuIGZhbHNlOwo+ID4+ICt9Cj4gPj4gKwo+ID4+ICAg dm9pZCBsc3Bjb25fcmVzdW1lKHN0cnVjdCBpbnRlbF9sc3Bjb24gKmxzcGNvbikKPiA+PiAgIHsK PiA+PiAgIAllbnVtIGRybV9sc3Bjb25fbW9kZSBleHBlY3RlZF9tb2RlOwo+ID4+IEBAIC0yMzMs NiArMjQ4LDcgQEAgYm9vbCBsc3Bjb25faW5pdChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpp bnRlbF9kaWdfcG9ydCkKPiA+PiAgIAlzdHJ1Y3QgaW50ZWxfbHNwY29uICpsc3Bjb24gPSAmaW50 ZWxfZGlnX3BvcnQtPmxzcGNvbjsKPiA+PiAgIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50 ZWxfZGlnX3BvcnQtPmJhc2UuYmFzZS5kZXY7Cj4gPj4gICAJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwo+ID4+ICsJc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3RvciA9ICZkcC0+YXR0YWNoZWRfY29ubmVjdG9yLT5iYXNlOwo+ID4+ICAgCj4gPj4g ICAJaWYgKCFJU19HRU45KGRldl9wcml2KSkgewo+ID4+ICAgCQlEUk1fRVJST1IoIkxTUENPTiBp cyBzdXBwb3J0ZWQgb24gR0VOOSBvbmx5XG4iKTsKPiA+PiBAQCAtMjY0LDYgKzI4MCw3IEBAIGJv b2wgbHNwY29uX2luaXQoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQp Cj4gPj4gICAJCXJldHVybiBmYWxzZTsKPiA+PiAgIAl9Cj4gPj4gICAKPiA+PiArCWNvbm5lY3Rv ci0+eWNiY3JfNDIwX2FsbG93ZWQgPSB0cnVlOwo+ID4+ICAgCWRybV9kcF9yZWFkX2Rlc2MoJmRw LT5hdXgsICZkcC0+ZGVzYywgZHJtX2RwX2lzX2JyYW5jaChkcC0+ZHBjZCkpOwo+ID4+ICAgCj4g Pj4gICAJRFJNX0RFQlVHX0tNUygiU3VjY2VzczogTFNQQ09OIGluaXRcbiIpOwo+ID4+IC0tIAo+ ID4+IDIuNy40CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK