From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v12 8/8] drm/i915: Add YCBCR 4:2:0/4:4:4 support for LSPCON Date: Fri, 12 Oct 2018 16:58:45 +0300 Message-ID: <20181012135845.GQ9144@intel.com> References: <1539325394-20788-1-git-send-email-shashank.sharma@intel.com> <1539325394-20788-8-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 89D2F6E041 for ; Fri, 12 Oct 2018 13:58:49 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1539325394-20788-8-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Shashank Sharma Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBPY3QgMTIsIDIwMTggYXQgMTE6NTM6MTRBTSArMDUzMCwgU2hhc2hhbmsgU2hhcm1h IHdyb3RlOgo+IEZyb206IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1hQGxpbnV4Lmlu dGVsLmNvbT4KPiAKPiBMU1BDT04gY2hpcHMgY2FuIGdlbmVyYXRlIFlDQkNSIG91dHB1dHMsIGlm IGFza2VkIG5pY2VseSA6KS4KPiAKPiBJbiBvcmRlciB0byBnZW5lcmF0ZSBZQ0JDUiA0OjI6MCBv dXRwdXRzLCBhIHNvdXJjZSBtdXN0Ogo+IC0gc2VuZCBZQ0JDUiA0OjQ6NCBzaWduYWxzIHRvIExT UENPTgo+IC0gcHJvZ3JhbSBjb2xvciBzcGFjZSBhcyA0OjI6MCBpbiBBVkkgaW5mb2ZyYW1lcwo+ IAo+IFdoZXJlYXMgZm9yIFlDQkNSIDQ6NDo0IG91dHB1dHMsIHRoZSBzb3VyY2UgbXVzdDoKPiAt IHNlbmQgWUNCQ1IgNDo0OjQgc2lnbmFscyB0byBMU1BDT04KPiAtIHByb2dyYW0gY29sb3Igc3Bh Y2UgYXMgNDo0OjQgaW4gQVZJIGluZm9mcmFtZXMKPiAKPiBTbyBmb3IgYm90aCA0OjI6MCBhcyB3 ZWxsIGFzIDQ6NDo0IG91dHB1dHMsIHdlIGFyZSBkcml2aW5nIHRoZQo+IHBpcGUgZm9yIFlDQkNS IDQ6NDo0IG91dHB1dCwgYnV0IEFWSSBpbmZvZnJhbWUncyBjb2xvciBzcGFjZQo+IGluZm9ybWF0 aW9uIGluZGljYXRlcyBMU1BDT04gRlcgdG8gc3RhcnQgc2NhbGluZyBkb3duIGZyb20gWUNCQ1IK PiA0OjQ6NCBhbmQgZ2VuZXJhdGUgWUNCQ1IgNDoyOjAgb3V0cHV0LiBBcyB0aGUgc2NhbGluZyBp cyBkb25lIGJ5Cj4gTFNQQ09OIGRldmljZSwgd2UgbmVlZCBub3QgdG8gcmVzZXJ2ZSBhIHNjYWxl ciBmb3IgNDoyOjAgb3V0cHV0cy4KPiAKPiBWMjogcmViYXNlCj4gVjM6IEFkZHJlc3NlZCByZXZp ZXcgY29tbWVudHMgZnJvbSBWaWxsZQo+ICAgICAtIGFkZCBlbnVtIGNydGNfb3V0cHV0X2Zvcm1h dCBpbnN0ZWFkIG9mIGJvb2wgeWNiY3I0MjAKPiAgICAgLSB1c2UgY3J0Y19vdXRwdXRfZm9ybWF0 PTQ6NDo0IGZvciBtb2Rlc2V0IG9mIExTUENPTiA0OjI6MCBvdXRwdXQKPiAgICAgICBjYXNlcyBp biB0aGlzIHdheSB3ZSB3aWxsIGhhdmUgWUNCQ1IgNDo0OjQgZnJhbWV3b3JrIHJlYWR5IChleGNl cHQKPiAgICAgICB0aGUgQUJJIHBhcnQpCj4gVjQ6IEFkZGVkIHItYiBmcm9tIE1hYXJ0ZW4gKGZv ciB2MykKPiAgICAgQWRkcmVzc2VkIHJldmlldyBjb21tZW50cyBmcm9tIFZpbGxlOgo+ICAgICAt IERvIG5vdCBhZGQgYSBub24tYXRvbWljIHN0YXRlIHZhcmlhYmxlIHRvIGRldGVybWluZSBsc3Bj b24gb3V0cHV0Lgo+ICAgICAgIEluc3RlYWQgYWRkIGJvb2wgaW4gQ1JUQyBzdGF0ZSB0byBpbmRp Y2F0ZSBsc3Bjb24gYmFzZWQgc2NhbGluZy4KPiBWNTogQWRkcmVzc2VkIHJldmlldyBjb21tZW50 cyBmcm9tIFZpbGxlOgo+ICAgICAtIENoYW5nZSB0aGUgc3RhdGUgYm9vbCBuYW1lIGZyb20gZXh0 ZXJuYWwgc2NhbGluZyB0byBzb21ldGhpbmcgbW9yZQo+ICAgICAgIHJlbGF2ZW50Lgo+ICAgICAt IEtlZXAgdGhlIGluZm8gYW5kIGFkanVzdGVkX21vZGUgc3RydWN0dXJlcyBjb25zdC4KPiAgICAg LSB1c2UgY3J0Y19zdGF0ZSBpbnN0ZWFkIG9mIHBpcGVfY29uZmlnLgo+ICAgICAtIFB1c2ggYWxs IHRoZSBjb25maWcgY2hhbmdlIGludG8gbHNwY29uX3ljYmNyNDIwX2NvbmZpZyBmdW5jdGlvbi4K PiBWNjogUmViYXNlLCBzbWFsbCBjaGFuZ2VzIHRvIGFjY29tbW9kYXRlIGNoYW5nZXMgaW4gcGF0 Y2ggMi4KPiBWNzogRml4ZWQgY2hlY2twYXRjaCB3YXJuaW5ncyBmb3IgYWxpZ25tZW50Cj4gVjg6 IFJlYmFzZQo+IAo+ICAgICBQUzogSWdub3JlZCBmb2xsb3dpbmcgd2FybmluZ3MgdG8gbWF0Y2gg dGhlIGN1cnJlbnQgZm9ybWF0dGluZzoKPiAgICAgZHJtL2k5MTU6IEFkZCBZQ0JDUiA0OjI6MC80 OjQ6NCBzdXBwb3J0IGZvciBMU1BDT04KPiAgICAgIC06NTM6IENIRUNLOlNQQUNJTkc6IHNwYWNl cyBwcmVmZXJyZWQgYXJvdW5kIHRoYXQgJzw8JyAoY3R4OlZ4VikKPiAgICAgIzUzOiBGSUxFOiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oOjg3MjE6Cj4gICAgICsjZGVmaW5lICBUUkFO U19NU0FfU0FNUExJTkdfNDQ0ICAgICAgICAoMjw8MSkKPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCj4gICAgIC06NTQ6IENIRUNLOlNQQUNJTkc6IHNwYWNlcyBw cmVmZXJyZWQgYXJvdW5kIHRoYXQgJzw8JyAoY3R4OlZ4VikKPiAgICAgIzU0OiBGSUxFOiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oOjg3MjI6Cj4gICAgICsjZGVmaW5lICBUUkFOU19N U0FfQ0xSU1BfWUNCQ1IgICAgICAgICAoMjw8MykKPiBWOTogUmViYXNlCj4gVjEwOiBSZWJhc2UK PiBWMTE6IFJlYmFzZQo+IAo+IENjOiBWaWxsZSBTeXJqYWxhIDx2aWxsZS5zeXJqYWxhQGxpbnV4 LmludGVsLmNvbT4KPiBDYzogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hvcnN0QGxp bnV4LmludGVsLmNvbT4KPiBSZXZpZXdlZC1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4u bGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBTaGFzaGFuayBTaGFy bWEgPHNoYXNoYW5rLnNoYXJtYUBpbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcmVnLmggICAgICB8ICAyICsrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2RkaS5jICAgICB8ICA3ICsrKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlz cGxheS5jIHwgMTIgKysrKysrKysrKysrCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rw LmMgICAgICB8ICA0ICsrKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAg IHwgIDUgKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHNwY29uLmMgIHwgMjYg KysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgNiBmaWxlcyBjaGFuZ2VkLCA1NiBpbnNlcnRp b25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gaW5kZXggMjA3ODU0MS4uMWUxM2U1 MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC05MjI5LDYgKzkyMjksOCBAQCBl bnVtIHNrbF9wb3dlcl9nYXRlIHsKPiAgI2RlZmluZSBUUkFOU19NU0FfTUlTQyh0cmFuKSBfTU1J T19UUkFOUzIodHJhbiwgX1RSQU5TQV9NU0FfTUlTQykKPiAgCj4gICNkZWZpbmUgIFRSQU5TX01T QV9TWU5DX0NMSwkJKDEgPDwgMCkKPiArI2RlZmluZSAgVFJBTlNfTVNBX1NBTVBMSU5HXzQ0NAkJ KDIgPDwgMSkKPiArI2RlZmluZSAgVFJBTlNfTVNBX0NMUlNQX1lDQkNSCQkoMiA8PCAzKQo+ICAj ZGVmaW5lICBUUkFOU19NU0FfNl9CUEMJCSgwIDw8IDUpCj4gICNkZWZpbmUgIFRSQU5TX01TQV84 X0JQQwkJKDEgPDwgNSkKPiAgI2RlZmluZSAgVFJBTlNfTVNBXzEwX0JQQwkJKDIgPDwgNSkKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+IGluZGV4IGJlMjExMzEuLjE4NjExMWEgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+IEBAIC0xNzg0LDYgKzE3ODQsMTMgQEAgdm9pZCBpbnRl bF9kZGlfc2V0X3BpcGVfc2V0dGluZ3MoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNy dGNfc3RhdGUpCj4gIAkJYnJlYWs7Cj4gIAl9Cj4gIAo+ICsJLyoKPiArCSAqIEFzIHBlciBEUCAx LjIgc3BlYyBzZWN0aW9uIDIuMy40LjMgd2hpbGUgc2VuZGluZwo+ICsJICogWUNCQ1IgNDQ0IHNp Z25hbHMgd2Ugc2hvdWxkIHByb2dyYW0gTVNBIE1JU0MxLzAgZmllbGRzIHdpdGgKPiArCSAqIGNv bG9yc3BhY2UgaW5mb3JtYXRpb24uIFRoZSBvdXRwdXQgY29sb3JzcGFjZSBlbmNvZGluZyBpcyBC VDYwMS4KPiArCSAqLwo+ICsJaWYgKGNydGNfc3RhdGUtPm91dHB1dF9mb3JtYXQgPT0gSU5URUxf T1VUUFVUX0ZPUk1BVF9ZQ0JDUjQ0NCkKPiArCQl0ZW1wIHw9IFRSQU5TX01TQV9TQU1QTElOR180 NDQgfCBUUkFOU19NU0FfQ0xSU1BfWUNCQ1I7Cj4gIAlJOTE1X1dSSVRFKFRSQU5TX01TQV9NSVND KGNwdV90cmFuc2NvZGVyKSwgdGVtcCk7Cj4gIH0KPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rpc3BsYXkuYwo+IGluZGV4IDMzMTdjNmMuLjQxYWJkMDMgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTc3OTcsNiArNzc5Nyw4IEBAIHN0YXRpYyB2b2lkIGlu dGVsX2dldF9jcnRjX3ljYmNyX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKPiAgCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFzZS5kZXYp Owo+ICAJZW51bSBpbnRlbF9vdXRwdXRfZm9ybWF0IG91dHB1dCA9IElOVEVMX09VVFBVVF9GT1JN QVRfUkdCOwo+ICAKPiArCXBpcGVfY29uZmlnLT5sc3Bjb25fZG93bnNhbXBsaW5nID0gZmFsc2U7 Cj4gKwo+ICAJaWYgKElTX0JST0FEV0VMTChkZXZfcHJpdikgfHwgSU5URUxfR0VOKGRldl9wcml2 KSA+PSA5KSB7Cj4gIAkJdTMyIHRtcCA9IEk5MTVfUkVBRChQSVBFTUlTQyhjcnRjLT5waXBlKSk7 Cj4gIAo+IEBAIC03ODE0LDYgKzc4MTYsMTYgQEAgc3RhdGljIHZvaWQgaW50ZWxfZ2V0X2NydGNf eWNiY3JfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ICAJCQkJZWxzZQo+ICAJCQkJ CW91dHB1dCA9IElOVEVMX09VVFBVVF9GT1JNQVRfWUNCQ1I0MjA7Cj4gIAkJCX0gZWxzZSB7Cj4g KwkJCQkvKgo+ICsJCQkJICogQ3VycmVudGx5IHRoZXJlIGlzIG5vIGludGVyZmFjZSBkZWZpbmVk IHRvCj4gKwkJCQkgKiBjaGVjayB1c2VyIHByZWZlcmVuY2UgYmV0d2VlbiBSR0IvWUNCQ1I0NDQK PiArCQkJCSAqIG9yIFlDQkNSNDIwLiBTbyB0aGUgb25seSBwb3NzaWJsZSBjYXNlIGZvcgo+ICsJ CQkJICogWUNCQ1I0NDQgdXNhZ2UgaXMgZHJpdmluZyBZQ0JDUjQyMCBvdXRwdXQKPiArCQkJCSAq IHdpdGggTFNQQ09OLCB3aGVuIHBpcGUgaXMgY29uZmlndXJlZCBmb3IKPiArCQkJCSAqIFlDQkNS NDQ0IG91dHB1dCBhbmQgTFNQQ09OIHRha2VzIGNhcmUgb2YKPiArCQkJCSAqIGRvd25zYW1wbGlu ZyBpdC4KPiArCQkJCSAqLwo+ICsJCQkJcGlwZV9jb25maWctPmxzcGNvbl9kb3duc2FtcGxpbmcg PSB0cnVlOwo+ICAJCQkJb3V0cHV0ID0gSU5URUxfT1VUUFVUX0ZPUk1BVF9ZQ0JDUjQ0NDsKPiAg CQkJfQo+ICAJCX0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiBpbmRleCBjM2Y2MzMwLi4xMTU2 ZDU5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCj4gQEAgLTIwNzQsNiArMjA3NCw3IEBA IGludGVsX2RwX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShlbmNvZGVyLT5i YXNlLmRldik7Cj4gIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9ICZw aXBlX2NvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2RlOwo+ICAJc3RydWN0IGludGVsX2RwICppbnRl bF9kcCA9IGVuY190b19pbnRlbF9kcCgmZW5jb2Rlci0+YmFzZSk7Cj4gKwlzdHJ1Y3QgaW50ZWxf bHNwY29uICpsc3Bjb24gPSBlbmNfdG9faW50ZWxfbHNwY29uKCZlbmNvZGVyLT5iYXNlKTsKPiAg CWVudW0gcG9ydCBwb3J0ID0gZW5jb2Rlci0+cG9ydDsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjICpp bnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhwaXBlX2NvbmZpZy0+YmFzZS5jcnRjKTsKPiAgCXN0 cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IGludGVsX2RwLT5hdHRhY2hl ZF9jb25uZWN0b3I7Cj4gQEAgLTIwODYsNiArMjA4Nyw5IEBAIGludGVsX2RwX2NvbXB1dGVfY29u ZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCXBpcGVfY29uZmlnLT5oYXNf cGNoX2VuY29kZXIgPSB0cnVlOwo+ICAKPiAgCXBpcGVfY29uZmlnLT5vdXRwdXRfZm9ybWF0ID0g SU5URUxfT1VUUFVUX0ZPUk1BVF9SR0I7Cj4gKwlpZiAobHNwY29uLT5hY3RpdmUpCj4gKwkJbHNw Y29uX3ljYmNyNDIwX2NvbmZpZygmaW50ZWxfY29ubmVjdG9yLT5iYXNlLCBwaXBlX2NvbmZpZyk7 Cj4gKwo+ICAJcGlwZV9jb25maWctPmhhc19kcnJzID0gZmFsc2U7Cj4gIAlpZiAoSVNfRzRYKGRl dl9wcml2KSB8fCBwb3J0ID09IFBPUlRfQSkKPiAgCQlwaXBlX2NvbmZpZy0+aGFzX2F1ZGlvID0g ZmFsc2U7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBpbmRleCBiOGU1Zjk1Li45NWUyNTJl IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBAQCAtOTA4LDYgKzkwOCw5IEBAIHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlIHsKPiAgCj4gIAkvKiBPdXRwdXQgZm9ybWF0IFJHQi9ZQ0JD UiBldGMgKi8KPiAgCWVudW0gaW50ZWxfb3V0cHV0X2Zvcm1hdCBvdXRwdXRfZm9ybWF0Owo+ICsK PiArCS8qIE91dHB1dCBkb3duIHNjYWxpbmcgaXMgZG9uZSBpbiBMU1BDT04gZGV2aWNlICovCj4g Kwlib29sIGxzcGNvbl9kb3duc2FtcGxpbmc7Cj4gIH07Cj4gIAo+ICBzdHJ1Y3QgaW50ZWxfY3J0 YyB7Cj4gQEAgLTIyMjUsNiArMjIyOCw4IEBAIHZvaWQgbHNwY29uX3NldF9pbmZvZnJhbWVzKHN0 cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCQkgICBjb25zdCBzdHJ1Y3QgZHJtX2Nv bm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSk7Cj4gIGJvb2wgbHNwY29uX2luZm9mcmFtZV9lbmFi bGVkKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCQkgICAgICBjb25zdCBzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpOwo+ICt2b2lkIGxzcGNvbl95Y2JjcjQy MF9jb25maWcoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiArCQkJICAgIHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsKPiAgCj4gIC8qIGludGVsX3BpcGVfY3Jj LmMgKi8KPiAgI2lmZGVmIENPTkZJR19ERUJVR19GUwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9sc3Bjb24uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xz cGNvbi5jCj4gaW5kZXggODI5YzQwYS4uZmZmMzJiMyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9sc3Bjb24uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2xzcGNvbi5jCj4gQEAgLTE4MCw2ICsxODAsMjEgQEAgc3RhdGljIGJvb2wgbHNwY29uX3dh a2VfbmF0aXZlX2F1eF9jaChzdHJ1Y3QgaW50ZWxfbHNwY29uICpsc3Bjb24pCj4gIAlyZXR1cm4g dHJ1ZTsKPiAgfQo+ICAKPiArdm9pZCBsc3Bjb25feWNiY3I0MjBfY29uZmlnKHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IsCj4gKwkJCSAgICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSkKPiArewo+ICsJY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X2luZm8gKmluZm8g PSAmY29ubmVjdG9yLT5kaXNwbGF5X2luZm87Cj4gKwljb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqYWRqdXN0ZWRfbW9kZSA9Cj4gKwkJCQkJJmNydGNfc3RhdGUtPmJhc2UuYWRqdXN0ZWRf bW9kZTsKPiArCj4gKwlpZiAoZHJtX21vZGVfaXNfNDIwX29ubHkoaW5mbywgYWRqdXN0ZWRfbW9k ZSkgJiYKPiArCSAgICBjb25uZWN0b3ItPnljYmNyXzQyMF9hbGxvd2VkKSB7Cj4gKwkJY3J0Y19z dGF0ZS0+cG9ydF9jbG9jayAvPSAyOwoKVGhpcyBsb29rcyBib2d1cy4gV2UncmUgdGFsa2luZyBh Ym91dCBEUCBoZXJlIHNvIHdlIHNob3VsZCBub3QgYmUKZnJvYmJpbmcgcG9ydF9jbG9jay4gQW5k IHNpbmNlIHdlIG91dHB1dCA0OjQ6NCBmcm9tIHRoZSBwb3J0CmFueXdheSB3ZSBkb24ndCBldmVu IGhhdmUgdG8gdGFrZSA0OjI6MCBpbnRvIGNvbnNpZGVyYXRpb24Kd2hlbiBjYWxjdWxhdGluZyBw b3J0X2Nsb2NrLgoKQWgsIHRoaXMgZ3V5IGlzIGNhbGxlZCBiZWZvcmUgd2UgZXZlbiBjYWxjdWxh dGUgcG9ydF9jbG9jay4KVGhhdCBleHBsYWlucyB3aHkgdGhpcyBkaWRuJ3QgY2F1c2UgYW55IHBy b2JsZW1zLiBTbyB0aGlzIGlzCmp1c3QgZGVhZCBjb2RlIGhlcmUuCgpBbmQgbG9va3MgbGlrZSB0 aGUgcG9ydF9jbG9jayBhZGp1c3RtZW50IGluIGludGVsX2hkbWlfeWNiY3I0MjBfY29uZmlnKCkg CmFsc28gZGVhZCBjb2RlIHNpbmNlIHRoZSBjYWxsZXIgb3ZlcndyaXRlcyBpdCB0aGVyZSBhcyB3 ZWxsLgoKPiArCQljcnRjX3N0YXRlLT5vdXRwdXRfZm9ybWF0ID0gSU5URUxfT1VUUFVUX0ZPUk1B VF9ZQ0JDUjQ0NDsKPiArCQljcnRjX3N0YXRlLT5sc3Bjb25fZG93bnNhbXBsaW5nID0gdHJ1ZTsK PiArCX0KPiArfQo+ICsKPiAgc3RhdGljIGJvb2wgbHNwY29uX3Byb2JlKHN0cnVjdCBpbnRlbF9s c3Bjb24gKmxzcGNvbikKPiAgewo+ICAJaW50IHJldHJ5Owo+IEBAIC00NjQsNiArNDc5LDE1IEBA IHZvaWQgbHNwY29uX3NldF9pbmZvZnJhbWVzKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVy LAo+ICAJCXJldHVybjsKPiAgCX0KPiAgCj4gKwlpZiAoY3J0Y19zdGF0ZS0+b3V0cHV0X2Zvcm1h dCA9PSBJTlRFTF9PVVRQVVRfRk9STUFUX1lDQkNSNDQ0KSB7Cj4gKwkJaWYgKGNydGNfc3RhdGUt PmxzcGNvbl9kb3duc2FtcGxpbmcpCj4gKwkJCWZyYW1lLmF2aS5jb2xvcnNwYWNlID0gSERNSV9D T0xPUlNQQUNFX1lVVjQyMDsKPiArCQllbHNlCj4gKwkJCWZyYW1lLmF2aS5jb2xvcnNwYWNlID0g SERNSV9DT0xPUlNQQUNFX1lVVjQ0NDsKPiArCX0gZWxzZSB7Cj4gKwkJZnJhbWUuYXZpLmNvbG9y c3BhY2UgPSBIRE1JX0NPTE9SU1BBQ0VfUkdCOwo+ICsJfQo+ICsKPiAgCWRybV9oZG1pX2F2aV9p bmZvZnJhbWVfcXVhbnRfcmFuZ2UoJmZyYW1lLmF2aSwgbW9kZSwKPiAgCQkJCQkgICBjcnRjX3N0 YXRlLT5saW1pdGVkX2NvbG9yX3JhbmdlID8KPiAgCQkJCQkgICBIRE1JX1FVQU5USVpBVElPTl9S QU5HRV9MSU1JVEVEIDoKPiBAQCAtNTE3LDYgKzU0MSw3IEBAIGJvb2wgbHNwY29uX2luaXQoc3Ry dWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQpCj4gIAlzdHJ1Y3QgaW50ZWxf bHNwY29uICpsc3Bjb24gPSAmaW50ZWxfZGlnX3BvcnQtPmxzcGNvbjsKPiAgCXN0cnVjdCBkcm1f ZGV2aWNlICpkZXYgPSBpbnRlbF9kaWdfcG9ydC0+YmFzZS5iYXNlLmRldjsKPiAgCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPiArCXN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IgPSAmZHAtPmF0dGFjaGVkX2Nvbm5lY3Rvci0+YmFzZTsKPiAg Cj4gIAlpZiAoIUhBU19MU1BDT04oZGV2X3ByaXYpKSB7Cj4gIAkJRFJNX0VSUk9SKCJMU1BDT04g aXMgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtXG4iKTsKPiBAQCAtNTQxLDYgKzU2Niw3 IEBAIGJvb2wgbHNwY29uX2luaXQoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGln X3BvcnQpCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAJfQo+ICAKPiArCWNvbm5lY3Rvci0+eWNiY3Jf NDIwX2FsbG93ZWQgPSB0cnVlOwo+ICAJbHNwY29uLT5hY3RpdmUgPSB0cnVlOwo+ICAJRFJNX0RF QlVHX0tNUygiU3VjY2VzczogTFNQQ09OIGluaXRcbiIpOwo+ICAJcmV0dXJuIHRydWU7Cj4gLS0g Cj4gMi43LjQKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==