From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [tiL4.19-AD PATCH 2/2] drm/tilcdc: Remove obsolete crtc_mode_valid() hack Date: Tue, 5 Mar 2019 21:21:40 +0200 Message-ID: <20190305192140.GC14928@pendragon.ideasonboard.com> References: <7254b3a3bcd489fb44f6b57fd8bab325c4fbfad7.1551352503.git.jsarha@ti.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 [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by gabe.freedesktop.org (Postfix) with ESMTPS id 653F16E013 for ; Tue, 5 Mar 2019 19:21:48 +0000 (UTC) Content-Disposition: inline In-Reply-To: <7254b3a3bcd489fb44f6b57fd8bab325c4fbfad7.1551352503.git.jsarha@ti.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jyri Sarha Cc: peter.ujfalusi@ti.com, tomi.valkeinen@ti.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SGkgSnlyaSwKClRoYW5rIHlvdSBmb3IgdGhlIHBhdGNoLgoKT24gVGh1LCBGZWIgMjgsIDIwMTkg YXQgMDE6MTg6NTFQTSArMDIwMCwgSnlyaSBTYXJoYSB3cm90ZToKPiBFYXJsaWVyIHRoZXJlIHdl cmUgbm8gbW9kZV92YWxpZCgpIGhlbHBlciBmb3IgY3J0YyBhbmQgdGlsY2RjIGhhZCBhCj4gaGFj ayB0byBvdmVyIGNvbWUgdGhpcyBsaW1pdGF0aW9uLiBCdXQgbm93IHRoZSBtb2RlX3ZhbGlkKCkg aGVscGVyIGlzCj4gdGhlcmUgKGhhcyBiZWVuIHNpbmNlIHY0LjEzKSwgc28gaXQgaXMgYWJvdXQg dGltZSB0byBnZXQgcmlkIG9mIHRoYXQKPiBoYWNrLgo+IAo+IFNpZ25lZC1vZmYtYnk6IEp5cmkg U2FyaGEgPGpzYXJoYUB0aS5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGls Y2RjX2NydGMuYyAgICAgfCAyOCArKystLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3Rp bGNkY19kcnYuYyAgICAgIHwgIDEgLQo+ICBkcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19k cnYuaCAgICAgIHwgIDIgLQo+ICBkcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19leHRlcm5h bC5jIHwgODggKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS90aWxj ZGMvdGlsY2RjX2V4dGVybmFsLmggfCAgMSAtCj4gIGRyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGls Y2RjX3BhbmVsLmMgICAgfCAgOSAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxjZGNf dGZwNDEwLmMgICB8ICA5IC0tLQo+ICA3IGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyks IDExOSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3RpbGNk Yy90aWxjZGNfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxjZGNfY3J0Yy5jCj4g aW5kZXggYThhZTA2NGY1MmJiLi5mOTYwMGYyYWQ2NjAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL3RpbGNkYy90aWxjZGNfY3J0Yy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3RpbGNk Yy90aWxjZGNfY3J0Yy5jCj4gQEAgLTY1OSw5ICs2NTksNiBAQCBzdGF0aWMgYm9vbCB0aWxjZGNf Y3J0Y19tb2RlX2ZpeHVwKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgc3RhdGljIGludCB0aWxj ZGNfY3J0Y19hdG9taWNfY2hlY2soc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJCQkJICAgIHN0 cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUpCj4gIHsKPiAtCXN0cnVjdCBkcm1fZGlzcGxheV9t b2RlICptb2RlID0gJnN0YXRlLT5tb2RlOwo+IC0JaW50IHJldDsKPiAtCj4gIAkvKiBJZiB3ZSBh cmUgbm90IGFjdGl2ZSB3ZSBkb24ndCBjYXJlICovCj4gIAlpZiAoIXN0YXRlLT5hY3RpdmUpCj4g IAkJcmV0dXJuIDA7Cj4gQEAgLTY3MywxMiArNjcwLDYgQEAgc3RhdGljIGludCB0aWxjZGNfY3J0 Y19hdG9taWNfY2hlY2soc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJCXJldHVybiAtRUlOVkFM Owo+ICAJfQo+ICAKPiAtCXJldCA9IHRpbGNkY19jcnRjX21vZGVfdmFsaWQoY3J0YywgbW9kZSk7 Cj4gLQlpZiAocmV0KSB7Cj4gLQkJZGV2X2RiZyhjcnRjLT5kZXYtPmRldiwgIk1vZGUgXCIlc1wi IG5vdCB2YWxpZCIsIG1vZGUtPm5hbWUpOwo+IC0JCXJldHVybiAtRUlOVkFMOwo+IC0JfQo+IC0K PiAgCXJldHVybiAwOwo+ICB9Cj4gIAo+IEBAIC03MzAsMTMgKzcyMSw2IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgZHJtX2NydGNfZnVuY3MgdGlsY2RjX2NydGNfZnVuY3MgPSB7Cj4gIAkuZGlzYWJs ZV92YmxhbmsJPSB0aWxjZGNfY3J0Y19kaXNhYmxlX3ZibGFuaywKPiAgfTsKPiAgCj4gLXN0YXRp YyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIHRpbGNkY19jcnRjX2hlbHBlcl9m dW5jcyA9IHsKPiAtCQkubW9kZV9maXh1cCAgICAgPSB0aWxjZGNfY3J0Y19tb2RlX2ZpeHVwLAo+ IC0JCS5hdG9taWNfY2hlY2sJPSB0aWxjZGNfY3J0Y19hdG9taWNfY2hlY2ssCj4gLQkJLmF0b21p Y19lbmFibGUJPSB0aWxjZGNfY3J0Y19hdG9taWNfZW5hYmxlLAo+IC0JCS5hdG9taWNfZGlzYWJs ZQk9IHRpbGNkY19jcnRjX2F0b21pY19kaXNhYmxlLAo+IC19Owo+IC0KPiAgaW50IHRpbGNkY19j cnRjX21heF93aWR0aChzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIHsKPiAgCXN0cnVjdCBkcm1f ZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4gQEAgLTc1MSw3ICs3MzUsOSBAQCBpbnQgdGlsY2Rj X2NydGNfbWF4X3dpZHRoKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgCXJldHVybiBtYXhfd2lk dGg7Cj4gIH0KPiAgCj4gLWludCB0aWxjZGNfY3J0Y19tb2RlX3ZhbGlkKHN0cnVjdCBkcm1fY3J0 YyAqY3J0Yywgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCj4gK3N0YXRpYyBlbnVtIGRy bV9tb2RlX3N0YXR1cwo+ICt0aWxjZGNfY3J0Y19tb2RlX3ZhbGlkKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywKPiArCQkgICAgICAgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCj4g IHsKPiAgCXN0cnVjdCB0aWxjZGNfZHJtX3ByaXZhdGUgKnByaXYgPSBjcnRjLT5kZXYtPmRldl9w cml2YXRlOwo+ICAJdW5zaWduZWQgaW50IGJhbmR3aWR0aDsKPiBAQCAtODM5LDYgKzgyNSwxNCBA QCBpbnQgdGlsY2RjX2NydGNfbW9kZV92YWxpZChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHN0cnVj dCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQo+ICAJcmV0dXJuIE1PREVfT0s7Cj4gIH0KPiAgCj4g K3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIHRpbGNkY19jcnRjX2hl bHBlcl9mdW5jcyA9IHsKPiArCQkubW9kZV92YWxpZAk9IHRpbGNkY19jcnRjX21vZGVfdmFsaWQs Cj4gKwkJLm1vZGVfZml4dXAJPSB0aWxjZGNfY3J0Y19tb2RlX2ZpeHVwLAo+ICsJCS5hdG9taWNf Y2hlY2sJPSB0aWxjZGNfY3J0Y19hdG9taWNfY2hlY2ssCj4gKwkJLmF0b21pY19lbmFibGUJPSB0 aWxjZGNfY3J0Y19hdG9taWNfZW5hYmxlLAo+ICsJCS5hdG9taWNfZGlzYWJsZQk9IHRpbGNkY19j cnRjX2F0b21pY19kaXNhYmxlLAoKV2hpbGUgYXQgaXQsIGNvdWxkIHlvdSBmaXggdGhlIGluZGVu dGF0aW9uID8KClRoaXMgcGF0Y2ggbG9va3MgZ29vZCB0byBtZSBvdmVyYWxsLCBuaWNlIGNsZWFu dXAuCgpSZXZpZXdlZC1ieTogTGF1cmVudCBQaW5jaGFydCA8bGF1cmVudC5waW5jaGFydEBpZGVh c29uYm9hcmQuY29tPgoKSXMgaXQgcGF2aW5nIHRoZSB3YXkgdG8gcmVtb3ZhbCBvZiB0aGUgY3Vz dG9tIHRmdHA0MTAgbW9kdWxlID8gOi0pCgo+ICt9Owo+ICsKPiAgdm9pZCB0aWxjZGNfY3J0Y19z ZXRfcGFuZWxfaW5mbyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkJY29uc3Qgc3RydWN0IHRp bGNkY19wYW5lbF9pbmZvICppbmZvKQo+ICB7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS90aWxjZGMvdGlsY2RjX2Rydi5jIGIvZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxjZGNfZHJ2 LmMKPiBpbmRleCAzZGFjMDhiMjQxNDAuLjM2ZmQwNWIxNDVhNCAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19kcnYuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90 aWxjZGMvdGlsY2RjX2Rydi5jCj4gQEAgLTE5Miw3ICsxOTIsNiBAQCBzdGF0aWMgdm9pZCB0aWxj ZGNfZmluaShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJZHJtX2ttc19oZWxwZXJfcG9sbF9m aW5pKGRldik7Cj4gIAlkcm1faXJxX3VuaW5zdGFsbChkZXYpOwo+ICAJZHJtX21vZGVfY29uZmln X2NsZWFudXAoZGV2KTsKPiAtCXRpbGNkY19yZW1vdmVfZXh0ZXJuYWxfZGV2aWNlKGRldik7Cj4g IAo+ICAjaWZkZWYgQ09ORklHX0NQVV9GUkVRCj4gIAlpZiAocHJpdi0+ZnJlcV90cmFuc2l0aW9u Lm5vdGlmaWVyX2NhbGwpCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGls Y2RjX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxjZGNfZHJ2LmgKPiBpbmRleCA2 MmNlYTVmZjU1NTguLjMyOThmMzlkMzIwZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v dGlsY2RjL3RpbGNkY19kcnYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2Rj X2Rydi5oCj4gQEAgLTg2LDcgKzg2LDYgQEAgc3RydWN0IHRpbGNkY19kcm1fcHJpdmF0ZSB7Cj4g IAo+ICAJc3RydWN0IGRybV9lbmNvZGVyICpleHRlcm5hbF9lbmNvZGVyOwo+ICAJc3RydWN0IGRy bV9jb25uZWN0b3IgKmV4dGVybmFsX2Nvbm5lY3RvcjsKPiAtCWNvbnN0IHN0cnVjdCBkcm1fY29u bmVjdG9yX2hlbHBlcl9mdW5jcyAqY29ubmVjdG9yX2Z1bmNzOwo+ICAKPiAgCWJvb2wgaXNfcmVn aXN0ZXJlZDsKPiAgCWJvb2wgaXNfY29tcG9uZW50aXplZDsKPiBAQCAtMTY4LDcgKzE2Nyw2IEBA IHZvaWQgdGlsY2RjX2NydGNfc2V0X3BhbmVsX2luZm8oc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ ICAJCWNvbnN0IHN0cnVjdCB0aWxjZGNfcGFuZWxfaW5mbyAqaW5mbyk7Cj4gIHZvaWQgdGlsY2Rj X2NydGNfc2V0X3NpbXVsYXRlX3Zlc2Ffc3luYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkJ CQkJYm9vbCBzaW11bGF0ZV92ZXNhX3N5bmMpOwo+IC1pbnQgdGlsY2RjX2NydGNfbW9kZV92YWxp ZChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKTsK PiAgaW50IHRpbGNkY19jcnRjX21heF93aWR0aChzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwo+ICB2 b2lkIHRpbGNkY19jcnRjX3NodXRkb3duKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7Cj4gIGludCB0 aWxjZGNfY3J0Y191cGRhdGVfZmIoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19leHRlcm5hbC5jIGIvZHJpdmVycy9ncHUv ZHJtL3RpbGNkYy90aWxjZGNfZXh0ZXJuYWwuYwo+IGluZGV4IGI0ZWFmOWJjODdmOC4uNTRhZGYw NWY0NGU2IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX2V4dGVy bmFsLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19leHRlcm5hbC5jCj4g QEAgLTQwLDY0ICs0MCw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdGlsY2RjX3BhbmVsX2luZm8g cGFuZWxfaW5mb19kZWZhdWx0ID0gewo+ICAJCS5yYXN0ZXJfb3JkZXIgICAgICAgICAgID0gMCwK PiAgfTsKPiAgCj4gLXN0YXRpYyBpbnQgdGlsY2RjX2V4dGVybmFsX21vZGVfdmFsaWQoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiAtCQkJCSAgICAgIHN0cnVjdCBkcm1fZGlzcGxh eV9tb2RlICptb2RlKQo+IC17Cj4gLQlzdHJ1Y3QgdGlsY2RjX2RybV9wcml2YXRlICpwcml2ID0g Y29ubmVjdG9yLT5kZXYtPmRldl9wcml2YXRlOwo+IC0JaW50IHJldDsKPiAtCj4gLQlyZXQgPSB0 aWxjZGNfY3J0Y19tb2RlX3ZhbGlkKHByaXYtPmNydGMsIG1vZGUpOwo+IC0JaWYgKHJldCAhPSBN T0RFX09LKQo+IC0JCXJldHVybiByZXQ7Cj4gLQo+IC0JQlVHX09OKHByaXYtPmV4dGVybmFsX2Nv bm5lY3RvciAhPSBjb25uZWN0b3IpOwo+IC0JQlVHX09OKCFwcml2LT5jb25uZWN0b3JfZnVuY3Mp Owo+IC0KPiAtCS8qIElmIHRoZSBjb25uZWN0b3IgaGFzIGl0cyBvd24gbW9kZV92YWxpZCBjYWxs IGl0LiAqLwo+IC0JaWYgKCFJU19FUlIocHJpdi0+Y29ubmVjdG9yX2Z1bmNzKSAmJgo+IC0JICAg IHByaXYtPmNvbm5lY3Rvcl9mdW5jcy0+bW9kZV92YWxpZCkKPiAtCQlyZXR1cm4gcHJpdi0+Y29u bmVjdG9yX2Z1bmNzLT5tb2RlX3ZhbGlkKGNvbm5lY3RvciwgbW9kZSk7Cj4gLQo+IC0JcmV0dXJu IE1PREVfT0s7Cj4gLX0KPiAtCj4gLXN0YXRpYyBpbnQgdGlsY2RjX2FkZF9leHRlcm5hbF9jb25u ZWN0b3Ioc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAtCQkJCQkgc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3RvcikKPiAtewo+IC0Jc3RydWN0IHRpbGNkY19kcm1fcHJpdmF0ZSAqcHJpdiA9 IGRldi0+ZGV2X3ByaXZhdGU7Cj4gLQlzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfZnVuY3Mg KmNvbm5lY3Rvcl9mdW5jczsKPiAtCj4gLQkvKiBUaGVyZSBzaG91bGQgbmV2ZXIgYmUgbW9yZSB0 aGFuIG9uZSBjb25uZWN0b3IgKi8KPiAtCWlmIChXQVJOX09OKHByaXYtPmV4dGVybmFsX2Nvbm5l Y3RvcikpCj4gLQkJcmV0dXJuIC1FSU5WQUw7Cj4gLQo+IC0JcHJpdi0+ZXh0ZXJuYWxfY29ubmVj dG9yID0gY29ubmVjdG9yOwo+IC0JY29ubmVjdG9yX2Z1bmNzID0gZGV2bV9remFsbG9jKGRldi0+ ZGV2LCBzaXplb2YoKmNvbm5lY3Rvcl9mdW5jcyksCj4gLQkJCQkgICAgICAgR0ZQX0tFUk5FTCk7 Cj4gLQlpZiAoIWNvbm5lY3Rvcl9mdW5jcykKPiAtCQlyZXR1cm4gLUVOT01FTTsKPiAtCj4gLQkv KiBjb25uZWN0b3ItPmhlbHBlcl9wcml2YXRlIGNvbnRhaW5zIGFsd2F5cyBzdHJ1Y3QKPiAtCSAq IGNvbm5lY3Rvcl9oZWxwZXJfZnVuY3MgcG9pbnRlci4gRm9yIHRpbGNkYyBjcnRjIHRvIGhhdmUg YQo+IC0JICogc2F5IGlmIGEgc3BlY2lmaWMgbW9kZSBpcyBPaywgd2UgbmVlZCB0byBpbnN0YWxs IG91ciBvd24KPiAtCSAqIGhlbHBlciBmdW5jdGlvbnMuIEluIG91ciBoZWxwZXIgZnVuY3Rpb25z IHdlIGNvcHkKPiAtCSAqIGV2ZXJ5dGhpbmcgZWxzZSBidXQgdXNlIG91ciBvd24gbW9kZV92YWxp ZCgpIChhYm92ZSkuCj4gLQkgKi8KPiAtCWlmIChjb25uZWN0b3ItPmhlbHBlcl9wcml2YXRlKSB7 Cj4gLQkJcHJpdi0+Y29ubmVjdG9yX2Z1bmNzID0JY29ubmVjdG9yLT5oZWxwZXJfcHJpdmF0ZTsK PiAtCQkqY29ubmVjdG9yX2Z1bmNzID0gKnByaXYtPmNvbm5lY3Rvcl9mdW5jczsKPiAtCX0gZWxz ZSB7Cj4gLQkJcHJpdi0+Y29ubmVjdG9yX2Z1bmNzID0gRVJSX1BUUigtRU5PRU5UKTsKPiAtCX0K PiAtCWNvbm5lY3Rvcl9mdW5jcy0+bW9kZV92YWxpZCA9IHRpbGNkY19leHRlcm5hbF9tb2RlX3Zh bGlkOwo+IC0JZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKGNvbm5lY3RvciwgY29ubmVjdG9yX2Z1 bmNzKTsKPiAtCj4gLQlkZXZfZGJnKGRldi0+ZGV2LCAiRXh0ZXJuYWwgY29ubmVjdG9yICclcycg Y29ubmVjdGVkXG4iLAo+IC0JCWNvbm5lY3Rvci0+bmFtZSk7Cj4gLQo+IC0JcmV0dXJuIDA7Cj4g LX0KPiAtCj4gIHN0YXRpYwo+ICBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqdGlsY2RjX2VuY29kZXJf ZmluZF9jb25uZWN0b3Ioc3RydWN0IGRybV9kZXZpY2UgKmRkZXYsCj4gIAkJCQkJCSAgICBzdHJ1 Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCj4gQEAgLTExOCw3ICs2MCw2IEBAIHN0cnVjdCBkcm1f Y29ubmVjdG9yICp0aWxjZGNfZW5jb2Rlcl9maW5kX2Nvbm5lY3RvcihzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGRldiwKPiAgaW50IHRpbGNkY19hZGRfY29tcG9uZW50X2VuY29kZXIoc3RydWN0IGRybV9k ZXZpY2UgKmRkZXYpCj4gIHsKPiAgCXN0cnVjdCB0aWxjZGNfZHJtX3ByaXZhdGUgKnByaXYgPSBk ZGV2LT5kZXZfcHJpdmF0ZTsKPiAtCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3I7Cj4g IAlzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXI7Cj4gIAo+ICAJbGlzdF9mb3JfZWFjaF9lbnRy eShlbmNvZGVyLCAmZGRldi0+bW9kZV9jb25maWcuZW5jb2Rlcl9saXN0LCBoZWFkKQo+IEBAIC0x MzAsMjggKzcxLDE3IEBAIGludCB0aWxjZGNfYWRkX2NvbXBvbmVudF9lbmNvZGVyKHN0cnVjdCBk cm1fZGV2aWNlICpkZGV2KQo+ICAJCXJldHVybiAtRU5PREVWOwo+ICAJfQo+ICAKPiAtCWNvbm5l Y3RvciA9IHRpbGNkY19lbmNvZGVyX2ZpbmRfY29ubmVjdG9yKGRkZXYsIGVuY29kZXIpOwo+ICsJ cHJpdi0+ZXh0ZXJuYWxfY29ubmVjdG9yCj4gKwkJPSB0aWxjZGNfZW5jb2Rlcl9maW5kX2Nvbm5l Y3RvcihkZGV2LCBlbmNvZGVyKTsKPiAgCj4gLQlpZiAoIWNvbm5lY3RvcikKPiArCWlmICghcHJp di0+ZXh0ZXJuYWxfY29ubmVjdG9yKQo+ICAJCXJldHVybiAtRU5PREVWOwo+ICAKPiAgCS8qIE9u bHkgdGRhOTk4eCBpcyBzdXBwb3J0ZWQgYXQgdGhlIG1vbWVudC4gKi8KPiAgCXRpbGNkY19jcnRj X3NldF9zaW11bGF0ZV92ZXNhX3N5bmMocHJpdi0+Y3J0YywgdHJ1ZSk7Cj4gIAl0aWxjZGNfY3J0 Y19zZXRfcGFuZWxfaW5mbyhwcml2LT5jcnRjLCAmcGFuZWxfaW5mb190ZGE5OTh4KTsKPiAgCj4g LQlyZXR1cm4gdGlsY2RjX2FkZF9leHRlcm5hbF9jb25uZWN0b3IoZGRldiwgY29ubmVjdG9yKTsK PiAtfQo+IC0KPiAtdm9pZCB0aWxjZGNfcmVtb3ZlX2V4dGVybmFsX2RldmljZShzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KQo+IC17Cj4gLQlzdHJ1Y3QgdGlsY2RjX2RybV9wcml2YXRlICpwcml2ID0g ZGV2LT5kZXZfcHJpdmF0ZTsKPiAtCj4gLQkvKiBSZXN0b3JlIHRoZSBvcmlnaW5hbCBoZWxwZXIg ZnVuY3Rpb25zLCBpZiBhbnkuICovCj4gLQlpZiAoSVNfRVJSKHByaXYtPmNvbm5lY3Rvcl9mdW5j cykpCj4gLQkJZHJtX2Nvbm5lY3Rvcl9oZWxwZXJfYWRkKHByaXYtPmV4dGVybmFsX2Nvbm5lY3Rv ciwgTlVMTCk7Cj4gLQllbHNlIGlmIChwcml2LT5jb25uZWN0b3JfZnVuY3MpCj4gLQkJZHJtX2Nv bm5lY3Rvcl9oZWxwZXJfYWRkKHByaXYtPmV4dGVybmFsX2Nvbm5lY3RvciwKPiAtCQkJCQkgcHJp di0+Y29ubmVjdG9yX2Z1bmNzKTsKPiArCXJldHVybiAwOwo+ICB9Cj4gIAo+ICBzdGF0aWMgY29u c3Qgc3RydWN0IGRybV9lbmNvZGVyX2Z1bmNzIHRpbGNkY19leHRlcm5hbF9lbmNvZGVyX2Z1bmNz ID0gewo+IEBAIC0xNjIsNyArOTIsNiBAQCBzdGF0aWMKPiAgaW50IHRpbGNkY19hdHRhY2hfYnJp ZGdlKHN0cnVjdCBkcm1fZGV2aWNlICpkZGV2LCBzdHJ1Y3QgZHJtX2JyaWRnZSAqYnJpZGdlKQo+ ICB7Cj4gIAlzdHJ1Y3QgdGlsY2RjX2RybV9wcml2YXRlICpwcml2ID0gZGRldi0+ZGV2X3ByaXZh dGU7Cj4gLQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwo+ICAJaW50IHJldDsKPiAg Cj4gIAlwcml2LT5leHRlcm5hbF9lbmNvZGVyLT5wb3NzaWJsZV9jcnRjcyA9IEJJVCgwKTsKPiBA QCAtMTc1LDEzICsxMDQsMTIgQEAgaW50IHRpbGNkY19hdHRhY2hfYnJpZGdlKHN0cnVjdCBkcm1f ZGV2aWNlICpkZGV2LCBzdHJ1Y3QgZHJtX2JyaWRnZSAqYnJpZGdlKQo+ICAKPiAgCXRpbGNkY19j cnRjX3NldF9wYW5lbF9pbmZvKHByaXYtPmNydGMsICZwYW5lbF9pbmZvX2RlZmF1bHQpOwo+ICAK PiAtCWNvbm5lY3RvciA9IHRpbGNkY19lbmNvZGVyX2ZpbmRfY29ubmVjdG9yKGRkZXYsIHByaXYt PmV4dGVybmFsX2VuY29kZXIpOwo+IC0JaWYgKCFjb25uZWN0b3IpCj4gKwlwcml2LT5leHRlcm5h bF9jb25uZWN0b3IgPQo+ICsJCXRpbGNkY19lbmNvZGVyX2ZpbmRfY29ubmVjdG9yKGRkZXYsIHBy aXYtPmV4dGVybmFsX2VuY29kZXIpOwo+ICsJaWYgKCFwcml2LT5leHRlcm5hbF9jb25uZWN0b3Ip Cj4gIAkJcmV0dXJuIC1FTk9ERVY7Cj4gIAo+IC0JcmV0ID0gdGlsY2RjX2FkZF9leHRlcm5hbF9j b25uZWN0b3IoZGRldiwgY29ubmVjdG9yKTsKPiAtCj4gLQlyZXR1cm4gcmV0Owo+ICsJcmV0dXJu IDA7Cj4gIH0KPiAgCj4gIGludCB0aWxjZGNfYXR0YWNoX2V4dGVybmFsX2RldmljZShzdHJ1Y3Qg ZHJtX2RldmljZSAqZGRldikKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90 aWxjZGNfZXh0ZXJuYWwuaCBiL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX2V4dGVybmFs LmgKPiBpbmRleCA3NjNkMThmMDA2YzcuLmEyOGI5ZGY2OGM4ZiAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19leHRlcm5hbC5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL3RpbGNkYy90aWxjZGNfZXh0ZXJuYWwuaAo+IEBAIC0xOSw3ICsxOSw2IEBACj4gICNkZWZp bmUgX19USUxDRENfRVhURVJOQUxfSF9fCj4gIAo+ICBpbnQgdGlsY2RjX2FkZF9jb21wb25lbnRf ZW5jb2RlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAtdm9pZCB0aWxjZGNfcmVtb3ZlX2V4 dGVybmFsX2RldmljZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgaW50IHRpbGNkY19nZXRf ZXh0ZXJuYWxfY29tcG9uZW50cyhzdHJ1Y3QgZGV2aWNlICpkZXYsCj4gIAkJCQkgICBzdHJ1Y3Qg Y29tcG9uZW50X21hdGNoICoqbWF0Y2gpOwo+ICBpbnQgdGlsY2RjX2F0dGFjaF9leHRlcm5hbF9k ZXZpY2Uoc3RydWN0IGRybV9kZXZpY2UgKmRkZXYpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vdGlsY2RjL3RpbGNkY19wYW5lbC5jIGIvZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxj ZGNfcGFuZWwuYwo+IGluZGV4IGExYWNhYjM5ZDg3Zi4uN2MyNmY4MWZiM2YwIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX3BhbmVsLmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vdGlsY2RjL3RpbGNkY19wYW5lbC5jCj4gQEAgLTE3MCwxNCArMTcwLDYgQEAgc3Rh dGljIGludCBwYW5lbF9jb25uZWN0b3JfZ2V0X21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IpCj4gIAlyZXR1cm4gaTsKPiAgfQo+ICAKPiAtc3RhdGljIGludCBwYW5lbF9jb25u ZWN0b3JfbW9kZV92YWxpZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+IC0JCSAg c3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCj4gLXsKPiAtCXN0cnVjdCB0aWxjZGNfZHJt X3ByaXZhdGUgKnByaXYgPSBjb25uZWN0b3ItPmRldi0+ZGV2X3ByaXZhdGU7Cj4gLQkvKiBvdXIg b25seSBjb25zdHJhaW50cyBhcmUgd2hhdCB0aGUgY3J0YyBjYW4gZ2VuZXJhdGU6ICovCj4gLQly ZXR1cm4gdGlsY2RjX2NydGNfbW9kZV92YWxpZChwcml2LT5jcnRjLCBtb2RlKTsKPiAtfQo+IC0K PiAgc3RhdGljIHN0cnVjdCBkcm1fZW5jb2RlciAqcGFuZWxfY29ubmVjdG9yX2Jlc3RfZW5jb2Rl cigKPiAgCQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ICB7Cj4gQEAgLTE5NSw3 ICsxODcsNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jb25uZWN0b3JfZnVuY3MgcGFuZWxf Y29ubmVjdG9yX2Z1bmNzID0gewo+ICAKPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY29ubmVj dG9yX2hlbHBlcl9mdW5jcyBwYW5lbF9jb25uZWN0b3JfaGVscGVyX2Z1bmNzID0gewo+ICAJLmdl dF9tb2RlcyAgICAgICAgICA9IHBhbmVsX2Nvbm5lY3Rvcl9nZXRfbW9kZXMsCj4gLQkubW9kZV92 YWxpZCAgICAgICAgID0gcGFuZWxfY29ubmVjdG9yX21vZGVfdmFsaWQsCj4gIAkuYmVzdF9lbmNv ZGVyICAgICAgID0gcGFuZWxfY29ubmVjdG9yX2Jlc3RfZW5jb2RlciwKPiAgfTsKPiAgCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX3RmcDQxMC5jIGIvZHJpdmVy cy9ncHUvZHJtL3RpbGNkYy90aWxjZGNfdGZwNDEwLmMKPiBpbmRleCBkYWViZjFhYTZiMGEuLjU0 YzZkODI1YjFhMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY190 ZnA0MTAuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX3RmcDQxMC5jCj4g QEAgLTE4MywxNCArMTgzLDYgQEAgc3RhdGljIGludCB0ZnA0MTBfY29ubmVjdG9yX2dldF9tb2Rl cyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQo+ICAJcmV0dXJuIHJldDsKPiAgfQo+ ICAKPiAtc3RhdGljIGludCB0ZnA0MTBfY29ubmVjdG9yX21vZGVfdmFsaWQoc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvciwKPiAtCQkgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2Rl KQo+IC17Cj4gLQlzdHJ1Y3QgdGlsY2RjX2RybV9wcml2YXRlICpwcml2ID0gY29ubmVjdG9yLT5k ZXYtPmRldl9wcml2YXRlOwo+IC0JLyogb3VyIG9ubHkgY29uc3RyYWludHMgYXJlIHdoYXQgdGhl IGNydGMgY2FuIGdlbmVyYXRlOiAqLwo+IC0JcmV0dXJuIHRpbGNkY19jcnRjX21vZGVfdmFsaWQo cHJpdi0+Y3J0YywgbW9kZSk7Cj4gLX0KPiAtCj4gIHN0YXRpYyBzdHJ1Y3QgZHJtX2VuY29kZXIg KnRmcDQxMF9jb25uZWN0b3JfYmVzdF9lbmNvZGVyKAo+ICAJCXN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IpCj4gIHsKPiBAQCAtMjA5LDcgKzIwMSw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZHJtX2Nvbm5lY3Rvcl9mdW5jcyB0ZnA0MTBfY29ubmVjdG9yX2Z1bmNzID0gewo+ICAKPiAg c3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY29ubmVjdG9yX2hlbHBlcl9mdW5jcyB0ZnA0MTBfY29u bmVjdG9yX2hlbHBlcl9mdW5jcyA9IHsKPiAgCS5nZXRfbW9kZXMgICAgICAgICAgPSB0ZnA0MTBf Y29ubmVjdG9yX2dldF9tb2RlcywKPiAtCS5tb2RlX3ZhbGlkICAgICAgICAgPSB0ZnA0MTBfY29u bmVjdG9yX21vZGVfdmFsaWQsCj4gIAkuYmVzdF9lbmNvZGVyICAgICAgID0gdGZwNDEwX2Nvbm5l Y3Rvcl9iZXN0X2VuY29kZXIsCj4gIH07Cj4gIAoKLS0gClJlZ2FyZHMsCgpMYXVyZW50IFBpbmNo YXJ0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1k ZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==