From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kieran Bingham Subject: Re: [PATCH 2/5] drm: rcar-du: Move CRTC outputs bitmask to private CRTC state Date: Fri, 7 Dec 2018 12:34:58 +0000 Message-ID: References: <20181125144031.4407-1-laurent.pinchart+renesas@ideasonboard.com> <20181125144031.4407-3-laurent.pinchart+renesas@ideasonboard.com> Reply-To: kieran.bingham@ideasonboard.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by gabe.freedesktop.org (Postfix) with ESMTPS id 533B26E738 for ; Fri, 7 Dec 2018 12:35:02 +0000 (UTC) In-Reply-To: <20181125144031.4407-3-laurent.pinchart+renesas@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 , dri-devel@lists.freedesktop.org Cc: linux-renesas-soc@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org SGkgTGF1cmVudCwKClRoYW5rIHlvdSBmb3IgdGhlIHBhdGNoLAoKT24gMjUvMTEvMjAxOCAxNDo0 MCwgTGF1cmVudCBQaW5jaGFydCB3cm90ZToKPiBUaGUgcmNhcl9kdV9jcnRjIG91dHB1dHMgZmll bGQgc3RvcmVzIGEgYml0bWFzayBvZiB0aGUgb3V0cHV0cyBkcml2ZW4gYnkKPiB0aGUgQ1JUQy4g VGhpcyBjaGFuZ2VzIGJhc2VkIG9uIHRoZSBjb25maWd1cmF0aW9uIHJlcXVlc3RlZCBieQo+IHVz ZXJzcGFjZSwgYW5kIGlzIHVzZWQgZm9yIHRoZSBzb2xlIHB1cnBvc2Ugb2YgY29uZmlndXJpbmcg dGhlIGhhcmR3YXJlLgo+IFRoZSBmaWVsZCB0aHVzIGJlbG9uZ3MgdG8gdGhlIENSVEMgc3RhdGUu IE1vdmUgaXQgdG8gdGhlCj4gcmNhcl9kdV9jcnRjX3N0YXRlIHN0cnVjdHVyZS4KPiAKPiBBcyBh IHJlc3VsdCB0aGUgcmNhcl9kdV9jcnRjX3JvdXRlX291dHB1dCgpIGZ1bmN0aW9uIGxvc2VzIG1v c3Qgb2YgaXRzCj4gcHVycG9zZS4gSW4gb3JkZXIgdG8gcmVtb3ZlIGl0LCBtb3ZlIGRwYWQwX3Nv dXJjZSBjYWxjdWxhdGlvbiB0bwo+IHJjYXJfZHVfYXRvbWljX2NvbW1pdF90YWlsKCksIHVudGls IHRoZSBmaWVsZCBnZXRzIG1vdmVkIHRvIGEgc3RhdGUKPiBzdHJ1Y3R1cmUuIEluIG9yZGVyIHRv IHNpbXBsaWZ5IHRoZSByY2FyX2R1X2dyb3VwX3NldF9yb3V0aW5nKCkKPiBpbXBsZW1lbnRhdGlv biwgd2UgYWxzbyBzdG9yZSB0aGUgRFBBRDEgc291cmNlIGluIGEgbmV3IGRwYWQxX3NvdXJjZQo+ IGZpZWxkIHdoaWNoIHdpbGwgbW92ZSB0byBhIHN0YXRlIHN0cnVjdHVyZSB3aXRoIGRwYWQwX3Nv dXJjZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBMYXVyZW50IFBpbmNoYXJ0IDxsYXVyZW50LnBpbmNo YXJ0K3JlbmVzYXNAaWRlYXNvbmJvYXJkLmNvbT4KCnRoYXQgd2FzIGEgZmFpcmx5IHRvdWdoIHJl YWQgLSBidXQgYXNpZGUgZnJvbSBvbmUgY29tbWVudCBuZWFyIHRoZQpib3R0b20gcmVnYXJkaW5n IGluaXRpYWxpc2luZyBkcGFkMCB3aGljaCBJJ20gc3VyZSB5b3UgY2FuIGhhbmRsZQpjb3JyZWN0 bHksIGFuZCBhbm90aGVyIGNvbW1lbnQgd2hpY2ggSSB0aGluayB3ZSBjb3VsZCBpbXByb3ZlIHRo aW5ncwpvdXRzaWRlIG9mIHRoaXMgcGF0Y2g6CgpSZXZpZXdlZC1ieTogS2llcmFuIEJpbmdoYW0g PGtpZXJhbi5iaW5naGFtK3JlbmVzYXNAaWRlYXNvbmJvYXJkLmNvbT4KCgo+IC0tLQo+ICBkcml2 ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMuYyAgICB8IDQyICsrKysrKysrKysrLS0t LS0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5oICAgIHwg IDcgKystLQo+ICBkcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2Rydi5oICAgICB8ICAx ICsKPiAgZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9lbmNvZGVyLmMgfCAxMCAtLS0t LS0KPiAgZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9ncm91cC5jICAgfCAgNCArLS0K PiAgZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9rbXMuYyAgICAgfCAyMiArKysrKysr KysrKysKPiAgNiBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNlcnRpb25zKCspLCAzOSBkZWxldGlvbnMo LSkKCis4IC4uLiBJdCdzIGEgZ29vZCBqb2IgeW91IGJvdWdodCAtMTMgbGluZXMgaW4gdGhlIHBy ZXZpb3VzIHBhdGNoIDspCgoKCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1 L3JjYXJfZHVfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9jcnRjLmMK PiBpbmRleCA5MGRhY2FiNjdiZTUuLjQwYjdmMTcxNTliMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2NydGMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9y Y2FyLWR1L3JjYXJfZHVfY3J0Yy5jCj4gQEAgLTIyLDYgKzIyLDcgQEAKPiAgCj4gICNpbmNsdWRl ICJyY2FyX2R1X2NydGMuaCIKPiAgI2luY2x1ZGUgInJjYXJfZHVfZHJ2LmgiCj4gKyNpbmNsdWRl ICJyY2FyX2R1X2VuY29kZXIuaCIKPiAgI2luY2x1ZGUgInJjYXJfZHVfa21zLmgiCj4gICNpbmNs dWRlICJyY2FyX2R1X3BsYW5lLmgiCj4gICNpbmNsdWRlICJyY2FyX2R1X3JlZ3MuaCIKPiBAQCAt MzE2LDI2ICszMTcsNiBAQCBzdGF0aWMgdm9pZCByY2FyX2R1X2NydGNfc2V0X2Rpc3BsYXlfdGlt aW5nKHN0cnVjdCByY2FyX2R1X2NydGMgKnJjcnRjKQo+ICAJcmNhcl9kdV9jcnRjX3dyaXRlKHJj cnRjLCBERVdSLCAgbW9kZS0+aGRpc3BsYXkpOwo+ICB9Cj4gIAo+IC12b2lkIHJjYXJfZHVfY3J0 Y19yb3V0ZV9vdXRwdXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+IC0JCQkgICAgICAgZW51bSBy Y2FyX2R1X291dHB1dCBvdXRwdXQpCj4gLXsKPiAtCXN0cnVjdCByY2FyX2R1X2NydGMgKnJjcnRj ID0gdG9fcmNhcl9jcnRjKGNydGMpOwo+IC0Jc3RydWN0IHJjYXJfZHVfZGV2aWNlICpyY2R1ID0g cmNydGMtPmdyb3VwLT5kZXY7Cj4gLQo+IC0JLyoKPiAtCSAqIFN0b3JlIHRoZSByb3V0ZSBmcm9t IHRoZSBDUlRDIG91dHB1dCB0byB0aGUgRFUgb3V0cHV0LiBUaGUgRFUgd2lsbCBiZQo+IC0JICog Y29uZmlndXJlZCB3aGVuIHN0YXJ0aW5nIHRoZSBDUlRDLgo+IC0JICovCj4gLQlyY3J0Yy0+b3V0 cHV0cyB8PSBCSVQob3V0cHV0KTsKPiAtCj4gLQkvKgo+IC0JICogU3RvcmUgUkdCIHJvdXRpbmcg dG8gRFBBRDAsIHRoZSBoYXJkd2FyZSB3aWxsIGJlIGNvbmZpZ3VyZWQgd2hlbgo+IC0JICogc3Rh cnRpbmcgdGhlIENSVEMuCj4gLQkgKi8KPiAtCWlmIChvdXRwdXQgPT0gUkNBUl9EVV9PVVRQVVRf RFBBRDApCj4gLQkJcmNkdS0+ZHBhZDBfc291cmNlID0gcmNydGMtPmluZGV4Owo+IC19Cj4gLQo+ ICBzdGF0aWMgdW5zaWduZWQgaW50IHBsYW5lX3pwb3Moc3RydWN0IHJjYXJfZHVfcGxhbmUgKnBs YW5lKQo+ICB7Cj4gIAlyZXR1cm4gcGxhbmUtPnBsYW5lLnN0YXRlLT5ub3JtYWxpemVkX3pwb3M7 Cj4gQEAgLTY1NSw2ICs2MzYsMjQgQEAgc3RhdGljIHZvaWQgcmNhcl9kdV9jcnRjX3N0b3Aoc3Ry dWN0IHJjYXJfZHVfY3J0YyAqcmNydGMpCj4gICAqIENSVEMgRnVuY3Rpb25zCj4gICAqLwo+ICAK PiArc3RhdGljIGludCByY2FyX2R1X2NydGNfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywKPiArCQkJCSAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpzdGF0ZSkKPiArewo+ICsJ c3RydWN0IHJjYXJfZHVfY3J0Y19zdGF0ZSAqcnN0YXRlID0gdG9fcmNhcl9jcnRjX3N0YXRlKHN0 YXRlKTsKPiArCXN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcjsKPiArCj4gKwkvKiBTdG9yZSB0 aGUgcm91dGVzIGZyb20gdGhlIENSVEMgb3V0cHV0IHRvIHRoZSBEVSBvdXRwdXRzLiAqLwo+ICsJ cnN0YXRlLT5vdXRwdXRzID0gMDsKPiArCj4gKwlkcm1fZm9yX2VhY2hfZW5jb2Rlcl9tYXNrKGVu Y29kZXIsIGNydGMtPmRldiwgc3RhdGUtPmVuY29kZXJfbWFzaykgewo+ICsJCXN0cnVjdCByY2Fy X2R1X2VuY29kZXIgKnJlbmMgPSB0b19yY2FyX2VuY29kZXIoZW5jb2Rlcik7Cj4gKwo+ICsJCXJz dGF0ZS0+b3V0cHV0cyB8PSBCSVQocmVuYy0+b3V0cHV0KTsKPiArCX0KPiArCj4gKwlyZXR1cm4g MDsKPiArfQo+ICsKPiAgc3RhdGljIHZvaWQgcmNhcl9kdV9jcnRjX2F0b21pY19lbmFibGUoc3Ry dWN0IGRybV9jcnRjICpjcnRjLAo+ICAJCQkJICAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAq b2xkX3N0YXRlKQo+ICB7Cj4gQEAgLTY3OCw4ICs2NzcsNiBAQCBzdGF0aWMgdm9pZCByY2FyX2R1 X2NydGNfYXRvbWljX2Rpc2FibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJCWNydGMtPnN0 YXRlLT5ldmVudCA9IE5VTEw7Cj4gIAl9Cj4gIAlzcGluX3VubG9ja19pcnEoJmNydGMtPmRldi0+ ZXZlbnRfbG9jayk7Cj4gLQo+IC0JcmNydGMtPm91dHB1dHMgPSAwOwo+ICB9Cj4gIAo+ICBzdGF0 aWMgdm9pZCByY2FyX2R1X2NydGNfYXRvbWljX2JlZ2luKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK PiBAQCAtNzU1LDYgKzc1Miw3IEBAIGVudW0gZHJtX21vZGVfc3RhdHVzIHJjYXJfZHVfY3J0Y19t b2RlX3ZhbGlkKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgfQo+ICAKPiAgc3RhdGljIGNvbnN0 IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVuY3MgY3J0Y19oZWxwZXJfZnVuY3MgPSB7Cj4gKwku YXRvbWljX2NoZWNrID0gcmNhcl9kdV9jcnRjX2F0b21pY19jaGVjaywKPiAgCS5hdG9taWNfYmVn aW4gPSByY2FyX2R1X2NydGNfYXRvbWljX2JlZ2luLAo+ICAJLmF0b21pY19mbHVzaCA9IHJjYXJf ZHVfY3J0Y19hdG9taWNfZmx1c2gsCj4gIAkuYXRvbWljX2VuYWJsZSA9IHJjYXJfZHVfY3J0Y19h dG9taWNfZW5hYmxlLAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2Fy X2R1X2NydGMuaCBiL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5oCj4gaW5k ZXggNTlhYzZlN2QyMmM5Li5lYzQ3ZjE2NGU2OWIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL3JjYXItZHUvcmNhcl9kdV9jcnRjLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1k dS9yY2FyX2R1X2NydGMuaAo+IEBAIC0zNyw3ICszNyw2IEBAIHN0cnVjdCByY2FyX2R1X3ZzcDsK PiAgICogQHZibGFua19sb2NrOiBwcm90ZWN0cyB2Ymxhbmtfd2FpdCBhbmQgdmJsYW5rX2NvdW50 Cj4gICAqIEB2Ymxhbmtfd2FpdDogd2FpdCBxdWV1ZSB1c2VkIHRvIHNpZ25hbCB2ZXJ0aWNhbCBi bGFua2luZwo+ICAgKiBAdmJsYW5rX2NvdW50OiBudW1iZXIgb2YgdmVydGljYWwgYmxhbmtpbmcg aW50ZXJydXB0cyB0byB3YWl0IGZvcgo+IC0gKiBAb3V0cHV0czogYml0bWFzayBvZiB0aGUgb3V0 cHV0cyAoZW51bSByY2FyX2R1X291dHB1dCkgZHJpdmVuIGJ5IHRoaXMgQ1JUQwo+ICAgKiBAZ3Jv dXA6IENSVEMgZ3JvdXAgdGhpcyBDUlRDIGJlbG9uZ3MgdG8KPiAgICogQHZzcDogVlNQIGZlZWRp bmcgdmlkZW8gdG8gdGhpcyBDUlRDCj4gICAqIEB2c3BfcGlwZTogaW5kZXggb2YgdGhlIFZTUCBw aXBlbGluZSBmZWVkaW5nIHZpZGVvIHRvIHRoaXMgQ1JUQwo+IEBAIC02MSw4ICs2MCw2IEBAIHN0 cnVjdCByY2FyX2R1X2NydGMgewo+ICAJd2FpdF9xdWV1ZV9oZWFkX3QgdmJsYW5rX3dhaXQ7Cj4g IAl1bnNpZ25lZCBpbnQgdmJsYW5rX2NvdW50Owo+ICAKPiAtCXVuc2lnbmVkIGludCBvdXRwdXRz Owo+IC0KPiAgCXN0cnVjdCByY2FyX2R1X2dyb3VwICpncm91cDsKPiAgCXN0cnVjdCByY2FyX2R1 X3ZzcCAqdnNwOwo+ICAJdW5zaWduZWQgaW50IHZzcF9waXBlOwo+IEBAIC03NywxMSArNzQsMTMg QEAgc3RydWN0IHJjYXJfZHVfY3J0YyB7Cj4gICAqIHN0cnVjdCByY2FyX2R1X2NydGNfc3RhdGUg LSBEcml2ZXItc3BlY2lmaWMgQ1JUQyBzdGF0ZQo+ICAgKiBAc3RhdGU6IGJhc2UgRFJNIENSVEMg c3RhdGUKPiAgICogQGNyYzogQ1JDIGNvbXB1dGF0aW9uIGNvbmZpZ3VyYXRpb24KPiArICogQG91 dHB1dHM6IGJpdG1hc2sgb2YgdGhlIG91dHB1dHMgKGVudW0gcmNhcl9kdV9vdXRwdXQpIGRyaXZl biBieSB0aGlzIENSVEMKPiAgICovCj4gIHN0cnVjdCByY2FyX2R1X2NydGNfc3RhdGUgewo+ICAJ c3RydWN0IGRybV9jcnRjX3N0YXRlIHN0YXRlOwo+ICAKPiAgCXN0cnVjdCB2c3AxX2R1X2NyY19j b25maWcgY3JjOwo+ICsJdW5zaWduZWQgaW50IG91dHB1dHM7Cj4gIH07Cj4gIAo+ICAjZGVmaW5l IHRvX3JjYXJfY3J0Y19zdGF0ZShzKSBjb250YWluZXJfb2Yocywgc3RydWN0IHJjYXJfZHVfY3J0 Y19zdGF0ZSwgc3RhdGUpCj4gQEAgLTEwMiw4ICsxMDEsNiBAQCBpbnQgcmNhcl9kdV9jcnRjX2Ny ZWF0ZShzdHJ1Y3QgcmNhcl9kdV9ncm91cCAqcmdycCwgdW5zaWduZWQgaW50IHN3aW5kZXgsCj4g IHZvaWQgcmNhcl9kdV9jcnRjX3N1c3BlbmQoc3RydWN0IHJjYXJfZHVfY3J0YyAqcmNydGMpOwo+ ICB2b2lkIHJjYXJfZHVfY3J0Y19yZXN1bWUoc3RydWN0IHJjYXJfZHVfY3J0YyAqcmNydGMpOwo+ ICAKPiAtdm9pZCByY2FyX2R1X2NydGNfcm91dGVfb3V0cHV0KHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKPiAtCQkJICAgICAgIGVudW0gcmNhcl9kdV9vdXRwdXQgb3V0cHV0KTsKPiAgdm9pZCByY2Fy X2R1X2NydGNfZmluaXNoX3BhZ2VfZmxpcChzdHJ1Y3QgcmNhcl9kdV9jcnRjICpyY3J0Yyk7Cj4g IAo+ICB2b2lkIHJjYXJfZHVfY3J0Y19kc3lzcl9jbHJfc2V0KHN0cnVjdCByY2FyX2R1X2NydGMg KnJjcnRjLCB1MzIgY2xyLCB1MzIgc2V0KTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L3JjYXItZHUvcmNhcl9kdV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVf ZHJ2LmgKPiBpbmRleCA4ZWY5MTY1OTU3Y2IuLjhiNDdiODU0NmZjOCAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL3JjYXItZHUvcmNhcl9kdV9kcnYuaAo+IEBAIC05MCw2ICs5MCw3IEBAIHN0cnVjdCByY2Fy X2R1X2RldmljZSB7Cj4gIAl9IHByb3BzOwo+ICAKPiAgCXVuc2lnbmVkIGludCBkcGFkMF9zb3Vy Y2U7Cj4gKwl1bnNpZ25lZCBpbnQgZHBhZDFfc291cmNlOwo+ICAJdW5zaWduZWQgaW50IHZzcGQx X3Npbms7Cj4gIH07Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9y Y2FyX2R1X2VuY29kZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfZW5jb2Rl ci5jCj4gaW5kZXggMTg3Nzc2NGJkNmQ5Li5hMTIzYzI4ZWE2ZWQgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9lbmNvZGVyLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vcmNhci1kdS9yY2FyX2R1X2VuY29kZXIuYwo+IEBAIC0yMiwxNyArMjIsNyBAQAo+ICAg KiBFbmNvZGVyCj4gICAqLwo+ICAKPiAtc3RhdGljIHZvaWQgcmNhcl9kdV9lbmNvZGVyX21vZGVf c2V0KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKPiAtCQkJCSAgICAgc3RydWN0IGRybV9j cnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+IC0JCQkJICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9z dGF0ZSAqY29ubl9zdGF0ZSkKPiAtewo+IC0Jc3RydWN0IHJjYXJfZHVfZW5jb2RlciAqcmVuYyA9 IHRvX3JjYXJfZW5jb2RlcihlbmNvZGVyKTsKPiAtCj4gLQlyY2FyX2R1X2NydGNfcm91dGVfb3V0 cHV0KGNydGNfc3RhdGUtPmNydGMsIHJlbmMtPm91dHB1dCk7Cj4gLX0KPiAtCj4gIHN0YXRpYyBj b25zdCBzdHJ1Y3QgZHJtX2VuY29kZXJfaGVscGVyX2Z1bmNzIGVuY29kZXJfaGVscGVyX2Z1bmNz ID0gewo+IC0JLmF0b21pY19tb2RlX3NldCA9IHJjYXJfZHVfZW5jb2Rlcl9tb2RlX3NldCwKPiAg fTsKPiAgCj4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2VuY29kZXJfZnVuY3MgZW5jb2Rlcl9m dW5jcyA9IHsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9n cm91cC5jIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9ncm91cC5jCj4gaW5kZXgg MzM2NmNkYTYwODZjLi43ZTQ0MGY2MTk3N2YgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L3JjYXItZHUvcmNhcl9kdV9ncm91cC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUv cmNhcl9kdV9ncm91cC5jCj4gQEAgLTI4OSw3ICsyODksNyBAQCBpbnQgcmNhcl9kdV9zZXRfZHBh ZDBfdnNwMV9yb3V0aW5nKHN0cnVjdCByY2FyX2R1X2RldmljZSAqcmNkdSkKPiAgCj4gIGludCBy Y2FyX2R1X2dyb3VwX3NldF9yb3V0aW5nKHN0cnVjdCByY2FyX2R1X2dyb3VwICpyZ3JwKQo+ICB7 Cj4gLQlzdHJ1Y3QgcmNhcl9kdV9jcnRjICpjcnRjMCA9ICZyZ3JwLT5kZXYtPmNydGNzW3JncnAt PmluZGV4ICogMl07Cj4gKwlzdHJ1Y3QgcmNhcl9kdV9kZXZpY2UgKnJjZHUgPSByZ3JwLT5kZXY7 Cj4gIAl1MzIgZG9yY3IgPSByY2FyX2R1X2dyb3VwX3JlYWQocmdycCwgRE9SQ1IpOwo+ICAKPiAg CWRvcmNyICY9IH4oRE9SQ1JfUEcyVCB8IERPUkNSX0RLMlMgfCBET1JDUl9QRzJEX01BU0spOwo+ IEBAIC0yOTksNyArMjk5LDcgQEAgaW50IHJjYXJfZHVfZ3JvdXBfc2V0X3JvdXRpbmcoc3RydWN0 IHJjYXJfZHVfZ3JvdXAgKnJncnApCj4gIAkgKiBDUlRDIDEgaW4gYWxsIG90aGVyIGNhc2VzIHRv IGF2b2lkIGNsb25pbmcgQ1JUQyAwIHRvIERQQUQwIGFuZCBEUEFEMQo+ICAJICogYnkgZGVmYXVs dC4KPiAgCSAqLwo+IC0JaWYgKGNydGMwLT5vdXRwdXRzICYgQklUKFJDQVJfRFVfT1VUUFVUX0RQ QUQxKSkKPiArCWlmIChyY2R1LT5kcGFkMV9zb3VyY2UgPT0gcmdycC0+aW5kZXggKiAyKQoKVGhl IG1hZ2ljIG9mIGdldHRpbmcgKHJncnAtPmluZGV4ICogMikgaXMgYSBsaXR0bGUgYml0IC4uLiBt YWdpYyAuLi4KClRoZSB3aGF0IGlzIGhhcHBlbmluZyAoICh7MCwxfSA9PiB7MCwyfSkgKSBpcyBj bGVhciAtIGJ1dCBub3QgdGhlIHdoeS4KClRoaXMgaGFwcGVucyBhIGJpdCB0aHJvdWdob3V0IGFz IGEgbWVhbnMgdG8gY29udmVydCBmcm9tIENSVEMgdG8gR3JvdXAKaW5kZXhlcywgYW5kIGJhY2su IEJ1dCBpdCBjb3VsZCBiZSBjbGVhcmVyIHdpdGggYSBoZWxwZXIuCgkobm90IGluIHRoaXMgcGF0 Y2gpCgoKPiAgCQlkb3JjciB8PSBET1JDUl9QRzJEX0RTMTsKPiAgCWVsc2UKPiAgCQlkb3JjciB8 PSBET1JDUl9QRzJUIHwgRE9SQ1JfREsyUyB8IERPUkNSX1BHMkRfRFMyOwo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2ttcy5jIGIvZHJpdmVycy9ncHUvZHJt L3JjYXItZHUvcmNhcl9kdV9rbXMuYwo+IGluZGV4IGZlNmY2NWM5NGVlZi4uYmQzYzJjNWVhNjZm IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfa21zLmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X2ttcy5jCj4gQEAgLTI4NSw2ICsy ODUsMjggQEAgc3RhdGljIGludCByY2FyX2R1X2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+ICBzdGF0aWMgdm9pZCByY2FyX2R1X2F0b21pY19jb21taXRfdGFpbChzdHJ1Y3Qg ZHJtX2F0b21pY19zdGF0ZSAqb2xkX3N0YXRlKQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gb2xkX3N0YXRlLT5kZXY7Cj4gKwlzdHJ1Y3QgcmNhcl9kdV9kZXZpY2UgKnJjZHUgPSBk ZXYtPmRldl9wcml2YXRlOwo+ICsJc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+ ICsJc3RydWN0IGRybV9jcnRjICpjcnRjOwo+ICsJdW5zaWduZWQgaW50IGk7Cj4gKwo+ICsJLyoK PiArCSAqIFN0b3JlIFJHQiByb3V0aW5nIHRvIERQQUQwIGFuZCBEUEFEMSwgdGhlIGhhcmR3YXJl IHdpbGwgYmUgY29uZmlndXJlZAo+ICsJICogd2hlbiBzdGFydGluZyB0aGUgQ1JUQ3MuCj4gKwkg Ki8KPiArCXJjZHUtPmRwYWQxX3NvdXJjZSA9IC0xOwoKV2h5IGRvIHdlIGluaXRpYWxpc2UgZHBh ZDFfc291cmNlIGJ1dCBub3QgZHBhZDBfc291cmNlPwoKQXJlIHdlICpndWFyYW50ZWVkKiB0byBh bHdheXMgaGF2ZSBSQ0FSX0RVX09VVFBVVF9EUEFEMCBzZXQgaW4gb25lIG9mCnRoZSByY3J0Y19z dGF0ZS0+b3V0cHV0cyA/CgpJZiBzbyAtIHRoZW4gdGhpcyBpc24ndCBhbiBpc3N1ZS4KCgo+ICsK PiArCWZvcl9lYWNoX25ld19jcnRjX2luX3N0YXRlKG9sZF9zdGF0ZSwgY3J0YywgY3J0Y19zdGF0 ZSwgaSkgewo+ICsJCXN0cnVjdCByY2FyX2R1X2NydGNfc3RhdGUgKnJjcnRjX3N0YXRlID0KPiAr CQkJdG9fcmNhcl9jcnRjX3N0YXRlKGNydGNfc3RhdGUpOwo+ICsJCXN0cnVjdCByY2FyX2R1X2Ny dGMgKnJjcnRjID0gdG9fcmNhcl9jcnRjKGNydGMpOwo+ICsKPiArCQlpZiAocmNydGNfc3RhdGUt Pm91dHB1dHMgJiBCSVQoUkNBUl9EVV9PVVRQVVRfRFBBRDApKQo+ICsJCQlyY2R1LT5kcGFkMF9z b3VyY2UgPSByY3J0Yy0+aW5kZXg7Cj4gKwo+ICsJCWlmIChyY3J0Y19zdGF0ZS0+b3V0cHV0cyAm IEJJVChSQ0FSX0RVX09VVFBVVF9EUEFEMSkpCj4gKwkJCXJjZHUtPmRwYWQxX3NvdXJjZSA9IHJj cnRjLT5pbmRleDsKPiArCX0KPiAgCj4gIAkvKiBBcHBseSB0aGUgYXRvbWljIHVwZGF0ZS4gKi8K PiAgCWRybV9hdG9taWNfaGVscGVyX2NvbW1pdF9tb2Rlc2V0X2Rpc2FibGVzKGRldiwgb2xkX3N0 YXRlKTsKPiAKCi0tIApSZWdhcmRzCi0tCktpZXJhbgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9kcmktZGV2ZWwK