From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefan Agner Subject: Re: [PATCH v4] drm/fsl-dcu: Implement gamma_lut atomic crtc properties Date: Tue, 27 Sep 2016 20:57:45 -0700 Message-ID: <77e747e4bf82a09ca1b3167fff363924@agner.ch> References: <1475032676-10678-1-git-send-email-meng.yi@nxp.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.kmu-office.ch (mail.kmu-office.ch [178.209.48.109]) by gabe.freedesktop.org (Postfix) with ESMTPS id 69CAE6E1FA for ; Wed, 28 Sep 2016 04:03:22 +0000 (UTC) In-Reply-To: <1475032676-10678-1-git-send-email-meng.yi@nxp.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Meng Yi Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SGkgTWVuZywKClRoaXMgc3RhcnRzIHRvIGxvb2sgZ29vZCwgc29tZSBjb21tZW50cyBiZWxvdy4K CkZvciB0aGUgbmV4dCByZXZpc2lvbiwgY2FuIHlvdSBhbHNvIGFkZCB0aGUgZGV2aWNlIHRyZWUg bWFpbnRhaW5lcnM/IEkKd291bGQgbGlrZSB0byBnZXQgYW4gYWNrIGZyb20gc29tZWJvZHkgdGhl cmUgdGhhdCBzdWNoIGEgc3BsaXQgdXAgaXMgb2suCgpPbiAyMDE2LTA5LTI3IDIwOjE3LCBNZW5n IFlpIHdyb3RlOgo+IEdhbW1hIGNvcnJlY3Rpb24gaXMgb3B0aW9uYWwgYW5kIGNhbiBiZSB1c2Vk IHRvIGFkanVzdCB0aGUgY29sb3IKPiBvdXRwdXQgdmFsdWVzIHRvIG1hdGNoIHRoZSBnYW11dCBv ZiBhIHBhcnRpY3VsYXIgVEZUIExDRCBwYW5lbAo+IEVycmF0YToKPiBHYW1tYV9SLCBHYW1tYV9H IGFuZCBHYW1tYV9CIHJlZ2lzdGVycyBhcmUgbGl0dGxlLWVuZGlhbiByZWdpc3RlcnMKPiB3aGls ZSB0aGUgcmVzdCBvZiB0aGUgYWRkcmVzcy1zcGFjZSBpbiAyRC1BQ0UgaXMgYmlnLWVuZGlhbi4K PiBXb3JrYXJvdW5kOgo+IFNwbGl0IHRoZSBEQ1UgcmVncyBpbnRvICJyZWdzIiwgInBhbGV0dGUi LCAiZ2FtbWEiIGFuZCAiY3Vyc29yIi4KPiBDcmVhdGUgYSBzZWNvbmQgcmVnbWFwIGZvciBnYW1t YSBtZW1vcnkgc3BhY2UgdXNpbmcgbGl0dGxlIGVuZGlhbi4KCkkgd291bGRuJ3QgY2FsbCB0aGUg c3BsaXQgdXAgYXMgYSB3b3JrYXJvdW5kIGZvciB0aGUgaXNzdWUsIHNwbGl0dGluZyB1cApraW5k IG9mIG1ha2VzIHNlbnNlIGFueXdheS4gVGhlIHdvcmthcm91bmQgaXMgdGhhdCB3ZSBmb3JjZSBs aXR0bGUKZW5kaWFuIGZvciB0aGUgZ2FtbWEgcmVnbWFwIHNlY3Rpb24uCgpBbHNvLCBwbGVhc2Ug bWVudGlvbiB0aGF0IHdlIGRpZCBub3QgYWNjZXNzIHRoZSByZWdpc3RlcnMgYWZ0ZXIgdGhlCmZp cnN0IGFkZHJlc3Mgc3BhY2UgeWV0LCBoZW5jZSBuZXcgZGV2aWNlIHRyZWVzIHdvdWxkIGV2ZW4g d29yayB3aXRoIG9sZAprZXJuZWxzLiBKdXN0IG5ldyBrZXJuZWwgbmVlZCB0aGUgbmV3IGZvcm1h dCBzbyB3ZSBjYW4gYWNjZXNzIHRoZQpzZXBhcmF0ZSBnYW1tYSByZWcgc3BhY2UuCgo+IAo+IFN1 Z2dlc3RlZC1ieTogU3RlZmFuIEFnbmVyIDxzdGVmYW5AYWduZXIuY2g+Cj4gU2lnbmVkLW9mZi1i eTogTWVuZyBZaSA8bWVuZy55aUBueHAuY29tPgo+IC0tLQo+IENoYW5nZXMgc2luY2UgVjE6Cj4g LWNyZWF0ZWQgYSBzZWNvbmQgcmVnbWFwIGZvciBnYW1tYQo+IC11cGRhdGVkIHRoZSBEQ1UgRFQg YmluZGluZwo+IC1yZW1vdmVkIEtjb25maWcgZm9yIGdhbW1hIGFuZCBlbmFibGUgZ2FtbWEgd2hl biB2YWxpZCBkYXRhIGZpbGxlZC4KPiAtLS0KPiAgLi4uL2RldmljZXRyZWUvYmluZGluZ3MvZGlz cGxheS9mc2wsZGN1LnR4dCAgICAgICAgfCAxNSArKysrKysrKystCj4gIGRyaXZlcnMvZ3B1L2Ry bS9mc2wtZGN1L2ZzbF9kY3VfZHJtX2NydGMuYyAgICAgICAgIHwgMzIgKysrKysrKysrKysrKysr KysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2ZzbC1kY3UvZnNsX2RjdV9kcm1fZHJ2LmMgICAgICAg ICAgfCAzNSArKysrKysrKysrKysrKysrKysrKystCj4gIGRyaXZlcnMvZ3B1L2RybS9mc2wtZGN1 L2ZzbF9kY3VfZHJtX2Rydi5oICAgICAgICAgIHwgIDcgKysrKysKPiAgNCBmaWxlcyBjaGFuZ2Vk LCA4NyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9Eb2N1 bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZGlzcGxheS9mc2wsZGN1LnR4dAo+IGIvRG9j dW1lbnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL2Rpc3BsYXkvZnNsLGRjdS50eHQKPiBpbmRl eCA2M2VjMmE2Li5lM2NmMmRlIDEwMDY0NAo+IC0tLSBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJl ZS9iaW5kaW5ncy9kaXNwbGF5L2ZzbCxkY3UudHh0Cj4gKysrIGIvRG9jdW1lbnRhdGlvbi9kZXZp Y2V0cmVlL2JpbmRpbmdzL2Rpc3BsYXkvZnNsLGRjdS50eHQKPiBAQCAtNiw2ICs2LDE1IEBAIFJl cXVpcmVkIHByb3BlcnRpZXM6Cj4gIAkqICJmc2wsdmY2MTAtZGN1Ii4KPiAgCj4gIC0gcmVnOgkJ QWRkcmVzcyBhbmQgbGVuZ3RoIG9mIHRoZSByZWdpc3RlciBzZXQgZm9yIGRjdS4KPiArCQkJUGFy YW1ldGVyICAgICAgICAgICAgICAgICAgICAgICAgQWRkcmVzcyBSYW5nZQo+ICsKPiArCQkJUmVn aXN0ZXIgYWRkcmVzcyBzcGFjZSAgICAgICAgICAgMHgwMDAwIOKAkyAweDFGRkYKPiArCQkJUGFs ZXR0ZS9UaWxlIGFkZHJlc3Mgc3BhY2UgICAgICAgMHgyMDAwIOKAkyAweDNGRkYKPiArCQkJR2Ft bWFfUiBhZGRyZXNzIHNwYWNlICAgICAgICAgICAgMHg0MDAwIOKAkyAweDQzRkYKPiArCQkJR2Ft bWFfRyBhZGRyZXNzIHNwYWNlICAgICAgICAgICAgMHg0NDAwIOKAkyAweDQ3RkYKPiArCQkJR2Ft bWFfQiBhZGRyZXNzIHNwYWNlICAgICAgICAgICAgMHg0ODAwIOKAkyAweDRCRkYKPiArCQkJQ3Vy c29yIGFkZHJlc3Mgc3BhY2UgICAgICAgICAgICAgMHg0QzAwIOKAkyAweDRGRkYKClRoaXMgc2hv dWxkIGJlIFNvQyBhY25vc3RpYyBhbmQganVzdCBleHBsYWluIHdoYXQgaXMgZXhwZWN0ZWQsIGUu Zy4KCi0gcmVnOgkJCUFkZHJlc3MgYW5kIGxlbmd0aCBvZiB0aGUgcmVnaXN0ZXIgc2V0IGZvciBk Y3UuCgkJCU11c3QgY29udGFpbiBmb3VyIGFkZHJlc3MvbGVuZ3RoIHR1cGxlczoKCQkJMS4gUmVn aXN0ZXIgYWRkcmVzcyBzcGFjZQoJCQkyLiBQYWxldHRlL1RpbGUgYWRkcmVzcyBzcGFjZQoJCQkz LiBHYW1tYSBhZGRyZXNzIHNwYWNlCgkJCTQuIEN1cnNvciBhZGRyZXNzIHNwYWNlCgpBbHNvIGFk ZCByZWctbmFtZXMgdG8gdGhlIGxpc3Qgb2YgbWFuZGF0b3J5IGZpZWxkcy4KCj4gKwo+ICAtIGNs b2NrczoJCUhhbmRsZSB0byAiZGN1IiBhbmQgInBpeCIgY2xvY2sgKGluIHRoZSBvcmRlciBiZWxv dykKPiAgCQkJVGhpcyBjYW4gYmUgdGhlIHNhbWUgY2xvY2sgKGUuZy4gTFMxMDIxYSkKPiAgCQkJ U2VlIC4uL2Nsb2Nrcy9jbG9jay1iaW5kaW5ncy50eHQgZm9yIGRldGFpbHMuCj4gQEAgLTIwLDcg KzI5LDExIEBAIE9wdGlvbmFsIHByb3BlcnRpZXM6Cj4gIEV4YW1wbGVzOgo+ICBkY3U6IGRjdUAy Y2UwMDAwIHsKPiAgCWNvbXBhdGlibGUgPSAiZnNsLGxzMTAyMWEtZGN1IjsKPiAtCXJlZyA9IDww eDAgMHgyY2UwMDAwIDB4MCAweDEwMDAwPjsKPiArCXJlZyA9IDwweDAgMHgyY2UwMDAwIDB4MCAw eDIwMDA+LAo+ICsJICAgICAgPDB4MCAweDJjZTIwMDAgMHgwIDB4MjAwMD4sCj4gKwkgICAgICA8 MHgwIDB4MmNlNDAwMCAweDAgMHhjMDA+LAo+ICsJICAgICAgPDB4MCAweDJjZTRjMDAgMHgwIDB4 NDAwPjsKPiArCXJlZy1uYW1lcyA9ICJyZWdzIiwgInBhbGV0dGUiLCAiZ2FtbWEiLCAiY3Vyc29y IjsKPiAgCWNsb2NrcyA9IDwmcGxhdGZvcm1fY2xrIDA+LCA8JnBsYXRmb3JtX2NsayAwPjsKPiAg CWNsb2NrLW5hbWVzID0gImRjdSIsICJwaXgiOwo+ICAJYmlnLWVuZGlhbjsKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2ZzbC1kY3UvZnNsX2RjdV9kcm1fY3J0Yy5jCj4gYi9kcml2ZXJz L2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9jcnRjLmMKPiBpbmRleCAzMzcxNjM1Li40ZmY5 NjliIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJtX2Ny dGMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJtX2NydGMuYwo+ IEBAIC0yMiw2ICsyMiwzMCBAQAo+ICAjaW5jbHVkZSAiZnNsX2RjdV9kcm1fZHJ2LmgiCj4gICNp bmNsdWRlICJmc2xfZGN1X2RybV9wbGFuZS5oIgo+ICAKPiArc3RhdGljIHZvaWQgZnNsX2NydGNf Z2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0Yywgc3RydWN0Cj4gZHJtX2NvbG9yX2x1dCAq bHV0LAo+ICsJCQkgICAgICB1aW50MzJfdCBzaXplKQo+ICt7Cj4gKwlzdHJ1Y3QgZnNsX2RjdV9k cm1fZGV2aWNlICpmc2xfZGV2ID0gY3J0Yy0+ZGV2LT5kZXZfcHJpdmF0ZTsKPiArCXVuc2lnbmVk IGludCBpOwo+ICsKPiArCWlmIChjcnRjLT5zdGF0ZS0+Z2FtbWFfbHV0LT5kYXRhKSB7Cj4gKwkJ Zm9yIChpID0gMDsgaSA8IHNpemU7IGkrKykgewo+ICsJCQlyZWdtYXBfd3JpdGUoZnNsX2Rldi0+ cmVnbWFwX2dhbW1hLCBGU0xfR0FNTUFfUiArIDQgKiBpLAo+ICsJCQkJICAgICBsdXRbaV0ucmVk KTsKPiArCQkJcmVnbWFwX3dyaXRlKGZzbF9kZXYtPnJlZ21hcF9nYW1tYSwgRlNMX0dBTU1BX0cg KyA0ICogaSwKPiArCQkJCSAgICAgbHV0W2ldLmdyZWVuKTsKPiArCQkJcmVnbWFwX3dyaXRlKGZz bF9kZXYtPnJlZ21hcF9nYW1tYSwgRlNMX0dBTU1BX0IgKyA0ICogaSwKPiArCQkJCSAgICAgbHV0 W2ldLmJsdWUpOwo+ICsJCX0KPiArCj4gKwkJcmVnbWFwX3VwZGF0ZV9iaXRzKGZzbF9kZXYtPnJl Z21hcCwgRENVX0RDVV9NT0RFLAo+ICsJCQkJICAgRENVX01PREVfRU5fR0FNTUFfTUFTSywKPiAr CQkJCSAgIERDVV9NT0RFX0dBTU1BX0VOQUJMRSk7Cj4gKwl9IGVsc2UKPiArCQlyZWdtYXBfdXBk YXRlX2JpdHMoZnNsX2Rldi0+cmVnbWFwLCBEQ1VfRENVX01PREUsCj4gKwkJCQkgICBEQ1VfTU9E RV9FTl9HQU1NQV9NQVNLLCAwKTsKClVzZSBicmFjZXMgaW4gYm90aCBicmFuY2hlcywgc2VlIGtl cm5lbCBjb2Rpbmcgc3R5bGUuCgo+ICt9Cj4gKwo+ICBzdGF0aWMgdm9pZCBmc2xfZGN1X2RybV9j cnRjX2F0b21pY19mbHVzaChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkJCQkJICBzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlKQo+ICB7Cj4gQEAgLTM3LDYgKzYxLDEwIEBA IHN0YXRpYyB2b2lkIGZzbF9kY3VfZHJtX2NydGNfYXRvbWljX2ZsdXNoKHN0cnVjdAo+IGRybV9j cnRjICpjcnRjLAo+ICAJCQlkcm1fY3J0Y19zZW5kX3ZibGFua19ldmVudChjcnRjLCBldmVudCk7 Cj4gIAkJc3Bpbl91bmxvY2tfaXJxKCZjcnRjLT5kZXYtPmV2ZW50X2xvY2spOwo+ICAJfQo+ICsK PiArCWlmIChjcnRjLT5zdGF0ZS0+Y29sb3JfbWdtdF9jaGFuZ2VkICYmIGNydGMtPnN0YXRlLT5n YW1tYV9sdXQpCj4gKwkJZnNsX2NydGNfZ2FtbWFfc2V0KGNydGMsIChzdHJ1Y3QgZHJtX2NvbG9y X2x1dCAqKQo+ICsJCQkJICAgY3J0Yy0+c3RhdGUtPmdhbW1hX2x1dC0+ZGF0YSwgMjU2KTsKPiAg fQo+ICAKPiAgc3RhdGljIHZvaWQgZnNsX2RjdV9kcm1fZGlzYWJsZV9jcnRjKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YykKPiBAQCAtMTM1LDYgKzE2Myw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJt X2NydGNfZnVuY3MKPiBmc2xfZGN1X2RybV9jcnRjX2Z1bmNzID0gewo+ICAJLnBhZ2VfZmxpcCA9 IGRybV9hdG9taWNfaGVscGVyX3BhZ2VfZmxpcCwKPiAgCS5yZXNldCA9IGRybV9hdG9taWNfaGVs cGVyX2NydGNfcmVzZXQsCj4gIAkuc2V0X2NvbmZpZyA9IGRybV9hdG9taWNfaGVscGVyX3NldF9j b25maWcsCj4gKwkuZ2FtbWFfc2V0ID0gZHJtX2F0b21pY19oZWxwZXJfbGVnYWN5X2dhbW1hX3Nl dCwKPiAgfTsKPiAgCj4gIGludCBmc2xfZGN1X2RybV9jcnRjX2NyZWF0ZShzdHJ1Y3QgZnNsX2Rj dV9kcm1fZGV2aWNlICpmc2xfZGV2KQo+IEBAIC0xNTgsNSArMTg3LDggQEAgaW50IGZzbF9kY3Vf ZHJtX2NydGNfY3JlYXRlKHN0cnVjdAo+IGZzbF9kY3VfZHJtX2RldmljZSAqZnNsX2RldikKPiAg Cj4gIAlkcm1fY3J0Y19oZWxwZXJfYWRkKGNydGMsICZmc2xfZGN1X2RybV9jcnRjX2hlbHBlcl9m dW5jcyk7Cj4gIAo+ICsJZHJtX2NydGNfZW5hYmxlX2NvbG9yX21nbXQoY3J0YywgMCwgZmFsc2Us IDI1Nik7Cj4gKwlkcm1fbW9kZV9jcnRjX3NldF9nYW1tYV9zaXplKGNydGMsIDI1Nik7Cj4gKwo+ ICAJcmV0dXJuIDA7Cj4gIH0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2ZzbC1kY3Uv ZnNsX2RjdV9kcm1fZHJ2LmMKPiBiL2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJt X2Rydi5jCj4gaW5kZXggMDkyYWFlYy4uZTY2Mjg5MCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9kcnYuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9m c2wtZGN1L2ZzbF9kY3VfZHJtX2Rydi5jCj4gQEAgLTQ4LDYgKzQ4LDIwIEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgcmVnbWFwX2NvbmZpZyBmc2xfZGN1X3JlZ21hcF9jb25maWcgPSB7Cj4gIAkudm9s YXRpbGVfcmVnID0gZnNsX2RjdV9kcm1faXNfdm9sYXRpbGVfcmVnLAo+ICB9Owo+ICAKPiArLyoK PiArICogZm9yY2UgdXNpbmcgbGl0dGxlIGVuZGlhbiBoZXJlIHNpbmNlIGxzMTAyMWEncyBnYW1t YSByZWdzIGFyZSBsaXR0bGUKPiArICogZW5kaWFuIHdoaWxlIHRoZSBvdGhlciByZWdzIGFyZSBi aWcgZW5kaWFuLCBhbmQgYWxsIHZmNjEwcydzIHJlZ3MKPiArICogYXJlIGxpdHRsZSBlbmRpYW4K PiArICovCj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgcmVnbWFwX2NvbmZpZyBmc2xfZGN1X3JlZ21h cF9nYW1tYV9jb25maWcgPSB7Cj4gKwkucmVnX2JpdHMgPSAzMiwKPiArCS5yZWdfc3RyaWRlID0g NCwKPiArCS52YWxfYml0cyA9IDMyLAo+ICsJLnZhbF9mb3JtYXRfZW5kaWFuID0gUkVHTUFQX0VO RElBTl9MSVRUTEUsCj4gKwo+ICsJLnZvbGF0aWxlX3JlZyA9IGZzbF9kY3VfZHJtX2lzX3ZvbGF0 aWxlX3JlZywKPiArfTsKPiArCj4gIHN0YXRpYyBpbnQgZnNsX2RjdV9kcm1faXJxX2luaXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKPiAgewo+ICAJc3RydWN0IGZzbF9kY3VfZHJtX2RldmljZSAq ZnNsX2RldiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gQEAgLTMyNyw3ICszNDEsNyBAQCBzdGF0aWMg aW50IGZzbF9kY3VfZHJtX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAlz dHJ1Y3QgZHJtX2RldmljZSAqZHJtOwo+ICAJc3RydWN0IGRldmljZSAqZGV2ID0gJnBkZXYtPmRl djsKPiAgCXN0cnVjdCByZXNvdXJjZSAqcmVzOwo+IC0Jdm9pZCBfX2lvbWVtICpiYXNlOwo+ICsJ dm9pZCBfX2lvbWVtICpiYXNlLCAqYmFzZV9nYW1tYTsKPiAgCXN0cnVjdCBkcm1fZHJpdmVyICpk cml2ZXIgPSAmZnNsX2RjdV9kcm1fZHJpdmVyOwo+ICAJc3RydWN0IGNsayAqcGl4X2Nsa19pbjsK PiAgCWNoYXIgcGl4X2Nsa19uYW1lWzMyXTsKPiBAQCAtMzcwLDYgKzM4NCwyNSBAQCBzdGF0aWMg aW50IGZzbF9kY3VfZHJtX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpCj4gIAkJ cmV0dXJuIFBUUl9FUlIoZnNsX2Rldi0+cmVnbWFwKTsKPiAgCX0KPiAgCj4gKwlyZXMgPSBwbGF0 Zm9ybV9nZXRfcmVzb3VyY2VfYnluYW1lKHBkZXYsIElPUkVTT1VSQ0VfTUVNLCAiZ2FtbWEiKTsK PiArCWlmICghcmVzKSB7Cj4gKwkJZGV2X2VycihkZXYsICJjb3VsZCBub3QgZ2V0IGdhbW1hIG1l bW9yeSByZXNvdXJjZVxuIik7Cj4gKwkJcmV0dXJuIC1FTk9ERVY7Cj4gKwl9Cj4gKwo+ICsJYmFz ZV9nYW1tYSA9IGRldm1faW9yZW1hcF9yZXNvdXJjZShkZXYsIHJlcyk7Cj4gKwlpZiAoSVNfRVJS KGJhc2VfZ2FtbWEpKSB7Cj4gKwkJcmV0ID0gUFRSX0VSUihiYXNlX2dhbW1hKTsKPiArCQlyZXR1 cm4gcmV0Owo+ICsJfQo+ICsKPiArCWZzbF9kZXYtPnJlZ21hcF9nYW1tYSA9IGRldm1fcmVnbWFw X2luaXRfbW1pbyhkZXYsIGJhc2VfZ2FtbWEsCj4gKwkJCSZmc2xfZGN1X3JlZ21hcF9nYW1tYV9j b25maWcpOwo+ICsJaWYgKElTX0VSUihmc2xfZGV2LT5yZWdtYXBfZ2FtbWEpKSB7Cj4gKwkJZGV2 X2VycihkZXYsICJyZWdtYXBfZ2FtbWEgaW5pdCBmYWlsZWRcbiIpOwo+ICsJCXJldHVybiBQVFJf RVJSKGZzbF9kZXYtPnJlZ21hcF9nYW1tYSk7Cj4gKwl9Cj4gKwo+ICAJZnNsX2Rldi0+Y2xrID0g ZGV2bV9jbGtfZ2V0KGRldiwgImRjdSIpOwo+ICAJaWYgKElTX0VSUihmc2xfZGV2LT5jbGspKSB7 Cj4gIAkJZGV2X2VycihkZXYsICJmYWlsZWQgdG8gZ2V0IGRjdSBjbG9ja1xuIik7Cj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJtX2Rydi5oCj4gYi9kcml2 ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9kcnYuaAo+IGluZGV4IDNiMzcxZmU3Li4y NjEwYjZjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJt X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2ZzbC1kY3UvZnNsX2RjdV9kcm1fZHJ2LmgK PiBAQCAtMjUsNiArMjUsOCBAQAo+ICAjZGVmaW5lIERDVV9NT0RFX05PUk1BTAkJCTEKPiAgI2Rl ZmluZSBEQ1VfTU9ERV9URVNUCQkJMgo+ICAjZGVmaW5lIERDVV9NT0RFX0NPTE9SQkFSCQkzCj4g KyNkZWZpbmUgRENVX01PREVfRU5fR0FNTUFfTUFTSwkJMHgwNAo+ICsjZGVmaW5lIERDVV9NT0RF X0dBTU1BX0VOQUJMRQkJQklUKDIpCj4gIAo+ICAjZGVmaW5lIERDVV9CR05ECQkJMHgwMDE0Cj4g ICNkZWZpbmUgRENVX0JHTkRfUih4KQkJCSgoeCkgPDwgMTYpCj4gQEAgLTE2NSw2ICsxNjcsMTAg QEAKPiAgI2RlZmluZSBWRjYxMF9MQVlFUl9SRUdfTlVNCQk5Cj4gICNkZWZpbmUgTFMxMDIxQV9M QVlFUl9SRUdfTlVNCQkxMAo+ICAKPiArI2RlZmluZSBGU0xfR0FNTUFfUgkJCTB4MDAwCj4gKyNk ZWZpbmUgRlNMX0dBTU1BX0cJCQkweDQwMAo+ICsjZGVmaW5lIEZTTF9HQU1NQV9CCQkJMHg4MDAK PiArCj4gIHN0cnVjdCBjbGs7Cj4gIHN0cnVjdCBkZXZpY2U7Cj4gIHN0cnVjdCBkcm1fZGV2aWNl Owo+IEBAIC0xODIsNiArMTg4LDcgQEAgc3RydWN0IGZzbF9kY3VfZHJtX2RldmljZSB7Cj4gIAlz dHJ1Y3QgZGV2aWNlICpkZXY7Cj4gIAlzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wOwo+ICAJc3RydWN0 IHJlZ21hcCAqcmVnbWFwOwo+ICsJc3RydWN0IHJlZ21hcCAqcmVnbWFwX2dhbW1hOwo+ICAJaW50 IGlycTsKPiAgCXN0cnVjdCBjbGsgKmNsazsKPiAgCXN0cnVjdCBjbGsgKnBpeF9jbGs7Cl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWls aW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=