From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 02/42] drm/i915: get rid of intel_crtc_disable and related code, v2 Date: Mon, 11 May 2015 19:08:25 +0200 Message-ID: <20150511170825.GI15256@phenom.ffwll.local> References: <1431354318-11995-1-git-send-email-maarten.lankhorst@linux.intel.com> <1431354318-11995-3-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wg0-f49.google.com (mail-wg0-f49.google.com [74.125.82.49]) by gabe.freedesktop.org (Postfix) with ESMTP id 1324B6E19A for ; Mon, 11 May 2015 10:06:06 -0700 (PDT) Received: by wgin8 with SMTP id n8so134912231wgi.0 for ; Mon, 11 May 2015 10:06:05 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1431354318-11995-3-git-send-email-maarten.lankhorst@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: Maarten Lankhorst Cc: Ander Conselvan de Oliveira , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBNYXkgMTEsIDIwMTUgYXQgMDQ6MjQ6MzhQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gTm93IHRoYXQgdGhlIGRwbGwgdXBkYXRlcyBhcmUgKG1vc3RseSkgYXRvbWlj LCB0aGUgLm9mZigpIGNvZGUgaXMgbm8gbG9uZ2VyIHVzZWQsCj4gYW5kIHRoZXJlIGFyZSBubyBt b3JlIGNhbGxlcnMgZm9yIGludGVsX3B1dF9zaGFyZWRfZHBsbC4gTW92ZSBhbGwgdGhlIHVwZGF0 ZXMKPiBkb25lIGluIGludGVsX2NydGNfZGlzYWJsZSB0byBpbnRlbF9tb2Rlc2V0X3VwZGF0ZV9z dGF0ZSwgb25lIGxlc3Mgc3BlY2lhbCBjYXNlCj4gdG8gd29ycnkgYWJvdXQuCgpUaGUgY29tbWl0 IG1lc3NhZ2UgaXMgYSBiaXQgaW5uYWNjdXJhdGU6IFdlIGRvIHN0aWxsIGhhdmUgY2FsbGVycyBv ZgpwdXRfc2hhcmVkX2RwbGwsIGJ1dCB0aGF0IHdvcmsgaXMgc3VwZXJzZWVkZWQgYnkKaW50ZWxf c2hhcmVkX2RwbGxfc3RhcnRfY29uZmlnLiBIb3BlZnVsbHkuCgpCZWNhdXNlIG9mIHRoYXQgSSB0 aGluayB0aGlzIHNob3VsZCBiZSB0d28gcGF0Y2hlczogRmlyc3Qgb25lIHRvIG51a2UKcHV0X3No YXJlZF9kcGxsLCBzZWNvbmQgb25lIHRvIGlubGluZSBjcnRjX2Rpc2FibGUuCgpPbmUgY29tbWVu dCBiZWxvdy4KCj4gCj4gQ2hhbmdlcyBzaW5jZSB2MToKPiAtIE1vdmUgZHJtX2F0b21pY19oZWxw ZXJfc3dhcF9zdGF0ZSB1cC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBNYWFydGVuIExhbmtob3JzdCA8 bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oICAgICAgfCAgIDEgLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMgfCAxMDYgKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgICAxIC0KPiAgMyBmaWxl cyBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspLCA4OSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKPiBpbmRleCA2YjMxNDJhOTkxNzEuLmE2ZDNhYjk0ZWMxNSAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IEBAIC01NzQsNyArNTc0LDYgQEAgc3RydWN0IGRybV9p OTE1X2Rpc3BsYXlfZnVuY3Mgewo+ICAJCQkJICBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0 Y19zdGF0ZSk7Cj4gIAl2b2lkICgqY3J0Y19lbmFibGUpKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7 Cj4gIAl2b2lkICgqY3J0Y19kaXNhYmxlKShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwo+IC0Jdm9p ZCAoKm9mZikoc3RydWN0IGRybV9jcnRjICpjcnRjKTsKPiAgCXZvaWQgKCphdWRpb19jb2RlY19l bmFibGUpKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gIAkJCQkgICBzdHJ1Y3Qg aW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCQkJCSAgIHN0cnVjdCBkcm1fZGlzcGxheV9tb2Rl ICptb2RlKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gaW5kZXggYzU1NDNm MGJjZGE5Li5hZjk2ZDY4NmFhZTIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jCj4gQEAgLTQyMjgsMjcgKzQyMjgsNiBAQCBzdGF0aWMgdm9pZCBscHRfcGNoX2VuYWJsZShz dHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIAlscHRfZW5hYmxlX3BjaF90cmFuc2NvZGVyKGRldl9w cml2LCBjcHVfdHJhbnNjb2Rlcik7Cj4gIH0KPiAgCj4gLXZvaWQgaW50ZWxfcHV0X3NoYXJlZF9k cGxsKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQo+IC17Cj4gLQlzdHJ1Y3QgaW50ZWxfc2hhcmVk X2RwbGwgKnBsbCA9IGludGVsX2NydGNfdG9fc2hhcmVkX2RwbGwoY3J0Yyk7Cj4gLQo+IC0JaWYg KHBsbCA9PSBOVUxMKQo+IC0JCXJldHVybjsKPiAtCj4gLQlpZiAoIShwbGwtPmNvbmZpZy5jcnRj X21hc2sgJiAoMSA8PCBjcnRjLT5waXBlKSkpIHsKPiAtCQlXQVJOKDEsICJiYWQgJXMgY3J0YyBt YXNrXG4iLCBwbGwtPm5hbWUpOwo+IC0JCXJldHVybjsKPiAtCX0KPiAtCj4gLQlwbGwtPmNvbmZp Zy5jcnRjX21hc2sgJj0gfigxIDw8IGNydGMtPnBpcGUpOwo+IC0JaWYgKHBsbC0+Y29uZmlnLmNy dGNfbWFzayA9PSAwKSB7Cj4gLQkJV0FSTl9PTihwbGwtPm9uKTsKPiAtCQlXQVJOX09OKHBsbC0+ YWN0aXZlKTsKPiAtCX0KCldlJ3JlIGRyb3BwaW5nIHRoZSBlZGdlLWRldGVjdGlvbiB3YXJuaW5n cyBoZXJlLiBCdXQgSSB0aGluayB0aGUgY29kZSBpbgpjaGVja19zaGFyZWRfZHBsbF9zdGF0ZSBz aG91bGQgYmUgcGFyYW5vaWQgZW5vdWdoIHRvIGtlZXAgdXMgY292ZXJlZC4KV29ydGggbWVudGlv bmluZyBpbiB0aGUgY29tbWl0IG1lc3NhZ2UgdGhvdWdoLgotRGFuaWVsCgo+IC0KPiAtCWNydGMt PmNvbmZpZy0+c2hhcmVkX2RwbGwgPSBEUExMX0lEX1BSSVZBVEU7Cj4gLX0KPiAtCj4gIHN0cnVj dCBpbnRlbF9zaGFyZWRfZHBsbCAqaW50ZWxfZ2V0X3NoYXJlZF9kcGxsKHN0cnVjdCBpbnRlbF9j cnRjICpjcnRjLAo+ICAJCQkJCQlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkK PiAgewo+IEBAIC01MjI0LDEzICs1MjAzLDYgQEAgc3RhdGljIHZvaWQgaGFzd2VsbF9jcnRjX2Rp c2FibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ICAJCWludGVsX2Rpc2FibGVfc2hhcmVkX2Rw bGwoaW50ZWxfY3J0Yyk7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGlyb25sYWtlX2NydGNfb2Zm KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAtewo+IC0Jc3RydWN0IGludGVsX2NydGMgKmludGVs X2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwo+IC0JaW50ZWxfcHV0X3NoYXJlZF9kcGxsKGlu dGVsX2NydGMpOwo+IC19Cj4gLQo+IC0KPiAgc3RhdGljIHZvaWQgaTl4eF9wZml0X2VuYWJsZShz dHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykKPiAgewo+ICAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9 IGNydGMtPmJhc2UuZGV2Owo+IEBAIC02MDYyLDEwICs2MDM0LDYgQEAgc3RhdGljIHZvaWQgaTl4 eF9jcnRjX2Rpc2FibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ICAJbXV0ZXhfdW5sb2NrKCZk ZXYtPnN0cnVjdF9tdXRleCk7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGk5eHhfY3J0Y19vZmYo c3RydWN0IGRybV9jcnRjICpjcnRjKQo+IC17Cj4gLX0KPiAtCj4gIC8qIE1hc3RlciBmdW5jdGlv biB0byBlbmFibGUvZGlzYWJsZSBDUlRDIGFuZCBjb3JyZXNwb25kaW5nIHBvd2VyIHdlbGxzICov Cj4gIHZvaWQgaW50ZWxfY3J0Y19jb250cm9sKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgYm9vbCBl bmFibGUpCj4gIHsKPiBAQCAtNjExNSwzNCArNjA4Myw2IEBAIHZvaWQgaW50ZWxfY3J0Y191cGRh dGVfZHBtcyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIAljcnRjLT5zdGF0ZS0+YWN0aXZlID0g ZW5hYmxlOwo+ICB9Cj4gIAo+IC1zdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2Rpc2FibGUoc3RydWN0 IGRybV9jcnRjICpjcnRjKQo+IC17Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ ZGV2Owo+IC0Jc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcjsKPiAtCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gLQo+IC0JLyogY3J0 YyBzaG91bGQgc3RpbGwgYmUgZW5hYmxlZCB3aGVuIHdlIGRpc2FibGUgaXQuICovCj4gLQlXQVJO X09OKCFjcnRjLT5zdGF0ZS0+ZW5hYmxlKTsKPiAtCj4gLQlpbnRlbF9jcnRjX2Rpc2FibGVfcGxh bmVzKGNydGMpOwo+IC0JZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19kaXNhYmxlKGNydGMpOwo+IC0J ZGV2X3ByaXYtPmRpc3BsYXkub2ZmKGNydGMpOwo+IC0KPiAtCWRybV9wbGFuZV9oZWxwZXJfZGlz YWJsZShjcnRjLT5wcmltYXJ5KTsKPiAtCj4gLQkvKiBVcGRhdGUgY29tcHV0ZWQgc3RhdGUuICov Cj4gLQlsaXN0X2Zvcl9lYWNoX2VudHJ5KGNvbm5lY3RvciwgJmRldi0+bW9kZV9jb25maWcuY29u bmVjdG9yX2xpc3QsIGhlYWQpIHsKPiAtCQlpZiAoIWNvbm5lY3Rvci0+ZW5jb2RlciB8fCAhY29u bmVjdG9yLT5lbmNvZGVyLT5jcnRjKQo+IC0JCQljb250aW51ZTsKPiAtCj4gLQkJaWYgKGNvbm5l Y3Rvci0+ZW5jb2Rlci0+Y3J0YyAhPSBjcnRjKQo+IC0JCQljb250aW51ZTsKPiAtCj4gLQkJY29u bmVjdG9yLT5kcG1zID0gRFJNX01PREVfRFBNU19PRkY7Cj4gLQkJdG9faW50ZWxfZW5jb2Rlcihj b25uZWN0b3ItPmVuY29kZXIpLT5jb25uZWN0b3JzX2FjdGl2ZSA9IGZhbHNlOwo+IC0JfQo+IC19 Cj4gLQo+ICB2b2lkIGludGVsX2VuY29kZXJfZGVzdHJveShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVu Y29kZXIpCj4gIHsKPiAgCXN0cnVjdCBpbnRlbF9lbmNvZGVyICppbnRlbF9lbmNvZGVyID0gdG9f aW50ZWxfZW5jb2RlcihlbmNvZGVyKTsKPiBAQCAtMTE2MTQsMjYgKzExNTU0LDIyIEBAIGludGVs X21vZGVzZXRfdXBkYXRlX3N0YXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAg CXN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKPiAgCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19z dGF0ZTsKPiAgCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3I7Cj4gLQlpbnQgaTsKPiAg Cj4gIAlpbnRlbF9zaGFyZWRfZHBsbF9jb21taXQoZGV2X3ByaXYpOwo+ICsJZHJtX2F0b21pY19o ZWxwZXJfc3dhcF9zdGF0ZShzdGF0ZS0+ZGV2LCBzdGF0ZSk7Cj4gIAo+ICAJZm9yX2VhY2hfaW50 ZWxfZW5jb2RlcihkZXYsIGludGVsX2VuY29kZXIpIHsKPiAgCQlpZiAoIWludGVsX2VuY29kZXIt PmJhc2UuY3J0YykKPiAgCQkJY29udGludWU7Cj4gIAo+IC0JCWZvcl9lYWNoX2NydGNfaW5fc3Rh dGUoc3RhdGUsIGNydGMsIGNydGNfc3RhdGUsIGkpCj4gLQkJCWlmIChjcnRjID09IGludGVsX2Vu Y29kZXItPmJhc2UuY3J0YykKPiAtCQkJCWJyZWFrOwo+IC0KPiAtCQlpZiAoY3J0YyAhPSBpbnRl bF9lbmNvZGVyLT5iYXNlLmNydGMpCj4gKwkJY3J0YyA9IGludGVsX2VuY29kZXItPmJhc2UuY3J0 YzsKPiArCQljcnRjX3N0YXRlID0gc3RhdGUtPmNydGNfc3RhdGVzW2RybV9jcnRjX2luZGV4KGNy dGMpXTsKPiArCQlpZiAoIWNydGNfc3RhdGUgfHwgIW5lZWRzX21vZGVzZXQoY3J0Yy0+c3RhdGUp KQo+ICAJCQljb250aW51ZTsKPiAgCj4gLQkJaWYgKGNydGNfc3RhdGUtPmVuYWJsZSAmJiBuZWVk c19tb2Rlc2V0KGNydGNfc3RhdGUpKQo+IC0JCQlpbnRlbF9lbmNvZGVyLT5jb25uZWN0b3JzX2Fj dGl2ZSA9IGZhbHNlOwo+ICsJCWludGVsX2VuY29kZXItPmNvbm5lY3RvcnNfYWN0aXZlID0gZmFs c2U7Cj4gIAl9Cj4gIAo+IC0JZHJtX2F0b21pY19oZWxwZXJfc3dhcF9zdGF0ZShzdGF0ZS0+ZGV2 LCBzdGF0ZSk7Cj4gIAlpbnRlbF9tb2Rlc2V0X2ZpeHVwX3N0YXRlKHN0YXRlKTsKPiAgCj4gIAkv KiBEb3VibGUgY2hlY2sgc3RhdGUuICovCj4gQEAgLTExNjQ1LDE0ICsxMTU4MSwxMiBAQCBpbnRl bF9tb2Rlc2V0X3VwZGF0ZV9zdGF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4g IAkJaWYgKCFjb25uZWN0b3ItPmVuY29kZXIgfHwgIWNvbm5lY3Rvci0+ZW5jb2Rlci0+Y3J0YykK PiAgCQkJY29udGludWU7Cj4gIAo+IC0JCWZvcl9lYWNoX2NydGNfaW5fc3RhdGUoc3RhdGUsIGNy dGMsIGNydGNfc3RhdGUsIGkpCj4gLQkJCWlmIChjcnRjID09IGNvbm5lY3Rvci0+ZW5jb2Rlci0+ Y3J0YykKPiAtCQkJCWJyZWFrOwo+IC0KPiAtCQlpZiAoY3J0YyAhPSBjb25uZWN0b3ItPmVuY29k ZXItPmNydGMpCj4gKwkJY3J0YyA9IGNvbm5lY3Rvci0+ZW5jb2Rlci0+Y3J0YzsKPiArCQljcnRj X3N0YXRlID0gc3RhdGUtPmNydGNfc3RhdGVzW2RybV9jcnRjX2luZGV4KGNydGMpXTsKPiArCQlp ZiAoIWNydGNfc3RhdGUgfHwgIW5lZWRzX21vZGVzZXQoY3J0Yy0+c3RhdGUpKQo+ICAJCQljb250 aW51ZTsKPiAgCj4gLQkJaWYgKGNydGMtPnN0YXRlLT5lbmFibGUgJiYgbmVlZHNfbW9kZXNldChj cnRjLT5zdGF0ZSkpIHsKPiArCQlpZiAoY3J0Yy0+c3RhdGUtPmVuYWJsZSkgewo+ICAJCQlzdHJ1 Y3QgZHJtX3Byb3BlcnR5ICpkcG1zX3Byb3BlcnR5ID0KPiAgCQkJCWRldi0+bW9kZV9jb25maWcu ZHBtc19wcm9wZXJ0eTsKPiAgCj4gQEAgLTExNjYzLDcgKzExNTk3LDggQEAgaW50ZWxfbW9kZXNl dF91cGRhdGVfc3RhdGUoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAKPiAgCQkJ aW50ZWxfZW5jb2RlciA9IHRvX2ludGVsX2VuY29kZXIoY29ubmVjdG9yLT5lbmNvZGVyKTsKPiAg CQkJaW50ZWxfZW5jb2Rlci0+Y29ubmVjdG9yc19hY3RpdmUgPSB0cnVlOwo+IC0JCX0KPiArCQl9 IGVsc2UKPiArCQkJY29ubmVjdG9yLT5kcG1zID0gRFJNX01PREVfRFBNU19PRkY7Cj4gIAl9Cj4g IAo+ICB9Cj4gQEAgLTEyMjE0LDYgKzEyMTQ5LDEwIEBAIGludGVsX21vZGVzZXRfY29tcHV0ZV9j b25maWcoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICAJaWYgKElTX0VSUihwaXBlX2NvbmZpZykp Cj4gIAkJcmV0dXJuIHBpcGVfY29uZmlnOwo+ICAKPiArCWlmICghcGlwZV9jb25maWctPmJhc2Uu ZW5hYmxlICYmCj4gKwkgICAgV0FSTl9PTihwaXBlX2NvbmZpZy0+YmFzZS5hY3RpdmUpKQo+ICsJ CXBpcGVfY29uZmlnLT5iYXNlLmFjdGl2ZSA9IGZhbHNlOwo+ICsKPiAgCWlmICghcGlwZV9jb25m aWctPmJhc2UuZW5hYmxlKQo+ICAJCXJldHVybiBwaXBlX2NvbmZpZzsKPiAgCj4gQEAgLTEyMzQx LDEyICsxMjI4MCwxMCBAQCBzdGF0aWMgaW50IF9faW50ZWxfc2V0X21vZGUoc3RydWN0IGRybV9j cnRjICptb2Rlc2V0X2NydGMsCj4gIAkJaWYgKCFuZWVkc19tb2Rlc2V0KGNydGNfc3RhdGUpKQo+ ICAJCQljb250aW51ZTsKPiAgCj4gLQkJaWYgKCFjcnRjX3N0YXRlLT5lbmFibGUpIHsKPiAtCQkJ aW50ZWxfY3J0Y19kaXNhYmxlKGNydGMpOwo+IC0JCX0gZWxzZSBpZiAoY3J0Yy0+c3RhdGUtPmVu YWJsZSkgewo+IC0JCQlpbnRlbF9jcnRjX2Rpc2FibGVfcGxhbmVzKGNydGMpOwo+IC0JCQlkZXZf cHJpdi0+ZGlzcGxheS5jcnRjX2Rpc2FibGUoY3J0Yyk7Cj4gLQkJfQo+ICsJCWludGVsX2NydGNf ZGlzYWJsZV9wbGFuZXMoY3J0Yyk7Cj4gKwkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19kaXNhYmxl KGNydGMpOwo+ICsJCWlmICghY3J0Y19zdGF0ZS0+ZW5hYmxlKQo+ICsJCQlkcm1fcGxhbmVfaGVs cGVyX2Rpc2FibGUoY3J0Yy0+cHJpbWFyeSk7Cj4gIAl9Cj4gIAo+ICAJLyogY3J0Yy0+bW9kZSBp cyBhbHJlYWR5IHVzZWQgYnkgdGhlIC0+bW9kZV9zZXQgY2FsbGJhY2tzLCBoZW5jZSB3ZSBuZWVk Cj4gQEAgLTE0MDY0LDcgKzE0MDAxLDYgQEAgc3RhdGljIHZvaWQgaW50ZWxfaW5pdF9kaXNwbGF5 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAkJCWhhc3dlbGxfY3J0Y19jb21wdXRlX2Nsb2Nr Owo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZW5hYmxlID0gaGFzd2VsbF9jcnRjX2VuYWJs ZTsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2Rpc2FibGUgPSBoYXN3ZWxsX2NydGNfZGlz YWJsZTsKPiAtCQlkZXZfcHJpdi0+ZGlzcGxheS5vZmYgPSBpcm9ubGFrZV9jcnRjX29mZjsKPiAg CQlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfcHJpbWFyeV9wbGFuZSA9Cj4gIAkJCXNreWxha2Vf dXBkYXRlX3ByaW1hcnlfcGxhbmU7Cj4gIAl9IGVsc2UgaWYgKEhBU19EREkoZGV2KSkgewo+IEBA IC0xNDA3NSw3ICsxNDAxMSw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2luaXRfZGlzcGxheShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCQloYXN3ZWxsX2NydGNfY29tcHV0ZV9jbG9jazsKPiAg CQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2VuYWJsZSA9IGhhc3dlbGxfY3J0Y19lbmFibGU7Cj4g IAkJZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19kaXNhYmxlID0gaGFzd2VsbF9jcnRjX2Rpc2FibGU7 Cj4gLQkJZGV2X3ByaXYtPmRpc3BsYXkub2ZmID0gaXJvbmxha2VfY3J0Y19vZmY7Cj4gIAkJZGV2 X3ByaXYtPmRpc3BsYXkudXBkYXRlX3ByaW1hcnlfcGxhbmUgPQo+ICAJCQlpcm9ubGFrZV91cGRh dGVfcHJpbWFyeV9wbGFuZTsKPiAgCX0gZWxzZSBpZiAoSEFTX1BDSF9TUExJVChkZXYpKSB7Cj4g QEAgLTE0MDg2LDcgKzE0MDIxLDYgQEAgc3RhdGljIHZvaWQgaW50ZWxfaW5pdF9kaXNwbGF5KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAkJCWlyb25sYWtlX2NydGNfY29tcHV0ZV9jbG9jazsK PiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2VuYWJsZSA9IGlyb25sYWtlX2NydGNfZW5hYmxl Owo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmNydGNfZGlzYWJsZSA9IGlyb25sYWtlX2NydGNfZGlz YWJsZTsKPiAtCQlkZXZfcHJpdi0+ZGlzcGxheS5vZmYgPSBpcm9ubGFrZV9jcnRjX29mZjsKPiAg CQlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfcHJpbWFyeV9wbGFuZSA9Cj4gIAkJCWlyb25sYWtl X3VwZGF0ZV9wcmltYXJ5X3BsYW5lOwo+ICAJfSBlbHNlIGlmIChJU19WQUxMRVlWSUVXKGRldikp IHsKPiBAQCAtMTQwOTYsNyArMTQwMzAsNiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9pbml0X2Rpc3Bs YXkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5jcnRjX2Nv bXB1dGVfY2xvY2sgPSBpOXh4X2NydGNfY29tcHV0ZV9jbG9jazsKPiAgCQlkZXZfcHJpdi0+ZGlz cGxheS5jcnRjX2VuYWJsZSA9IHZhbGxleXZpZXdfY3J0Y19lbmFibGU7Cj4gIAkJZGV2X3ByaXYt PmRpc3BsYXkuY3J0Y19kaXNhYmxlID0gaTl4eF9jcnRjX2Rpc2FibGU7Cj4gLQkJZGV2X3ByaXYt PmRpc3BsYXkub2ZmID0gaTl4eF9jcnRjX29mZjsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS51cGRh dGVfcHJpbWFyeV9wbGFuZSA9Cj4gIAkJCWk5eHhfdXBkYXRlX3ByaW1hcnlfcGxhbmU7Cj4gIAl9 IGVsc2Ugewo+IEBAIC0xNDEwNiw3ICsxNDAzOSw2IEBAIHN0YXRpYyB2b2lkIGludGVsX2luaXRf ZGlzcGxheShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJCWRldl9wcml2LT5kaXNwbGF5LmNy dGNfY29tcHV0ZV9jbG9jayA9IGk5eHhfY3J0Y19jb21wdXRlX2Nsb2NrOwo+ICAJCWRldl9wcml2 LT5kaXNwbGF5LmNydGNfZW5hYmxlID0gaTl4eF9jcnRjX2VuYWJsZTsKPiAgCQlkZXZfcHJpdi0+ ZGlzcGxheS5jcnRjX2Rpc2FibGUgPSBpOXh4X2NydGNfZGlzYWJsZTsKPiAtCQlkZXZfcHJpdi0+ ZGlzcGxheS5vZmYgPSBpOXh4X2NydGNfb2ZmOwo+ICAJCWRldl9wcml2LT5kaXNwbGF5LnVwZGF0 ZV9wcmltYXJ5X3BsYW5lID0KPiAgCQkJaTl4eF91cGRhdGVfcHJpbWFyeV9wbGFuZTsKPiAgCX0K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IGluZGV4IDI5MjYyMjI4ZjI2NC4uNGM2OTA0MDM5 NDJjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiBAQCAtMTA4Miw3ICsxMDgyLDYg QEAgdm9pZCBhc3NlcnRfc2hhcmVkX2RwbGwoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAo+ICAjZGVmaW5lIGFzc2VydF9zaGFyZWRfZHBsbF9kaXNhYmxlZChkLCBwKSBhc3NlcnRf c2hhcmVkX2RwbGwoZCwgcCwgZmFsc2UpCj4gIHN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbCAqaW50 ZWxfZ2V0X3NoYXJlZF9kcGxsKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAo+ICAJCQkJCQlzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqc3RhdGUpOwo+IC12b2lkIGludGVsX3B1dF9zaGFyZWRfZHBs bChzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0Yyk7Cj4gIAo+ICB2b2lkIHZsdl9mb3JjZV9wbGxfb24o c3RydWN0IGRybV9kZXZpY2UgKmRldiwgZW51bSBwaXBlIHBpcGUsCj4gIAkJICAgICAgY29uc3Qg c3RydWN0IGRwbGwgKmRwbGwpOwo+IC0tIAo+IDIuMS4wCj4gCj4gX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4g SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3 YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=