From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sharma, Shashank" Subject: Re: [PATCH v3 7/7] drm/i915: Add YCBCR 4:2:0/4:4:4 support for LSPCON Date: Thu, 18 Jan 2018 21:46:49 +0530 Message-ID: <8d123744-a65c-c862-6a33-51a6668225f6@intel.com> References: <1515145535-11228-1-git-send-email-shashank.sharma@intel.com> <1515145535-11228-8-git-send-email-shashank.sharma@intel.com> <20180117182745.GR10981@intel.com> <23841b6d-0876-1b5b-cbcf-73b129f72841@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 952D86E5B2 for ; Thu, 18 Jan 2018 16:16:53 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Maarten Lankhorst , =?UTF-8?B?VmlsbGUgU3lyasOkbMOk?= Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org UmVnYXJkcwoKU2hhc2hhbmsKCgpPbiAxLzE4LzIwMTggMzowMCBQTSwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gT3AgMTgtMDEtMTggb20gMDc6Mjcgc2NocmVlZiBTaGFybWEsIFNoYXNoYW5r Ogo+PiBSZWdhcmRzCj4+Cj4+IFNoYXNoYW5rCj4+Cj4+Cj4+IE9uIDEvMTcvMjAxOCAxMTo1NyBQ TSwgVmlsbGUgU3lyasOkbMOkIHdyb3RlOgo+Pj4gT24gRnJpLCBKYW4gMDUsIDIwMTggYXQgMDM6 MTU6MzVQTSArMDUzMCwgU2hhc2hhbmsgU2hhcm1hIHdyb3RlOgo+Pj4+IExTUENPTiBjaGlwcyBj YW4gZ2VuZXJhdGUgWUNCQ1Igb3V0cHV0cywgaWYgYXNrZWQgbmljZWx5IDopLgo+Pj4+Cj4+Pj4g SW4gb3JkZXIgdG8gZ2VuZXJhdGUgWUNCQ1IgNDoyOjAgb3V0cHV0cywgYSBzb3VyY2UgbXVzdDoK Pj4+PiAtIHNlbmQgWUNCQ1IgNDo0OjQgc2lnbmFscyB0byBMU1BDT04KPj4+PiAtIHByb2dyYW0g Y29sb3Igc3BhY2UgYXMgNDoyOjAgaW4gQVZJIGluZm9mcmFtZXMKPj4+Pgo+Pj4+IFdoZXJlYXMg Zm9yIFlDQkNSIDQ6NDo0IG91dHB1dHMsIHRoZSBzb3VyY2UgbXVzdDoKPj4+PiAtIHNlbmQgWUNC Q1IgNDo0OjQgc2lnbmFscyB0byBMU1BDT04KPj4+PiAtIHByb2dyYW0gY29sb3Igc3BhY2UgYXMg NDo0OjQgaW4gQVZJIGluZm9mcmFtZXMKPj4+Pgo+Pj4+IFNvIGZvciBib3RoIDQ6MjowIGFzIHdl bGwgYXMgNDo0OjQgb3V0cHV0cywgd2UgYXJlIGRyaXZpbmcgdGhlCj4+Pj4gcGlwZSBmb3IgWUNC Q1IgNDo0OjQgb3V0cHV0LCBidXQgQVZJIGluZm9mcmFtZSdzIGNvbG9yIHNwYWNlCj4+Pj4gaW5m b3JtYXRpb24gaW5kaWNhdGVzIExTUENPTiBGVyB0byBzdGFydCBzY2FsaW5nIGRvd24gZnJvbSBZ Q0JDUgo+Pj4+IDQ6NDo0IGFuZCBnZW5lcmF0ZSBZQ0JDUiA0OjI6MCBvdXRwdXQuIEFzIHRoZSBz Y2FsaW5nIGlzIGRvbmUgYnkKPj4+PiBMU1BDT04gZGV2aWNlLCB3ZSBuZWVkIG5vdCB0byByZXNl cnZlIGEgc2NhbGVyIGZvciA0OjI6MCBvdXRwdXRzLgo+Pj4+Cj4+Pj4gVjI6IHJlYmFzZQo+Pj4+ IFYzOiBBZGRyZXNzZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gVmlsbGUKPj4+PiAgICAgICAtIGFk ZCBlbnVtIGNydGNfb3V0cHV0X2Zvcm1hdCBpbnN0ZWFkIG9mIGJvb2wgeWNiY3I0MjAKPj4+PiAg ICAgICAtIHVzZSBjcnRjX291dHB1dF9mb3JtYXQ9NDo0OjQgZm9yIG1vZGVzZXQgb2YgTFNQQ09O IDQ6MjowIG91dHB1dAo+Pj4+ICAgICAgICAgY2FzZXMgaW4gdGhpcyB3YXkgd2Ugd2lsbCBoYXZl IFlDQkNSIDQ6NDo0IGZyYW1ld29yayByZWFkeSAoZXhjZXB0Cj4+Pj4gICAgICAgICB0aGUgQUJJ IHBhcnQpCj4+Pj4KPj4+PiBDYzogVmlsbGUgU3lyamFsYSA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+Cj4+Pj4gQ2M6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBs aW51eC5pbnRlbC5jb20+Cj4+Pj4gU2lnbmVkLW9mZi1ieTogU2hhc2hhbmsgU2hhcm1hIDxzaGFz aGFuay5zaGFybWFAaW50ZWwuY29tPgo+Pj4+IC0tLQo+Pj4+ICAgIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcmVnLmggICAgIHwgIDIgKysKPj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kZGkuYyAgICB8ICA3ICsrKysrKysKPj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcC5jICAgICB8IDEwICsrKysrKysrKysKPj4+PiAgICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kcnYuaCAgICB8ICAyICsrCj4+Pj4gICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHNwY29uLmMgfCAyOCArKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+Pj4gICAgNSBm aWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25zKCspCj4+Pj4KPj4+PiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf cmVnLmgKPj4+PiBpbmRleCA5NjZlNGRmLi40NWVlMjY0IDEwMDY0NAo+Pj4+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3JlZy5oCj4+Pj4gQEAgLTg1NDcsNiArODU0Nyw4IEBAIGVudW0gc2tsX3Bvd2VyX2dh dGUgewo+Pj4+ICAgICNkZWZpbmUgVFJBTlNfTVNBX01JU0ModHJhbikgX01NSU9fVFJBTlMyKHRy YW4sIF9UUkFOU0FfTVNBX01JU0MpCj4+Pj4gICAgICAjZGVmaW5lICBUUkFOU19NU0FfU1lOQ19D TEsgICAgICAgICgxPDwwKQo+Pj4+ICsjZGVmaW5lICBUUkFOU19NU0FfU0FNUExJTkdfNDQ0ICAg ICAgICAoMjw8MSkKPj4+PiArI2RlZmluZSAgVFJBTlNfTVNBX0NMUlNQX1lDQkNSICAgICAgICAo Mjw8MykKPj4+PiAgICAjZGVmaW5lICBUUkFOU19NU0FfNl9CUEMgICAgICAgICgwPDw1KQo+Pj4+ ICAgICNkZWZpbmUgIFRSQU5TX01TQV84X0JQQyAgICAgICAgKDE8PDUpCj4+Pj4gICAgI2RlZmlu ZSAgVFJBTlNfTVNBXzEwX0JQQyAgICAgICAgKDI8PDUpCj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGRpLmMKPj4+PiBpbmRleCA3Yjg5ZjJhLi43NjE2ZjZmIDEwMDY0NAo+Pj4+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGRpLmMKPj4+PiBAQCAtMTQ5OSw2ICsxNDk5LDEzIEBAIHZvaWQgaW50ZWxfZGRp X3NldF9waXBlX3NldHRpbmdzKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0 YXRlKQo+Pj4+ICAgICAgICAgICAgYnJlYWs7Cj4+Pj4gICAgICAgIH0KPj4+PiAgICArICAgIC8q Cj4+Pj4gKyAgICAgKiBBcyBwZXIgRFAgMS4yIHNwZWMgc2VjdGlvbiAyLjMuNC4zIHdoaWxlIHNl bmRpbmcKPj4+PiArICAgICAqIFlDQkNSIDQ0NCBzaWduYWxzIHdlIHNob3VsZCBwcm9ncmFtIE1T QSBNSVNDMS8wIGZpZWxkcyB3aXRoCj4+Pj4gKyAgICAgKiBjb2xvcnNwYWNlIGluZm9ybWF0aW9u Lgo+Pj4+ICsgICAgICovCj4+Pj4gKyAgICBpZiAoY3J0Y19zdGF0ZS0+b3V0cHV0X2Zvcm1hdCA9 PSBDUlRDX09VVFBVVF9ZQ0JDUjQ0NCkKPj4+PiArICAgICAgICB0ZW1wIHw9IFRSQU5TX01TQV9T QU1QTElOR180NDQgfCBUUkFOU19NU0FfQ0xSU1BfWUNCQ1I7Cj4+PiBUaGlzIGZhaWxzIHRvIHN0 YXRlIHRoYXQgd2UncmUgaW5kaWNhdGluZyBCVC42MDEgZW5jb2RpbmcuIEkgdGhpbmsgd2UKPj4+ IHNob3VsZCBzcGVsbCB0aGF0IG91dCBleHBsaWNpdGx5Lgo+PiBBZ3JlZSwgSSB3aWxsIGFkZCB0 aGlzIGluIGNvbW1lbnRzLgo+Pj4+ICAgICAgICBJOTE1X1dSSVRFKFRSQU5TX01TQV9NSVNDKGNw dV90cmFuc2NvZGVyKSwgdGVtcCk7Cj4+Pj4gICAgfQo+Pj4+ICAgIGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHAuYwo+Pj4+IGluZGV4IDM1YzUyOTkuLjNiZjgyZWEgMTAwNjQ0Cj4+Pj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZHAuYwo+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2RwLmMKPj4+PiBAQCAtMTYxMyw2ICsxNjEzLDcgQEAgaW50ZWxfZHBfY29tcHV0ZV9j b25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4+Pj4gICAgICAgIHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZW5jb2Rlci0+YmFzZS5kZXYpOwo+ Pj4+ICAgICAgICBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9ICZwaXBl X2NvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2RlOwo+Pj4+ICAgICAgICBzdHJ1Y3QgaW50ZWxfZHAg KmludGVsX2RwID0gZW5jX3RvX2ludGVsX2RwKCZlbmNvZGVyLT5iYXNlKTsKPj4+PiArICAgIHN0 cnVjdCBpbnRlbF9sc3Bjb24gKmxzcGNvbiA9IGVuY190b19pbnRlbF9sc3Bjb24oJmVuY29kZXIt PmJhc2UpOwo+Pj4+ICAgICAgICBlbnVtIHBvcnQgcG9ydCA9IGVuY29kZXItPnBvcnQ7Cj4+Pj4g ICAgICAgIHN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhwaXBl X2NvbmZpZy0+YmFzZS5jcnRjKTsKPj4+PiAgICAgICAgc3RydWN0IGludGVsX2Nvbm5lY3RvciAq aW50ZWxfY29ubmVjdG9yID0gaW50ZWxfZHAtPmF0dGFjaGVkX2Nvbm5lY3RvcjsKPj4+PiBAQCAt MTY0Miw2ICsxNjQzLDE1IEBAIGludGVsX2RwX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBpbnRlbF9l bmNvZGVyICplbmNvZGVyLAo+Pj4+ICAgICAgICBpZiAoSEFTX1BDSF9TUExJVChkZXZfcHJpdikg JiYgIUhBU19EREkoZGV2X3ByaXYpICYmIHBvcnQgIT0gUE9SVF9BKQo+Pj4+ICAgICAgICAgICAg cGlwZV9jb25maWctPmhhc19wY2hfZW5jb2RlciA9IHRydWU7Cj4+Pj4gICAgKyAgICBpZiAobHNw Y29uLT5hY3RpdmUpIHsKPj4+PiArICAgICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yID0gJmludGVsX2Nvbm5lY3Rvci0+YmFzZTsKPj4+PiArCj4+Pj4gKyAgICAgICAgaWYgKGxz cGNvbl95Y2JjcjQyMF9jb25maWcoY29ubmVjdG9yLCBwaXBlX2NvbmZpZykpIHsKPj4+PiArICAg ICAgICAgICAgcGlwZV9jb25maWctPm91dHB1dF9mb3JtYXQgPSBDUlRDX09VVFBVVF9ZQ0JDUjQ0 NDsKPj4+IEkgdGhpbmsgSSdkIGxpa2UgdG8gc2VlIGFsbCBjb21wdXRlX2NvbmZpZyBob29rcyBl eHBsaWNpdGx5IHNldCB0aGUKPj4+IG91dG91dF9mb3JtYXQgKHRvIFJHQiB1c3VhbGx5IG9idmlv dXNseSkuCj4+IFRoYXQncyB0aGUgb25lIEkgd2FzIHRhbGtpbmcgYWJvdXQgaW4gcHJldmlvdXMg cGF0Y2guIElmIHdlIGtlZXAgb3V0cHV0X2Zvcm1hdF9SR0IgPSAwLCB3ZSBuZWVkCj4+IG5vdCB0 byBkbyB0aGlzLCBhcyByZXNldCBvZiB0aGUgcGlwZV9jb25maWcgd2lsbCBhdXRvbWF0aWNhbGx5 IG1ha2UgaXQgUkdCLgo+Pj4+ICsgICAgICAgICAgICBsc3Bjb24tPm91dHB1dF9mb3JtYXQgPSBD UlRDX09VVFBVVF9ZQ0JDUjQyMDsKPj4+IFlvdSBzaG91bGQgbm90IG1vZGlmeSBhbnkgbm9uLWF0 b21pYyBzdGF0ZSBsaWtlIHRoYXQgaW4gY29tcHV0ZV9jb25maWcuCj4+IFBsZWFzZSBoZWxwIG1l IHRvIHVuZGVyc3RhbmQgdGhpcyBiZXR0ZXIsIENhbiB5b3UgZWxhYm9yYXRlIGEgYml0IG1vcmUg b246Cj4+IC0gV2h5IGlzIHRoaXMgYSBub24tYXRvbWljIHN0YXRlID8KPiBCZWNhdXNlIGxzcGNv bi0+b3V0cHV0X2Zvcm1hdCBpcyBtb2RpZmllZCBldmVuIGlmIGEgY29tbWl0IGlzIFRFU1RfT05M WS4uCj4KPiBUaGlzIHdpbGwgYnJlYWsgaWYgeW91IGRvIGEgbm9uYmxvY2tpbmcgbW9kZXNldCB2 cyBURVNUX09OTFksIGl0IGNvdWxkIGNvbW1pdCB0aGUgd3JvbmcgbHNwY29uLT5vdXRwdXRfZm9y bWF0LiA6KQo+PiAtIFdoYXQgaXMgdGhlIHJpZ2h0IHBsYWNlIHdlIHNob3VsZCBtb2RpZnkgaXQg Pwo+IGludGVsX2RpZ2l0YWxfY29ubmVjdG9yX3N0YXRlIHByb2JhYmx5Lgo+Cj4gfk1hYXJ0ZW4K VGhhbmtzIGZvciB0aGUgZXhwbGFuYXRpb24gTWFhcnRlbiwgdGhpcyB3YXMgdmVyeSBoZWxwZnVs IDotKS4KLSBTaGFzaGFuawo+PiAtIFNoYXNoYW5rCj4+Pj4gKyAgICAgICAgfQo+Pj4+ICsgICAg fQo+Pj4+ICsKPj4+PiAgICAgICAgcGlwZV9jb25maWctPmhhc19kcnJzID0gZmFsc2U7Cj4+Pj4g ICAgICAgIGlmIChJU19HNFgoZGV2X3ByaXYpIHx8IHBvcnQgPT0gUE9SVF9BKQo+Pj4+ICAgICAg ICAgICAgcGlwZV9jb25maWctPmhhc19hdWRpbyA9IGZhbHNlOwo+Pj4+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oCj4+Pj4gaW5kZXggMmRlNmI0MS4uNWVkYmEwNiAxMDA2NDQKPj4+PiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oCj4+Pj4gQEAgLTIwNDcsNiArMjA0Nyw4IEBAIHZvaWQgbHNwY29u X3NldF9pbmZvZnJhbWVzKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKPj4+PiAgICAgICAg ICAgICAgICAgICBjb25zdCBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZSk7 Cj4+Pj4gICAgYm9vbCBsc3Bjb25faW5mb2ZyYW1lX2VuYWJsZWQoc3RydWN0IGRybV9lbmNvZGVy ICplbmNvZGVyLAo+Pj4+ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpwaXBlX2NvbmZpZyk7Cj4+Pj4gK2Jvb2wgbHNwY29uX3ljYmNyNDIwX2NvbmZp ZyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+Pj4+ICsgICAgICAgICAgICAgICAg IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjb25maWcpOwo+Pj4+ICAgICAgLyogaW50ZWxfcGlw ZV9jcmMuYyAqLwo+Pj4+ICAgIGludCBpbnRlbF9waXBlX2NyY19jcmVhdGUoc3RydWN0IGRybV9t aW5vciAqbWlub3IpOwo+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9sc3Bjb24uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xzcGNvbi5jCj4+Pj4gaW5k ZXggMDY2ZWE5MS4uY2I4ODEzOCAxMDA2NDQKPj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9sc3Bjb24uYwo+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xz cGNvbi5jCj4+Pj4gQEAgLTE4MCw2ICsxODAsMjUgQEAgc3RhdGljIGJvb2wgbHNwY29uX3dha2Vf bmF0aXZlX2F1eF9jaChzdHJ1Y3QgaW50ZWxfbHNwY29uICpsc3Bjb24pCj4+Pj4gICAgICAgIHJl dHVybiB0cnVlOwo+Pj4+ICAgIH0KPj4+PiAgICArYm9vbCBsc3Bjb25feWNiY3I0MjBfY29uZmln KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4+Pj4gKyAgICAgICAgICAgICAgICAg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNvbmZpZykKPj4+PiArewo+Pj4+ICsgICAgc3RydWN0 IGRybV9kaXNwbGF5X2luZm8gKmluZm8gPSAmY29ubmVjdG9yLT5kaXNwbGF5X2luZm87Cj4+Pj4g KyAgICBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSA9ICZjb25maWctPmJhc2UuYWRqdXN0 ZWRfbW9kZTsKPj4+PiArCj4+Pj4gKyAgICBpZiAoZHJtX21vZGVfaXNfNDIwX29ubHkoaW5mbywg bW9kZSkpIHsKPj4+PiArICAgICAgICBpZiAoIWNvbm5lY3Rvci0+eWNiY3JfNDIwX2FsbG93ZWQp IHsKPj4+PiArICAgICAgICAgICAgRFJNX0VSUk9SKCJQbGF0Zm9ybSBkb2Vzbid0IHN1cHBvcnQg WUNCQ1I0MjAgb3V0cHV0XG4iKTsKPj4+PiArICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwo+Pj4+ ICsgICAgICAgIH0KPj4+PiArCj4+Pj4gKyAgICAgICAgY29uZmlnLT5wb3J0X2Nsb2NrIC89IDI7 Cj4+Pj4gKyAgICAgICAgcmV0dXJuIHRydWU7Cj4+Pj4gKyAgICB9Cj4+Pj4gKwo+Pj4+ICsgICAg cmV0dXJuIGZhbHNlOwo+Pj4+ICt9Cj4+Pj4gKwo+Pj4+ICAgIHN0YXRpYyBib29sIGxzcGNvbl9w cm9iZShzdHJ1Y3QgaW50ZWxfbHNwY29uICpsc3Bjb24pCj4+Pj4gICAgewo+Pj4+ICAgICAgICBp bnQgcmV0cnk7Cj4+Pj4gQEAgLTQ1OSw2ICs0NzgsMTMgQEAgdm9pZCBsc3Bjb25fc2V0X2luZm9m cmFtZXMoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+Pj4+ICAgICAgICAgICAgcmV0dXJu Owo+Pj4+ICAgICAgICB9Cj4+Pj4gICAgKyAgICBpZiAobHNwY29uLT5vdXRwdXRfZm9ybWF0ID09 IENSVENfT1VUUFVUX1lDQkNSNDIwKQo+Pj4+ICsgICAgICAgIGZyYW1lLmF2aS5jb2xvcnNwYWNl ID0gSERNSV9DT0xPUlNQQUNFX1lVVjQyMDsKPj4+PiArICAgIGVsc2UgaWYgKGxzcGNvbi0+b3V0 cHV0X2Zvcm1hdCA9PSBDUlRDX09VVFBVVF9ZQ0JDUjQ0NCkKPj4+PiArICAgICAgICBmcmFtZS5h dmkuY29sb3JzcGFjZSA9IEhETUlfQ09MT1JTUEFDRV9ZVVY0NDQ7Cj4+Pj4gKyAgICBlbHNlCj4+ Pj4gKyAgICAgICAgZnJhbWUuYXZpLmNvbG9yc3BhY2UgPSBIRE1JX0NPTE9SU1BBQ0VfUkdCOwo+ Pj4+ICsKPj4+PiAgICAgICAgZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9xdWFudF9yYW5nZSgmZnJh bWUuYXZpLCBtb2RlLAo+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgY3J0Y19zdGF0ZS0+ bGltaXRlZF9jb2xvcl9yYW5nZSA/Cj4+Pj4gICAgICAgICAgICAgICAgICAgICAgICAgICBIRE1J X1FVQU5USVpBVElPTl9SQU5HRV9MSU1JVEVEIDoKPj4+PiBAQCAtNTEyLDYgKzUzOCw3IEBAIGJv b2wgbHNwY29uX2luaXQoc3RydWN0IGludGVsX2RpZ2l0YWxfcG9ydCAqaW50ZWxfZGlnX3BvcnQp Cj4+Pj4gICAgICAgIHN0cnVjdCBpbnRlbF9sc3Bjb24gKmxzcGNvbiA9ICZpbnRlbF9kaWdfcG9y dC0+bHNwY29uOwo+Pj4+ICAgICAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gaW50ZWxfZGln X3BvcnQtPmJhc2UuYmFzZS5kZXY7Cj4+Pj4gICAgICAgIHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKPj4+PiArICAgIHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IgPSAmZHAtPmF0dGFjaGVkX2Nvbm5lY3Rvci0+YmFzZTsKPj4+PiAgICAgICAg ICBpZiAoIUhBU19MU1BDT04oZGV2X3ByaXYpKSB7Cj4+Pj4gICAgICAgICAgICBEUk1fRVJST1Io IkxTUENPTiBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZvcm1cbiIpOwo+Pj4+IEBAIC01 MzYsNiArNTYzLDcgQEAgYm9vbCBsc3Bjb25faW5pdChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0 ICppbnRlbF9kaWdfcG9ydCkKPj4+PiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKPj4+PiAgICAg ICAgfQo+Pj4+ICAgICsgICAgY29ubmVjdG9yLT55Y2Jjcl80MjBfYWxsb3dlZCA9IHRydWU7Cj4+ Pj4gICAgICAgIGxzcGNvbi0+YWN0aXZlID0gdHJ1ZTsKPj4+PiAgICAgICAgRFJNX0RFQlVHX0tN UygiU3VjY2VzczogTFNQQ09OIGluaXRcbiIpOwo+Pj4+ICAgICAgICByZXR1cm4gdHJ1ZTsKPj4+ PiAtLSAKPj4+PiAyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==