From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [RFC PATCH 05/12] drm/i915/dsi: remove unnecessary dsi device callbacks Date: Thu, 22 Jan 2015 15:23:45 +0200 Message-ID: <87r3ungd9a.fsf@intel.com> References: <54C0DDBC.1080206@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 7FEDE6E29E for ; Thu, 22 Jan 2015 05:23:00 -0800 (PST) In-Reply-To: <54C0DDBC.1080206@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Shobhit Kumar , intel-gfx@lists.freedesktop.org Cc: Shobhit Kumar , Thierry Reding List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCAyMiBKYW4gMjAxNSwgU2hvYmhpdCBLdW1hciA8c2hvYmhpdC5rdW1hckBsaW51eC5p bnRlbC5jb20+IHdyb3RlOgo+IE9uIDAxLzE2LzIwMTUgMDU6NTcgUE0sIEphbmkgTmlrdWxhIHdy b3RlOgo+PiBSZW1vdmUgYWxsIHRoZSB0cml2aWFsIGFuZC9vciBkdW1teSBjYWxsYmFja3MgZnJv bSBpbnRlbCBkc2kgZGV2aWNlCj4+IG9wcy4gTWVyZ2Ugc2VuZF9vdHBfY21kcyBpbnRvIHBhbmVs X3Jlc2V0IGFzIHRoZXkncmUgY2FsbGVkIGJhY2sgdG8KPj4gYmFjay4KPj4KPj4gVGhpcyB3aWxs IGJlIGhlbHBmdWwgZm9yIHN3aXRjaGluZyB0byB1c2UgZHJtX3BhbmVsIGZvciB0aGUKPj4gY2Fs bGJhY2tzLiBJZiB3ZSBldmVyIG5lZWQgdGhlIGFkZGl0aW9uYWwgY2FsbGJhY2tzLCB3ZSBzaG91 bGQgYWRkIHRoZW0KPj4gdG8gZHJtX3BhbmVsIGZ1bmNzLgo+Pgo+PiBTaWduZWQtb2ZmLWJ5OiBK YW5pIE5pa3VsYSA8amFuaS5uaWt1bGFAaW50ZWwuY29tPgo+PiAtLS0KPj4gICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kc2kuYyAgICAgICAgICAgfCAzMiArKy0tLS0tLS0tLS0tLS0tLS0t LS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2kuaCAgICAgICAgICAgfCAyMCAt LS0tLS0tLS0tLS0tCj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpX3BhbmVsX3Zi dC5jIHwgNDUgKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+ICAgMyBmaWxlcyBjaGFu Z2VkLCA1IGluc2VydGlvbnMoKyksIDkyIGRlbGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kc2kuYwo+PiBpbmRleCA5YjBlYWE5ZGI4NDUuLmZjMjE4Yjc3NTRiMyAxMDA2NDQKPj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMKPj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHNpLmMKPj4gQEAgLTcwLDEyICs3MCw2IEBAIHN0YXRpYyB2b2lk IGJhbmRfZ2FwX3Jlc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPj4gICAJ bXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+ZHBpb19sb2NrKTsKPj4gICB9Cj4+Cj4+IC1zdGF0aWMg c3RydWN0IGludGVsX2RzaSAqaW50ZWxfYXR0YWNoZWRfZHNpKHN0cnVjdCBkcm1fY29ubmVjdG9y ICpjb25uZWN0b3IpCj4+IC17Cj4+IC0JcmV0dXJuIGNvbnRhaW5lcl9vZihpbnRlbF9hdHRhY2hl ZF9lbmNvZGVyKGNvbm5lY3RvciksCj4+IC0JCQkgICAgc3RydWN0IGludGVsX2RzaSwgYmFzZSk7 Cj4+IC19Cj4+IC0KPj4gICBzdGF0aWMgaW5saW5lIGJvb2wgaXNfdmlkX21vZGUoc3RydWN0IGlu dGVsX2RzaSAqaW50ZWxfZHNpKQo+PiAgIHsKPj4gICAJcmV0dXJuIGludGVsX2RzaS0+b3BlcmF0 aW9uX21vZGUgPT0gSU5URUxfRFNJX1ZJREVPX01PREU7Cj4+IEBAIC05OSw3ICs5Myw2IEBAIHN0 YXRpYyBib29sIGludGVsX2RzaV9jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2RlciwKPj4gICAJc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yID0g aW50ZWxfZHNpLT5hdHRhY2hlZF9jb25uZWN0b3I7Cj4+ICAgCXN0cnVjdCBkcm1fZGlzcGxheV9t b2RlICpmaXhlZF9tb2RlID0gaW50ZWxfY29ubmVjdG9yLT5wYW5lbC5maXhlZF9tb2RlOwo+PiAg IAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9ICZjb25maWctPmFkanVz dGVkX21vZGU7Cj4+IC0Jc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUgPSAmY29uZmlnLT5y ZXF1ZXN0ZWRfbW9kZTsKPj4KPj4gICAJRFJNX0RFQlVHX0tNUygiXG4iKTsKPj4KPj4gQEAgLTEw OSwxMCArMTAyLDYgQEAgc3RhdGljIGJvb2wgaW50ZWxfZHNpX2NvbXB1dGVfY29uZmlnKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+PiAgIAkvKiBEU0kgdXNlcyBzaG9ydCBwYWNrZXRz IGZvciBzeW5jIGV2ZW50cywgc28gY2xlYXIgbW9kZSBmbGFncyBmb3IgRFNJICovCj4+ICAgCWFk anVzdGVkX21vZGUtPmZsYWdzID0gMDsKPj4KPj4gLQlpZiAoaW50ZWxfZHNpLT5kZXYuZGV2X29w cy0+bW9kZV9maXh1cCkKPj4gLQkJcmV0dXJuIGludGVsX2RzaS0+ZGV2LmRldl9vcHMtPm1vZGVf Zml4dXAoJmludGVsX2RzaS0+ZGV2LAo+PiAtCQkJCQkJCSAgbW9kZSwgYWRqdXN0ZWRfbW9kZSk7 Cj4+IC0KPgo+IFRoZXJlIGhhZCBiZWVuIGEgaW5zdGFuY2Ugd2hlcmUgd2UgaGFkIHRvIGRyaXZl IGRpZmZlcmVudCByZXNvbHV0aW9uIAo+IChsb3dlcikgdGhhbiB0aGUgbmF0aXZlIG9uZS4gQWxz byBpbiBWQlQgdGhlcmUgaXMgYSBmaWVsZCB0byBtYWtlIHRoaXMgCj4gZ2VuZXJpYyBhdCBsZWFz dCBmcm9tIGRyaXZlciBwZXJzcGVjdGl2ZSB0byBnaXZlIHRoZSBuZWVkZWQgdGFyZ2V0IAo+IHJl c29sdXRpb24uIEluIGNhc2UgdGFyZ2V0IHJlc29sdXRpb24gaXMgc2FtZSBhcyBuYXRpdmUsIG5v dGhpbmcgZ2V0cyAKPiBjaGFuZ2VkLCBlbHNlIG1vZGVfZml4dXAgZnVuY3Rpb24gYWRqdXN0cyB0 aGUgbW9kZSBhY2NvcmRpbmdseSBrZWVwaW5nIAo+IHRpbWluZyBhcyBzYW1lIGFuZCBlbmFibGlu ZyBzY2FsYXIuIE1pZ2h0IG5vdCBiZSB1c2VmdWwgaW4gZ2VuZXJhbCwgYnV0IAo+IGRpZCBmaW5k IGEgdXNlIGludGVybmFsbHkuCgpDYW4gd2UganVzdCBoYXZlIHRoZSBkcml2ZXIgcmV0dXJuIHRo ZSBkZXNpcmVkIG1vZGUgZnJvbSAuZ2V0X21vZGVzIGluCnRoYXQgY2FzZT8KCkJSLApKYW5pLgoK Cj4KPiBFaXRoZXIgd2F5Cj4KPiBSZXZpZXdlZC1CeTogU2hvYmhpdCBLdW1hciA8c2hvYmhpdC5r dW1hckBpbnRlbC5jb20+Cj4KPj4gICAJcmV0dXJuIHRydWU7Cj4+ICAgfQo+Pgo+PiBAQCAtMjY5 LDkgKzI1OCw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2RzaV9wcmVfZW5hYmxlKHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyKQo+PiAgIAlpZiAoaW50ZWxfZHNpLT5kZXYuZGV2X29wcy0+cGFu ZWxfcmVzZXQpCj4+ICAgCQlpbnRlbF9kc2ktPmRldi5kZXZfb3BzLT5wYW5lbF9yZXNldCgmaW50 ZWxfZHNpLT5kZXYpOwo+Pgo+PiAtCWlmIChpbnRlbF9kc2ktPmRldi5kZXZfb3BzLT5zZW5kX290 cF9jbWRzKQo+PiAtCQlpbnRlbF9kc2ktPmRldi5kZXZfb3BzLT5zZW5kX290cF9jbWRzKCZpbnRl bF9kc2ktPmRldik7Cj4+IC0KPj4gICAJZm9yX2VhY2hfZHNpX3BvcnQocG9ydCwgaW50ZWxfZHNp LT5wb3J0cykKPj4gICAJCXdhaXRfZm9yX2RzaV9maWZvX2VtcHR5KGludGVsX2RzaSwgcG9ydCk7 Cj4+Cj4+IEBAIC00ODQsNyArNDcwLDYgQEAgaW50ZWxfZHNpX21vZGVfdmFsaWQoc3RydWN0IGRy bV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPj4gICB7Cj4+ICAgCXN0cnVjdCBpbnRlbF9jb25uZWN0 b3IgKmludGVsX2Nvbm5lY3RvciA9IHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpOwo+PiAg IAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqZml4ZWRfbW9kZSA9IGludGVsX2Nvbm5lY3Rvci0+ cGFuZWwuZml4ZWRfbW9kZTsKPj4gLQlzdHJ1Y3QgaW50ZWxfZHNpICppbnRlbF9kc2kgPSBpbnRl bF9hdHRhY2hlZF9kc2koY29ubmVjdG9yKTsKPj4KPj4gICAJRFJNX0RFQlVHX0tNUygiXG4iKTsK Pj4KPj4gQEAgLTUwMCw3ICs0ODUsNyBAQCBpbnRlbF9kc2lfbW9kZV92YWxpZChzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLAo+PiAgIAkJCXJldHVybiBNT0RFX1BBTkVMOwo+PiAgIAl9 Cj4+Cj4+IC0JcmV0dXJuIGludGVsX2RzaS0+ZGV2LmRldl9vcHMtPm1vZGVfdmFsaWQoJmludGVs X2RzaS0+ZGV2LCBtb2RlKTsKPj4gKwlyZXR1cm4gTU9ERV9PSzsKPj4gICB9Cj4+Cj4+ICAgLyog cmV0dXJuIHR4Y2xrZXNjIGN5Y2xlcyBpbiB0ZXJtcyBvZiBkaXZpZGVyIGFuZCBkdXJhdGlvbiBp biB1cyAqLwo+PiBAQCAtNzQ5LDIwICs3MzQsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kc2lfcHJl X3BsbF9lbmFibGUoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCj4+ICAgc3RhdGljIGVu dW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMKPj4gICBpbnRlbF9kc2lfZGV0ZWN0KHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IsIGJvb2wgZm9yY2UpCj4+ICAgewo+PiAtCXN0cnVjdCBpbnRl bF9kc2kgKmludGVsX2RzaSA9IGludGVsX2F0dGFjaGVkX2RzaShjb25uZWN0b3IpOwo+PiAtCXN0 cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNvZGVyID0gJmludGVsX2RzaS0+YmFzZTsKPj4g LQllbnVtIGludGVsX2Rpc3BsYXlfcG93ZXJfZG9tYWluIHBvd2VyX2RvbWFpbjsKPj4gLQllbnVt IGRybV9jb25uZWN0b3Jfc3RhdHVzIGNvbm5lY3Rvcl9zdGF0dXM7Cj4+IC0Jc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2ID0gaW50ZWxfZW5jb2Rlci0+YmFzZS5kZXYtPmRldl9wcml2 YXRlOwo+PiAtCj4+IC0JRFJNX0RFQlVHX0tNUygiXG4iKTsKPj4gLQlwb3dlcl9kb21haW4gPSBp bnRlbF9kaXNwbGF5X3BvcnRfcG93ZXJfZG9tYWluKGludGVsX2VuY29kZXIpOwo+PiAtCj4+IC0J aW50ZWxfZGlzcGxheV9wb3dlcl9nZXQoZGV2X3ByaXYsIHBvd2VyX2RvbWFpbik7Cj4+IC0JY29u bmVjdG9yX3N0YXR1cyA9IGludGVsX2RzaS0+ZGV2LmRldl9vcHMtPmRldGVjdCgmaW50ZWxfZHNp LT5kZXYpOwo+PiAtCWludGVsX2Rpc3BsYXlfcG93ZXJfcHV0KGRldl9wcml2LCBwb3dlcl9kb21h aW4pOwo+PiAtCj4+IC0JcmV0dXJuIGNvbm5lY3Rvcl9zdGF0dXM7Cj4+ICsJcmV0dXJuIGNvbm5l Y3Rvcl9zdGF0dXNfY29ubmVjdGVkOwo+PiAgIH0KPj4KPj4gICBzdGF0aWMgaW50IGludGVsX2Rz aV9nZXRfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKPj4gZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHNpLmgKPj4gaW5kZXggMmJiOGM0NmM3ODg5Li4yMmY4NzAzNmEyNTYgMTAwNjQ0 Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5oCj4+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaS5oCj4+IEBAIC00NywzMyArNDcsMTMgQEAgc3RydWN0 IGludGVsX2RzaV9kZXZfb3BzIHsKPj4KPj4gICAJdm9pZCAoKmRpc2FibGVfcGFuZWxfcG93ZXIp KHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkc2kpOwo+Pgo+PiAtCS8qIG9uZSB0aW1lIHByb2dy YW1tYWJsZSBjb21tYW5kcyBpZiBuZWVkZWQgKi8KPj4gLQl2b2lkICgqc2VuZF9vdHBfY21kcyko c3RydWN0IGludGVsX2RzaV9kZXZpY2UgKmRzaSk7Cj4+IC0KPj4gICAJLyogVGhpcyBjYWxsYmFj ayBtdXN0IGJlIGFibGUgdG8gYXNzdW1lIERTSSBjb21tYW5kcyBjYW4gYmUgc2VudCAqLwo+PiAg IAl2b2lkICgqZW5hYmxlKShzdHJ1Y3QgaW50ZWxfZHNpX2RldmljZSAqZHNpKTsKPj4KPj4gICAJ LyogVGhpcyBjYWxsYmFjayBtdXN0IGJlIGFibGUgdG8gYXNzdW1lIERTSSBjb21tYW5kcyBjYW4g YmUgc2VudCAqLwo+PiAgIAl2b2lkICgqZGlzYWJsZSkoc3RydWN0IGludGVsX2RzaV9kZXZpY2Ug KmRzaSk7Cj4+Cj4+IC0JaW50ICgqbW9kZV92YWxpZCkoc3RydWN0IGludGVsX2RzaV9kZXZpY2Ug KmRzaSwKPj4gLQkJCSAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpOwo+PiAtCj4+IC0J Ym9vbCAoKm1vZGVfZml4dXApKHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkc2ksCj4+IC0JCQkg ICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKPj4gLQkJCSAgIHN0cnVjdCBk cm1fZGlzcGxheV9tb2RlICphZGp1c3RlZF9tb2RlKTsKPj4gLQo+PiAtCXZvaWQgKCptb2RlX3Nl dCkoc3RydWN0IGludGVsX2RzaV9kZXZpY2UgKmRzaSwKPj4gLQkJCSBzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqbW9kZSwKPj4gLQkJCSBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRf bW9kZSk7Cj4+IC0KPj4gLQllbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzICgqZGV0ZWN0KShzdHJ1 Y3QgaW50ZWxfZHNpX2RldmljZSAqZHNpKTsKPj4gLQo+PiAtCWJvb2wgKCpnZXRfaHdfc3RhdGUp KHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkZXYpOwo+PiAtCj4+ICAgCXN0cnVjdCBkcm1fZGlz cGxheV9tb2RlICooKmdldF9tb2Rlcykoc3RydWN0IGludGVsX2RzaV9kZXZpY2UgKmRzaSk7Cj4+ IC0KPj4gLQl2b2lkICgqZGVzdHJveSkgKHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkc2kpOwo+ PiAgIH07Cj4+Cj4+ICAgc3RydWN0IGludGVsX2RzaSB7Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kc2lfcGFuZWxfdmJ0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kc2lfcGFuZWxfdmJ0LmMKPj4gaW5kZXggNTQ5M2FlZjVhNmEzLi5iMGU3MzI3YTQ4 NWYgMTAwNjQ0Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RzaV9wYW5lbF92 YnQuYwo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kc2lfcGFuZWxfdmJ0LmMK Pj4gQEAgLTU1OSwxOCArNTU5LDYgQEAgc3RhdGljIGJvb2wgZ2VuZXJpY19pbml0KHN0cnVjdCBp bnRlbF9kc2lfZGV2aWNlICpkc2kpCj4+ICAgCXJldHVybiB0cnVlOwo+PiAgIH0KPj4KPj4gLXN0 YXRpYyBpbnQgZ2VuZXJpY19tb2RlX3ZhbGlkKHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkc2ks Cj4+IC0JCSAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQo+PiAtewo+PiAtCXJldHVy biBNT0RFX09LOwo+PiAtfQo+PiAtCj4+IC1zdGF0aWMgYm9vbCBnZW5lcmljX21vZGVfZml4dXAo c3RydWN0IGludGVsX2RzaV9kZXZpY2UgKmRzaSwKPj4gLQkJICAgIGNvbnN0IHN0cnVjdCBkcm1f ZGlzcGxheV9tb2RlICptb2RlLAo+PiAtCQkgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFk anVzdGVkX21vZGUpIHsKPj4gLQlyZXR1cm4gdHJ1ZTsKPj4gLX0KPj4gLQo+PiAgIHN0YXRpYyB2 b2lkIGdlbmVyaWNfcGFuZWxfcmVzZXQoc3RydWN0IGludGVsX2RzaV9kZXZpY2UgKmRzaSkKPj4g ICB7Cj4+ICAgCXN0cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSA9IGNvbnRhaW5lcl9vZihkc2ks IHN0cnVjdCBpbnRlbF9kc2ksIGRldik7Cj4+IEBAIC01ODAsMjYgKzU2OCwxOCBAQCBzdGF0aWMg dm9pZCBnZW5lcmljX3BhbmVsX3Jlc2V0KHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkc2kpCj4+ ICAgCWNoYXIgKnNlcXVlbmNlID0gZGV2X3ByaXYtPnZidC5kc2kuc2VxdWVuY2VbTUlQSV9TRVFf QVNTRVJUX1JFU0VUXTsKPj4KPj4gICAJZ2VuZXJpY19leGVjX3NlcXVlbmNlKGludGVsX2RzaSwg c2VxdWVuY2UpOwo+PiAtfQo+PiAtCj4+IC1zdGF0aWMgdm9pZCBnZW5lcmljX2Rpc2FibGVfcGFu ZWxfcG93ZXIoc3RydWN0IGludGVsX2RzaV9kZXZpY2UgKmRzaSkKPj4gLXsKPj4gLQlzdHJ1Y3Qg aW50ZWxfZHNpICppbnRlbF9kc2kgPSBjb250YWluZXJfb2YoZHNpLCBzdHJ1Y3QgaW50ZWxfZHNp LCBkZXYpOwo+PiAtCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBpbnRlbF9kc2ktPmJhc2UuYmFz ZS5kZXY7Cj4+IC0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZf cHJpdmF0ZTsKPj4gLQo+PiAtCWNoYXIgKnNlcXVlbmNlID0gZGV2X3ByaXYtPnZidC5kc2kuc2Vx dWVuY2VbTUlQSV9TRVFfREVBU1NFUlRfUkVTRVRdOwo+Pgo+PiArCXNlcXVlbmNlID0gZGV2X3By aXYtPnZidC5kc2kuc2VxdWVuY2VbTUlQSV9TRVFfSU5JVF9PVFBdOwo+PiAgIAlnZW5lcmljX2V4 ZWNfc2VxdWVuY2UoaW50ZWxfZHNpLCBzZXF1ZW5jZSk7Cj4+ICAgfQo+Pgo+PiAtc3RhdGljIHZv aWQgZ2VuZXJpY19zZW5kX290cF9jbWRzKHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkc2kpCj4+ ICtzdGF0aWMgdm9pZCBnZW5lcmljX2Rpc2FibGVfcGFuZWxfcG93ZXIoc3RydWN0IGludGVsX2Rz aV9kZXZpY2UgKmRzaSkKPj4gICB7Cj4+ICAgCXN0cnVjdCBpbnRlbF9kc2kgKmludGVsX2RzaSA9 IGNvbnRhaW5lcl9vZihkc2ksIHN0cnVjdCBpbnRlbF9kc2ksIGRldik7Cj4+ICAgCXN0cnVjdCBk cm1fZGV2aWNlICpkZXYgPSBpbnRlbF9kc2ktPmJhc2UuYmFzZS5kZXY7Cj4+ICAgCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4+Cj4+IC0JY2hh ciAqc2VxdWVuY2UgPSBkZXZfcHJpdi0+dmJ0LmRzaS5zZXF1ZW5jZVtNSVBJX1NFUV9JTklUX09U UF07Cj4+ICsJY2hhciAqc2VxdWVuY2UgPSBkZXZfcHJpdi0+dmJ0LmRzaS5zZXF1ZW5jZVtNSVBJ X1NFUV9ERUFTU0VSVF9SRVNFVF07Cj4+Cj4+ICAgCWdlbmVyaWNfZXhlY19zZXF1ZW5jZShpbnRl bF9kc2ksIHNlcXVlbmNlKTsKPj4gICB9Cj4+IEBAIC02MjYsMTYgKzYwNiw2IEBAIHN0YXRpYyB2 b2lkIGdlbmVyaWNfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfZHNpX2RldmljZSAqZHNpKQo+PiAgIAln ZW5lcmljX2V4ZWNfc2VxdWVuY2UoaW50ZWxfZHNpLCBzZXF1ZW5jZSk7Cj4+ICAgfQo+Pgo+PiAt c3RhdGljIGVudW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMgZ2VuZXJpY19kZXRlY3Qoc3RydWN0IGlu dGVsX2RzaV9kZXZpY2UgKmRzaSkKPj4gLXsKPj4gLQlyZXR1cm4gY29ubmVjdG9yX3N0YXR1c19j b25uZWN0ZWQ7Cj4+IC19Cj4+IC0KPj4gLXN0YXRpYyBib29sIGdlbmVyaWNfZ2V0X2h3X3N0YXRl KHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkZXYpCj4+IC17Cj4+IC0JcmV0dXJuIHRydWU7Cj4+ IC19Cj4+IC0KPj4gICBzdGF0aWMgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmdlbmVyaWNfZ2V0 X21vZGVzKHN0cnVjdCBpbnRlbF9kc2lfZGV2aWNlICpkc2kpCj4+ICAgewo+PiAgIAlzdHJ1Y3Qg aW50ZWxfZHNpICppbnRlbF9kc2kgPSBjb250YWluZXJfb2YoZHNpLCBzdHJ1Y3QgaW50ZWxfZHNp LCBkZXYpOwo+PiBAQCAtNjQ2LDIwICs2MTYsMTEgQEAgc3RhdGljIHN0cnVjdCBkcm1fZGlzcGxh eV9tb2RlICpnZW5lcmljX2dldF9tb2RlcyhzdHJ1Y3QgaW50ZWxfZHNpX2RldmljZSAqZHNpKQo+ PiAgIAlyZXR1cm4gZGV2X3ByaXYtPnZidC5sZnBfbHZkc192YnRfbW9kZTsKPj4gICB9Cj4+Cj4+ IC1zdGF0aWMgdm9pZCBnZW5lcmljX2Rlc3Ryb3koc3RydWN0IGludGVsX2RzaV9kZXZpY2UgKmRz aSkgeyB9Cj4+IC0KPj4gLS8qIENhbGxiYWNrcy4gV2UgbWlnaHQgbm90IG5lZWQgdGhlbSBhbGwu ICovCj4+ICAgc3RydWN0IGludGVsX2RzaV9kZXZfb3BzIHZidF9nZW5lcmljX2RzaV9kaXNwbGF5 X29wcyA9IHsKPj4gICAJLmluaXQgPSBnZW5lcmljX2luaXQsCj4+IC0JLm1vZGVfdmFsaWQgPSBn ZW5lcmljX21vZGVfdmFsaWQsCj4+IC0JLm1vZGVfZml4dXAgPSBnZW5lcmljX21vZGVfZml4dXAs Cj4+ICAgCS5wYW5lbF9yZXNldCA9IGdlbmVyaWNfcGFuZWxfcmVzZXQsCj4+ICAgCS5kaXNhYmxl X3BhbmVsX3Bvd2VyID0gZ2VuZXJpY19kaXNhYmxlX3BhbmVsX3Bvd2VyLAo+PiAtCS5zZW5kX290 cF9jbWRzID0gZ2VuZXJpY19zZW5kX290cF9jbWRzLAo+PiAgIAkuZW5hYmxlID0gZ2VuZXJpY19l bmFibGUsCj4+ICAgCS5kaXNhYmxlID0gZ2VuZXJpY19kaXNhYmxlLAo+PiAtCS5kZXRlY3QgPSBn ZW5lcmljX2RldGVjdCwKPj4gLQkuZ2V0X2h3X3N0YXRlID0gZ2VuZXJpY19nZXRfaHdfc3RhdGUs Cj4+ICAgCS5nZXRfbW9kZXMgPSBnZW5lcmljX2dldF9tb2RlcywKPj4gLQkuZGVzdHJveSA9IGdl bmVyaWNfZGVzdHJveSwKPj4gICB9Owo+Pgo+Cj4gUmVnYXJkcwo+IFNob2JoaXQKPiBfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IEludGVsLWdmeCBtYWls aW5nIGxpc3QKPiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gCkphbmkgTmlr dWxhLCBJbnRlbCBPcGVuIFNvdXJjZSBUZWNobm9sb2d5IENlbnRlcgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=