From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jyri Sarha Subject: Re: [PATCH 5/7] drm/omap: Enable COLOR_ENCODING and COLOR_RANGE properties for planes Date: Thu, 5 Sep 2019 12:24:37 +0300 Message-ID: References: <20190902125359.18001-1-tomi.valkeinen@ti.com> <20190902125359.18001-6-tomi.valkeinen@ti.com> <20190903153206.GC8247@pendragon.ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fllv0016.ext.ti.com (fllv0016.ext.ti.com [198.47.19.142]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9034E890D4 for ; Thu, 5 Sep 2019 09:24:43 +0000 (UTC) In-Reply-To: <20190903153206.GC8247@pendragon.ideasonboard.com> Content-Language: en-GB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Laurent Pinchart , Tomi Valkeinen Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gMDMvMDkvMjAxOSAxODozMiwgTGF1cmVudCBQaW5jaGFydCB3cm90ZToKPiBIaSBUb21pLAo+ IAo+IFRoYW5rIHlvdSBmb3IgdGhlIHBhdGNoLgo+IAo+IE9uIE1vbiwgU2VwIDAyLCAyMDE5IGF0 IDAzOjUzOjU3UE0gKzAzMDAsIFRvbWkgVmFsa2VpbmVuIHdyb3RlOgo+PiBGcm9tOiBKeXJpIFNh cmhhIDxqc2FyaGFAdGkuY29tPgo+Pgo+PiBBZGRzIHN1cHBvcnQgZm9yIENPTE9SX0VOQ09ESU5H IGFuZCBDT0xPUl9SQU5HRSBwcm9wZXJ0aWVzIHRvCj4+IG9tYXBfcGxhbmUuYyBhbmQgZGlzcGMu Yy4gVGhlIHN1cHBvcnRlZCBlbmNvZGluZ3MgYW5kIHJhbmdlcyBhcmU6Cj4+Cj4+IEZvciBDT0xP Ul9FTkNPRElORzoKPj4gLSBZQ2JDdCBCVC42MDEgKGRlZmF1bHQpCj4gCj4gRGlkIHlvdSBtZWFu IFlDYkNyID8KPiA+PiAtIFlDYkN0IEJULjcwOQo+Pgo+PiBGb3IgQ09MT1JfUkFOR0U6Cj4+IC0g WUNiQ3QgbGltaXRlZCByYW5nZQo+PiAtIFlDYkN0IGZ1bGwgcmFuZ2UgKGRlZmF1bHQpCj4+Cj4+ IFNpZ25lZC1vZmYtYnk6IEp5cmkgU2FyaGEgPGpzYXJoYUB0aS5jb20+Cj4+IFNpZ25lZC1vZmYt Ynk6IFRvbWkgVmFsa2VpbmVuIDx0b21pLnZhbGtlaW5lbkB0aS5jb20+Cj4+IC0tLQo+PiAgZHJp dmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL2Rpc3BjLmMgICB8IDExOSArKysrKysrKysrKysrKysr KysrKy0tLS0tLQo+PiAgZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL29tYXBkc3MuaCB8ICAg NCArCj4+ICBkcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX3BsYW5lLmMgIHwgIDMwICsrKysr KysKPj4gIDMgZmlsZXMgY2hhbmdlZCwgMTI3IGluc2VydGlvbnMoKyksIDI2IGRlbGV0aW9ucygt KQo+Pgo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL2Rpc3BjLmMg Yi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9kc3MvZGlzcGMuYwo+PiBpbmRleCA3ZDg3ZDYwZWRi ODAuLjQwZGRiMjhlZTdhYSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0v ZHNzL2Rpc3BjLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL2Rpc3BjLmMK Pj4gQEAgLTg5MiwzMiArODkyLDkxIEBAIHN0YXRpYyB2b2lkIGRpc3BjX3diX3dyaXRlX2NvbG9y X2NvbnZfY29lZihzdHJ1Y3QgZGlzcGNfZGV2aWNlICpkaXNwYywKPj4gICN1bmRlZiBDVkFMCj4+ ICB9Cj4+ICAKPj4gLXN0YXRpYyB2b2lkIGRpc3BjX3NldHVwX2NvbG9yX2NvbnZfY29lZihzdHJ1 Y3QgZGlzcGNfZGV2aWNlICpkaXNwYykKPj4gKy8qIFlVViAtPiBSR0IsIElUVS1SIEJULjYwMSwg ZnVsbCByYW5nZSAqLwo+PiArY29uc3Qgc3RhdGljIHN0cnVjdCBjc2NfY29lZl95dXYycmdiIGNv ZWZzX3l1djJyZ2JfYnQ2MDFfZnVsbCA9IHsKPiAKPiBzdGF0aWMgY29uc3QgaXMgdXN1YWxseSBw cmVmZXJyZWQgb3ZlciBjb25zdCBzdGF0aWMsIGhlcmUgYW5kIGJlbG93Lgo+IAo+PiArCTI1Niwg ICAwLCAgMzU4LAkJLyogcnksIHJjYiwgcmNyIHwxLjAwMCAgMC4wMDAgIDEuNDAyfCovCj4+ICsJ MjU2LCAtODgsIC0xODIsCQkvKiBneSwgZ2NiLCBnY3IgfDEuMDAwIC0wLjM0NCAtMC43MTR8Ki8K Pj4gKwkyNTYsIDQ1MiwgICAgMCwJCS8qIGJ5LCBiY2IsIGJjciB8MS4wMDAgIDEuNzcyICAwLjAw MHwqLwo+PiArCXRydWUsCQkJLyogZnVsbCByYW5nZSAqLwo+PiArfTsKPj4gKwo+PiArLyogWVVW IC0+IFJHQiwgSVRVLVIgQlQuNjAxLCBsaW1pdGVkIHJhbmdlICovCj4+ICtjb25zdCBzdGF0aWMg c3RydWN0IGNzY19jb2VmX3l1djJyZ2IgY29lZnNfeXV2MnJnYl9idDYwMV9saW0gPSB7Cj4+ICsJ Mjk4LCAgICAwLCAgNDA5LAkvKiByeSwgcmNiLCByY3IgfDEuMTY0ICAwLjAwMCAgMS41OTZ8Ki8K Pj4gKwkyOTgsIC0xMDAsIC0yMDgsCS8qIGd5LCBnY2IsIGdjciB8MS4xNjQgLTAuMzkyIC0wLjgx M3wqLwo+PiArCTI5OCwgIDUxNiwgICAgMCwJLyogYnksIGJjYiwgYmNyIHwxLjE2NCAgMi4wMTcg IDAuMDAwfCovCj4+ICsJZmFsc2UsCQkJLyogbGltaXRlZCByYW5nZSAqLwo+PiArfTsKPj4gKwo+ PiArLyogWVVWIC0+IFJHQiwgSVRVLVIgQlQuNzA5LCBmdWxsIHJhbmdlICovCj4+ICtjb25zdCBz dGF0aWMgc3RydWN0IGNzY19jb2VmX3l1djJyZ2IgY29lZnNfeXV2MnJnYl9idDcwOV9mdWxsID0g ewo+PiArCTI1NiwgICAgMCwgIDQwMiwgICAgICAgIC8qIHJ5LCByY2IsIHJjciB8MS4wMDAgIDAu MDAwICAxLjU3MHwqLwo+PiArCTI1NiwgIC00OCwgLTEyMCwgICAgICAgIC8qIGd5LCBnY2IsIGdj ciB8MS4wMDAgLTAuMTg3IC0wLjQ2N3wqLwo+PiArCTI1NiwgIDQ3NSwgICAgMCwgICAgICAgIC8q IGJ5LCBiY2IsIGJjciB8MS4wMDAgIDEuODU2ICAwLjAwMHwqLwo+PiArCXRydWUsICAgICAgICAg ICAgICAgICAgIC8qIGZ1bGwgcmFuZ2UgKi8KPj4gK307Cj4+ICsKPj4gKy8qIFlVViAtPiBSR0Is IElUVS1SIEJULjcwOSwgbGltaXRlZCByYW5nZSAqLwo+PiArY29uc3Qgc3RhdGljIHN0cnVjdCBj c2NfY29lZl95dXYycmdiIGNvZWZzX3l1djJyZ2JfYnQ3MDlfbGltID0gewo+PiArCTI5OCwgICAg MCwgIDQ1OSwJLyogcnksIHJjYiwgcmNyIHwxLjE2NCAgMC4wMDAgIDEuNzkzfCovCj4+ICsJMjk4 LCAgLTU1LCAtMTM2LAkvKiBneSwgZ2NiLCBnY3IgfDEuMTY0IC0wLjIxMyAtMC41MzN8Ki8KPj4g KwkyOTgsICA1NDEsICAgIDAsCS8qIGJ5LCBiY2IsIGJjciB8MS4xNjQgIDIuMTEyICAwLjAwMHwq Lwo+PiArCWZhbHNlLAkJCS8qIGxpbWl0ZWQgcmFuZ2UgKi8KPj4gK307Cj4+ICsKPj4gKy8qIFJH QiAtPiBZVVYsIElUVS1SIEJULjYwMSwgbGltaXRlZCByYW5nZSAqLwo+PiArY29uc3Qgc3RhdGlj IHN0cnVjdCBjc2NfY29lZl9yZ2IyeXV2IGNvZWZzX3JnYjJ5dXZfYnQ2MDFfbGltID0gewo+PiAr CSA2NiwgMTI5LCAgMjUsCQkvKiB5ciwgICB5ZywgIHliIHwgMC4yNTcgIDAuNTA0ICAwLjA5OHwq Lwo+PiArCS0zOCwgLTc0LCAxMTIsCQkvKiBjYnIsIGNiZywgY2JiIHwtMC4xNDggLTAuMjkxICAw LjQzOXwqLwo+PiArCTExMiwgLTk0LCAtMTgsCQkvKiBjcnIsIGNyZywgY3JiIHwgMC40MzkgLTAu MzY4IC0wLjA3MXwqLwo+PiArCWZhbHNlLAkJCS8qIGxpbWl0ZWQgcmFuZ2UgKi8KPj4gK307Cj4+ ICsKPj4gKy8qIFJHQiAtPiBZVVYsIElUVS1SIEJULjYwMSwgZnVsbCByYW5nZSAqLwo+PiArY29u c3Qgc3RhdGljIHN0cnVjdCBjc2NfY29lZl9yZ2IyeXV2IGNvZWZzX3JnYjJ5dXZfYnQ2MDFfZnVs bCA9IHsKPj4gKwkgNzcsICAxNTAsICAyOSwJCS8qIHlyLCAgIHlnLCAgeWIgfCAwLjI5OSAgMC41 ODcgIDAuMTE0fCovCj4+ICsJLTQzLCAgLTg1LCAxMjgsCQkvKiBjYnIsIGNiZywgY2JiIHwtMC4x NzMgLTAuMzM5ICAwLjUxMXwqLwo+PiArCTEyOCwgLTEwNywgLTIxLAkJLyogY3JyLCBjcmcsIGNy YiB8IDAuNTExIC0wLjQyOCAtMC4wODN8Ki8KPj4gKwl0cnVlLAkJCS8qIGZ1bGwgcmFuZ2UgKi8K Pj4gK307Cj4+ICsKPj4gKy8qIFJHQiAtPiBZVVYsIElUVS1SIEJULjcwOSwgbGltaXRlZCByYW5n ZSAqLwo+PiArY29uc3Qgc3RhdGljIHN0cnVjdCBjc2NfY29lZl9yZ2IyeXV2IGNvZWZzX3JnYjJ5 dXZfYnQ3MDFfbGltID0gewo+IAo+IFRoYXQgc2hvdWxkIGJlIGNvZWZzX3JnYjJ5dXZfYnQ3MDlf bGltCj4gCj4+ICsJIDQ3LCAgMTU3LCAgIDE2LAkvKiB5ciwgICB5ZywgIHliIHwgMC4xODI2ICAw LjYxNDIgIDAuMDYyMHwqLwo+PiArCS0yNiwgIC04NywgIDExMiwJLyogY2JyLCBjYmcsIGNiYiB8 LTAuMTAwNiAtMC4zMzg2ICAwLjQzOTJ8Ki8KPj4gKwkxMTIsIC0xMDIsICAtMTAsCS8qIGNyciwg Y3JnLCBjcmIgfCAwLjQzOTIgLTAuMzk4OSAtMC4wNDAzfCovCj4+ICsJZmFsc2UsCQkJLyogbGlt aXRlZCByYW5nZSAqLwo+PiArfTsKPiAKPiBXaHkgaXMgY29lZnNfcmdiMnl1dl9idDcwOV9mdWxs IG5vdCBzdXBwb3J0ZWQgPyBBY3R1YWxseQo+IGNvZWZzX3JnYjJ5dXZfYnQ2MDFfbGltIGFuZCBj b2Vmc19yZ2IyeXV2X2J0NzAxX2xpbSBzZWVtIHVudXNlZC4KPiAKCkkgbXVzdCBoYXZlIHNpbXBs eSBmb3Jnb3R0ZW4uIFRoaXMgaXMgYW4gb2xkIHBhdGNoIGFuZCBJIGNhbiBub3QKcmVtZW1iZXIg ZXhhY3RseS4gQnV0IEkgcmVtZW1iZXIgdGhhdCBJIHdhbnRlZCB0byBhZGQgYWxsIENTQ3MgYXQg b25lCnRpbWUgc28gdGhhdCBJIGRvIG5vdCBuZWVkIHN0YXJ0IGZyb20gdGhlIGJlZ2lubmluZyB3 aGVuIGV2ZXIgYSBuZXcKY29udmVyc2lvbiBpcyBhc2tlZC4gRm9yIHRoZSBtb21lbnQgcmdiIHRv IHl1diBjb252ZXJzaW9ucyBhcmUgb25seSB1c2VkCmZvciB3cml0ZSBiYWNrIGFuZCBpdCBjdXJy ZW50bHkgb25seSB1c2VzIHRoZSBkZWZhdWx0IEJULjYwMSBGdWxsIHJhbmdlLgoKSSdsbCBhZGQg cmdiMnl1dl9idDcwOV9mdWxsLiBPciBzaG91bGQgSSByZW1vdmUgYWxsIHRoZSB1bnVzZWQgQ1ND cz8gT3IKbWF5YmUgcHV0IHRoZW0gYmVoaW5kIHNvbWUgaWZkZWYgc28gdGhhdCB0aGV5IGRvIG5v dCBibG9hdCB0aGUga2VybmVsPwoKPj4gKwo+PiArc3RhdGljIGludCBkaXNwY19vdmxfc2V0X2Nz YyhzdHJ1Y3QgZGlzcGNfZGV2aWNlICpkaXNwYywKPj4gKwkJCSAgICAgZW51bSBvbWFwX3BsYW5l X2lkIHBsYW5lLAo+PiArCQkJICAgICBlbnVtIGRybV9jb2xvcl9lbmNvZGluZyBjb2xvcl9lbmNv ZGluZywKPj4gKwkJCSAgICAgZW51bSBkcm1fY29sb3JfcmFuZ2UgY29sb3JfcmFuZ2UpCj4+ICB7 Cj4+IC0JaW50IGk7Cj4+IC0JaW50IG51bV9vdmwgPSBkaXNwY19nZXRfbnVtX292bHMoZGlzcGMp Owo+PiAtCj4+IC0JLyogWVVWIC0+IFJHQiwgSVRVLVIgQlQuNjAxLCBsaW1pdGVkIHJhbmdlICov Cj4+IC0JY29uc3Qgc3RydWN0IGNzY19jb2VmX3l1djJyZ2IgY29lZnNfeXV2MnJnYl9idDYwMV9s aW0gPSB7Cj4+IC0JCTI5OCwgICAgMCwgIDQwOSwJLyogcnksIHJjYiwgcmNyICovCj4+IC0JCTI5 OCwgLTEwMCwgLTIwOCwJLyogZ3ksIGdjYiwgZ2NyICovCj4+IC0JCTI5OCwgIDUxNiwgICAgMCwJ LyogYnksIGJjYiwgYmNyICovCj4+IC0JCWZhbHNlLAkJCS8qIGxpbWl0ZWQgcmFuZ2UgKi8KPj4g LQl9Owo+PiArCWNvbnN0IHN0cnVjdCBjc2NfY29lZl95dXYycmdiICpjc2M7Cj4+ICAKPj4gLQkv KiBSR0IgLT4gWVVWLCBJVFUtUiBCVC42MDEsIGxpbWl0ZWQgcmFuZ2UgKi8KPj4gLQljb25zdCBz dHJ1Y3QgY3NjX2NvZWZfcmdiMnl1diBjb2Vmc19yZ2IyeXV2X2J0NjAxX2xpbSA9IHsKPj4gLQkJ IDY2LCAxMjksICAyNSwJCS8qIHlyLCAgIHlnLCAgeWIgKi8KPj4gLQkJLTM4LCAtNzQsIDExMiwJ CS8qIGNiciwgY2JnLCBjYmIgKi8KPj4gLQkJMTEyLCAtOTQsIC0xOCwJCS8qIGNyciwgY3JnLCBj cmIgKi8KPj4gLQkJZmFsc2UsCQkJLyogbGltaXRlZCByYW5nZSAqLwo+PiAtCX07Cj4+ICsJc3dp dGNoIChjb2xvcl9lbmNvZGluZykgewo+PiArCWNhc2UgRFJNX0NPTE9SX1lDQkNSX0JUNjAxOgo+ PiArCQlpZiAoY29sb3JfcmFuZ2UgPT0gRFJNX0NPTE9SX1lDQkNSX0ZVTExfUkFOR0UpCj4+ICsJ CQljc2MgPSAmY29lZnNfeXV2MnJnYl9idDYwMV9mdWxsOwo+PiArCQllbHNlCj4+ICsJCQljc2Mg PSAmY29lZnNfeXV2MnJnYl9idDYwMV9saW07Cj4+ICsJCWJyZWFrOwo+PiArCWNhc2UgRFJNX0NP TE9SX1lDQkNSX0JUNzA5Ogo+PiArCQlpZiAoY29sb3JfcmFuZ2UgPT0gRFJNX0NPTE9SX1lDQkNS X0ZVTExfUkFOR0UpCj4+ICsJCQljc2MgPSAmY29lZnNfeXV2MnJnYl9idDcwOV9mdWxsOwo+PiAr CQllbHNlCj4+ICsJCQljc2MgPSAmY29lZnNfeXV2MnJnYl9idDcwOV9saW07Cj4+ICsJCWJyZWFr Owo+PiArCWRlZmF1bHQ6Cj4+ICsJCURTU0VSUigiVW5zdXBwb3J0ZWQgQ1NDIG1vZGUgJWQgZm9y IHBsYW5lICVkXG4iLAo+PiArCQkgICAgICAgY29sb3JfZW5jb2RpbmcsIHBsYW5lKTsKPj4gKwkJ cmV0dXJuIC1FSU5WQUw7Cj4+ICsJfQo+PiAgCj4+IC0JZm9yIChpID0gMTsgaSA8IG51bV9vdmw7 IGkrKykKPj4gLQkJZGlzcGNfb3ZsX3dyaXRlX2NvbG9yX2NvbnZfY29lZihkaXNwYywgaSwgJmNv ZWZzX3l1djJyZ2JfYnQ2MDFfbGltKTsKPj4gKwlkaXNwY19vdmxfd3JpdGVfY29sb3JfY29udl9j b2VmKGRpc3BjLCBwbGFuZSwgY3NjKTsKPj4gIAo+PiAtCWlmIChkaXNwYy0+ZmVhdC0+aGFzX3dy aXRlYmFjaykKPj4gLQkJZGlzcGNfd2Jfd3JpdGVfY29sb3JfY29udl9jb2VmKGRpc3BjLCAmY29l ZnNfcmdiMnl1dl9idDYwMV9saW0pOwo+PiArCXJldHVybiAwOwo+PiAgfQo+PiAgCj4+ICBzdGF0 aWMgdm9pZCBkaXNwY19vdmxfc2V0X2JhMChzdHJ1Y3QgZGlzcGNfZGV2aWNlICpkaXNwYywKPj4g QEAgLTI1OTgsNyArMjY1Nyw5IEBAIHN0YXRpYyBpbnQgZGlzcGNfb3ZsX3NldHVwX2NvbW1vbihz dHJ1Y3QgZGlzcGNfZGV2aWNlICpkaXNwYywKPj4gIAkJCQkgIHU4IHByZV9tdWx0X2FscGhhLCB1 OCBnbG9iYWxfYWxwaGEsCj4+ICAJCQkJICBlbnVtIG9tYXBfZHNzX3JvdGF0aW9uX3R5cGUgcm90 YXRpb25fdHlwZSwKPj4gIAkJCQkgIGJvb2wgcmVwbGljYXRpb24sIGNvbnN0IHN0cnVjdCB2aWRl b21vZGUgKnZtLAo+PiAtCQkJCSAgYm9vbCBtZW1fdG9fbWVtKQo+PiArCQkJCSAgYm9vbCBtZW1f dG9fbWVtLAo+PiArCQkJCSAgZW51bSBkcm1fY29sb3JfZW5jb2RpbmcgY29sb3JfZW5jb2Rpbmcs Cj4+ICsJCQkJICBlbnVtIGRybV9jb2xvcl9yYW5nZSBjb2xvcl9yYW5nZSkKPj4gIHsKPj4gIAli b29sIGZpdmVfdGFwcyA9IHRydWU7Cj4+ICAJYm9vbCBmaWVsZG1vZGUgPSBmYWxzZTsKPj4gQEAg LTI3NDcsNiArMjgwOCw5IEBAIHN0YXRpYyBpbnQgZGlzcGNfb3ZsX3NldHVwX2NvbW1vbihzdHJ1 Y3QgZGlzcGNfZGV2aWNlICpkaXNwYywKPj4gIAkJCQkgICAgICBmaWVsZG1vZGUsIGZvdXJjYywg cm90YXRpb24pOwo+PiAgCQlkaXNwY19vdmxfc2V0X291dHB1dF9zaXplKGRpc3BjLCBwbGFuZSwg b3V0X3dpZHRoLCBvdXRfaGVpZ2h0KTsKPj4gIAkJZGlzcGNfb3ZsX3NldF92aWRfY29sb3JfY29u dihkaXNwYywgcGxhbmUsIGNjb252KTsKPj4gKwo+PiArCQlpZiAocGxhbmUgIT0gT01BUF9EU1Nf V0IpCj4+ICsJCQlkaXNwY19vdmxfc2V0X2NzYyhkaXNwYywgcGxhbmUsIGNvbG9yX2VuY29kaW5n LCBjb2xvcl9yYW5nZSk7Cj4+ICAJfQo+PiAgCj4+ICAJZGlzcGNfb3ZsX3NldF9yb3RhdGlvbl9h dHRycyhkaXNwYywgcGxhbmUsIHJvdGF0aW9uLCByb3RhdGlvbl90eXBlLAo+PiBAQCAtMjc4Myw3 ICsyODQ3LDggQEAgc3RhdGljIGludCBkaXNwY19vdmxfc2V0dXAoc3RydWN0IGRpc3BjX2Rldmlj ZSAqZGlzcGMsCj4+ICAJCW9pLT5zY3JlZW5fd2lkdGgsIG9pLT5wb3NfeCwgb2ktPnBvc195LCBv aS0+d2lkdGgsIG9pLT5oZWlnaHQsCj4+ICAJCW9pLT5vdXRfd2lkdGgsIG9pLT5vdXRfaGVpZ2h0 LCBvaS0+Zm91cmNjLCBvaS0+cm90YXRpb24sCj4+ICAJCW9pLT56b3JkZXIsIG9pLT5wcmVfbXVs dF9hbHBoYSwgb2ktPmdsb2JhbF9hbHBoYSwKPj4gLQkJb2ktPnJvdGF0aW9uX3R5cGUsIHJlcGxp Y2F0aW9uLCB2bSwgbWVtX3RvX21lbSk7Cj4+ICsJCW9pLT5yb3RhdGlvbl90eXBlLCByZXBsaWNh dGlvbiwgdm0sIG1lbV90b19tZW0sCj4+ICsJCW9pLT5jb2xvcl9lbmNvZGluZywgb2ktPmNvbG9y X3JhbmdlKTsKPj4gIAo+PiAgCXJldHVybiByOwo+PiAgfQo+PiBAQCAtMjgxNiw3ICsyODgxLDgg QEAgc3RhdGljIGludCBkaXNwY193Yl9zZXR1cChzdHJ1Y3QgZGlzcGNfZGV2aWNlICpkaXNwYywK Pj4gIAkJd2ktPmJ1Zl93aWR0aCwgcG9zX3gsIHBvc195LCBpbl93aWR0aCwgaW5faGVpZ2h0LCB3 aS0+d2lkdGgsCj4+ICAJCXdpLT5oZWlnaHQsIHdpLT5mb3VyY2MsIHdpLT5yb3RhdGlvbiwgem9y ZGVyLAo+PiAgCQl3aS0+cHJlX211bHRfYWxwaGEsIGdsb2JhbF9hbHBoYSwgd2ktPnJvdGF0aW9u X3R5cGUsCj4+IC0JCXJlcGxpY2F0aW9uLCB2bSwgbWVtX3RvX21lbSk7Cj4+ICsJCXJlcGxpY2F0 aW9uLCB2bSwgbWVtX3RvX21lbSwgRFJNX0NPTE9SX1lDQkNSX0JUNjAxLAo+PiArCQlEUk1fQ09M T1JfWUNCQ1JfTElNSVRFRF9SQU5HRSk7Cj4+ICAJaWYgKHIpCj4+ICAJCXJldHVybiByOwo+PiAg Cj4+IEBAIC0zOTQ4LDcgKzQwMTQsOCBAQCBzdGF0aWMgdm9pZCBfb21hcF9kaXNwY19pbml0aWFs X2NvbmZpZyhzdHJ1Y3QgZGlzcGNfZGV2aWNlICpkaXNwYykKPj4gIAkgICAgZGlzcGMtPmZlYXQt Pmhhc19nYW1tYV90YWJsZSkKPj4gIAkJUkVHX0ZMRF9NT0QoZGlzcGMsIERJU1BDX0NPTkZJRywg MSwgOSwgOSk7Cj4+ICAKPj4gLQlkaXNwY19zZXR1cF9jb2xvcl9jb252X2NvZWYoZGlzcGMpOwo+ PiArCWlmIChkaXNwYy0+ZmVhdC0+aGFzX3dyaXRlYmFjaykKPj4gKwkJZGlzcGNfd2Jfd3JpdGVf Y29sb3JfY29udl9jb2VmKGRpc3BjLCAmY29lZnNfcmdiMnl1dl9idDYwMV9mdWxsKTsKPj4gIAo+ PiAgCWRpc3BjX3NldF9sb2FkbW9kZShkaXNwYywgT01BUF9EU1NfTE9BRF9GUkFNRV9PTkxZKTsK Pj4gIAo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL29tYXBkc3Mu aCBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9vbWFwZHNzLmgKPj4gaW5kZXggNzlmNmIx OTVjN2NmLi4xNDMwY2FiNmI4NzcgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFw ZHJtL2Rzcy9vbWFwZHNzLmgKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL29t YXBkc3MuaAo+PiBAQCAtMTQsNiArMTQsNyBAQAo+PiAgI2luY2x1ZGUgPGxpbnV4L3BsYXRmb3Jt X2RhdGEvb21hcGRzcy5oPgo+PiAgI2luY2x1ZGUgPHVhcGkvZHJtL2RybV9tb2RlLmg+Cj4+ICAj aW5jbHVkZSA8ZHJtL2RybV9jcnRjLmg+Cj4+ICsjaW5jbHVkZSA8ZHJtL2RybV9jb2xvcl9tZ210 Lmg+Cj4gCj4gQWxwaGFiZXRpY2FsIG9yZGVyID8gV2hpbGUgYXQgaXMgeW91IGNvdWxkZSByZW1v dmUgdWFwaS8KPiAKPj4gIAo+PiAgI2RlZmluZSBESVNQQ19JUlFfRlJBTUVET05FCQkoMSA8PCAw KQo+PiAgI2RlZmluZSBESVNQQ19JUlFfVlNZTkMJCQkoMSA8PCAxKQo+PiBAQCAtMjQzLDYgKzI0 NCw5IEBAIHN0cnVjdCBvbWFwX292ZXJsYXlfaW5mbyB7Cj4+ICAJdTggZ2xvYmFsX2FscGhhOwo+ PiAgCXU4IHByZV9tdWx0X2FscGhhOwo+PiAgCXU4IHpvcmRlcjsKPj4gKwo+PiArCWVudW0gZHJt X2NvbG9yX2VuY29kaW5nIGNvbG9yX2VuY29kaW5nOwo+PiArCWVudW0gZHJtX2NvbG9yX3Jhbmdl IGNvbG9yX3JhbmdlOwo+PiAgfTsKPj4gIAo+PiAgc3RydWN0IG9tYXBfb3ZlcmxheV9tYW5hZ2Vy X2luZm8gewo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9wbGFu ZS5jIGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9wbGFuZS5jCj4+IGluZGV4IDczZWM5 OTgxOWEzZC4uZGI4ZTkxNzI2MGRmIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vb21h cGRybS9vbWFwX3BsYW5lLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9w bGFuZS5jCj4+IEBAIC01OSw2ICs1OSw4IEBAIHN0YXRpYyB2b2lkIG9tYXBfcGxhbmVfYXRvbWlj X3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPj4gIAkJaW5mby5wcmVfbXVsdF9hbHBo YSA9IDE7Cj4+ICAJZWxzZQo+PiAgCQlpbmZvLnByZV9tdWx0X2FscGhhID0gMDsKPj4gKwlpbmZv LmNvbG9yX2VuY29kaW5nID0gc3RhdGUtPmNvbG9yX2VuY29kaW5nOwo+PiArCWluZm8uY29sb3Jf cmFuZ2UgPSBzdGF0ZS0+Y29sb3JfcmFuZ2U7Cj4+ICAKPj4gIAkvKiB1cGRhdGUgc2Nhbm91dDog Ki8KPj4gIAlvbWFwX2ZyYW1lYnVmZmVyX3VwZGF0ZV9zY2Fub3V0KHN0YXRlLT5mYiwgc3RhdGUs ICZpbmZvKTsKPj4gQEAgLTE4OSw2ICsxOTEsOCBAQCBzdGF0aWMgdm9pZCBvbWFwX3BsYW5lX3Jl c2V0KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+PiAgCSAqLwo+PiAgCXBsYW5lLT5zdGF0ZS0+ enBvcyA9IHBsYW5lLT50eXBlID09IERSTV9QTEFORV9UWVBFX1BSSU1BUlkKPj4gIAkJCSAgID8g MCA6IG9tYXBfcGxhbmUtPmlkOwo+PiArCXBsYW5lLT5zdGF0ZS0+Y29sb3JfZW5jb2RpbmcgPSBE Uk1fQ09MT1JfWUNCQ1JfQlQ2MDE7Cj4+ICsJcGxhbmUtPnN0YXRlLT5jb2xvcl9yYW5nZSA9IERS TV9DT0xPUl9ZQ0JDUl9GVUxMX1JBTkdFOwo+PiAgfQo+PiAgCj4+ICBzdGF0aWMgaW50IG9tYXBf cGxhbmVfYXRvbWljX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPj4gQEAg LTIzMiw2ICsyMzYsMjMgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfZnVuY3Mgb21h cF9wbGFuZV9mdW5jcyA9IHsKPj4gIAkuYXRvbWljX2dldF9wcm9wZXJ0eSA9IG9tYXBfcGxhbmVf YXRvbWljX2dldF9wcm9wZXJ0eSwKPj4gIH07Cj4+ICAKPj4gK3N0YXRpYyBib29sIG9tYXBfcGxh bmVfc3VwcG9ydHNfeXV2KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKQo+PiArewo+PiArCXN0cnVj dCBvbWFwX2RybV9wcml2YXRlICpwcml2ID0gcGxhbmUtPmRldi0+ZGV2X3ByaXZhdGU7Cj4+ICsJ c3RydWN0IG9tYXBfcGxhbmUgKm9tYXBfcGxhbmUgPSB0b19vbWFwX3BsYW5lKHBsYW5lKTsKPj4g Kwljb25zdCB1MzIgKmZvcm1hdHMgPQo+PiArCQlwcml2LT5kaXNwY19vcHMtPm92bF9nZXRfY29s b3JfbW9kZXMocHJpdi0+ZGlzcGMsIG9tYXBfcGxhbmUtPmlkKTsKPj4gKwlpbnQgaTsKPiAKPiB1 bnNpZ25lZCBpbnQgaSA/Cj4gCj4+ICsKPj4gKwlmb3IgKGkgPSAwOyBmb3JtYXRzW2ldOyBpKysp Cj4+ICsJCWlmIChmb3JtYXRzW2ldID09IERSTV9GT1JNQVRfWVVZViB8fAo+PiArCQkgICAgZm9y bWF0c1tpXSA9PSBEUk1fRk9STUFUX1VZVlkgfHwKPj4gKwkJICAgIGZvcm1hdHNbaV0gPT0gRFJN X0ZPUk1BVF9OVjEyKQo+PiArCQkJcmV0dXJuIHRydWU7Cj4+ICsKPj4gKwlyZXR1cm4gZmFsc2U7 Cj4+ICt9Cj4+ICsKPj4gIHN0YXRpYyBjb25zdCBjaGFyICpwbGFuZV9pZF90b19uYW1lW10gPSB7 Cj4+ICAJW09NQVBfRFNTX0dGWF0gPSAiZ2Z4IiwKPj4gIAlbT01BUF9EU1NfVklERU8xXSA9ICJ2 aWQxIiwKPj4gQEAgLTI5Myw2ICszMTQsMTUgQEAgc3RydWN0IGRybV9wbGFuZSAqb21hcF9wbGFu ZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4+ICAJZHJtX3BsYW5lX2NyZWF0ZV9ibGVu ZF9tb2RlX3Byb3BlcnR5KHBsYW5lLCBCSVQoRFJNX01PREVfQkxFTkRfUFJFTVVMVEkpIHwKPj4g IAkJCQkJICAgICBCSVQoRFJNX01PREVfQkxFTkRfQ09WRVJBR0UpKTsKPj4gIAo+PiArCWlmIChv bWFwX3BsYW5lX3N1cHBvcnRzX3l1dihwbGFuZSkpCj4+ICsJCWRybV9wbGFuZV9jcmVhdGVfY29s b3JfcHJvcGVydGllcyhwbGFuZSwKPj4gKwkJCQkJQklUKERSTV9DT0xPUl9ZQ0JDUl9CVDYwMSkg fAo+PiArCQkJCQlCSVQoRFJNX0NPTE9SX1lDQkNSX0JUNzA5KSwKPj4gKwkJCQkJQklUKERSTV9D T0xPUl9ZQ0JDUl9GVUxMX1JBTkdFKSB8Cj4+ICsJCQkJCUJJVChEUk1fQ09MT1JfWUNCQ1JfTElN SVRFRF9SQU5HRSksCj4+ICsJCQkJCURSTV9DT0xPUl9ZQ0JDUl9CVDYwMSwKPj4gKwkJCQkJRFJN X0NPTE9SX1lDQkNSX0ZVTExfUkFOR0UpOwo+PiArCj4+ICAJcmV0dXJuIHBsYW5lOwo+PiAgCj4+ ICBlcnJvcjoKPiAKCgotLSAKVGV4YXMgSW5zdHJ1bWVudHMgRmlubGFuZCBPeSwgUG9ya2thbGFu a2F0dSAyMiwgMDAxODAgSGVsc2lua2kuClktdHVubnVzL0J1c2luZXNzIElEOiAwNjE1NTIxLTQu IEtvdGlwYWlra2EvRG9taWNpbGU6IEhlbHNpbmtpCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbA==