From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 08/14] drm/i915: Complete crtc hw/uapi split, v3. Date: Thu, 24 Oct 2019 18:21:50 +0300 Message-ID: <20191024152150.GD1208@intel.com> References: <20191024124805.26840-1-maarten.lankhorst@linux.intel.com> <20191024124805.26840-8-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1BF0C6E44D for ; Thu, 24 Oct 2019 15:22:02 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20191024124805.26840-8-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: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBPY3QgMjQsIDIwMTkgYXQgMDI6NDc6NTlQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gTm93IHRoYXQgd2Ugc2VwYXJhdGVkIGV2ZXJ5dGhpbmcgaW50byB1YXBpIGFu ZCBodywgaXQncwo+IHRpbWUgdG8gbWFrZSB0aGUgc3BsaXQgZGVmaW5pdGl2ZS4gUmVtb3ZlIHRo ZSB1bmlvbiBhbmQKPiBtYWtlIGEgY29weSBvZiB0aGUgaHcgc3RhdGUgb24gbW9kZXNldCBhbmQg ZmFzdHNldC4KPiAKPiBDb2xvciBibG9icyBhcmUgY29waWVkIGluIGNydGMgYXRvbWljX2NoZWNr KCksIHJpZ2h0Cj4gYmVmb3JlIGNvbG9yIG1hbmFnZW1lbnQgaXMgY2hlY2tlZC4KPiAKPiBDaGFu Z2VzIHNpbmNlIHYxOgo+IC0gQ29weSBhbGwgYmxvYnMgaW1tZWRpYXRlbHkgYWZ0ZXIgZHJtX2F0 b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldCgpLgo+IC0gQ2xlYXIgY3J0Y19zdGF0ZS0+aHcgb24g ZGlzYWJsZSwgaW5zdGVhZCBvZiB1c2luZyBjbGVhcl9pbnRlbF9jcnRjX3N0YXRlKCkuCj4gQ2hh bmdlcyBzaW5jZSB2MjoKPiAtIFVzZSBpbnRlbF9jcnRjX2ZyZWVfaHdfc3RhdGUgKyBjbGVhciBp biBpbnRlbF9jcnRjX2Rpc2FibGVfbm9hdG9taWMoKS4KPiAtIE1ha2UgYSBpbnRlbF9jcnRjX3By ZXBhcmVfc3RhdGUoKSBmdW5jdGlvbiB0aGF0IGNsZWFycyB0aGUgY3J0Y19zdGF0ZQo+ICAgYW5k IGNvcGllcyBodyBtZW1iZXJzLgo+IC0gUmVtb3ZlIHNldHRpbmcgdWFwaS5hZGp1c3RlZF9tb2Rl LCB3ZSBub3cgaGF2ZSBhIGRpcmVjdCBjYWxsIHRvCj4gICBkcm1fY2FsY190aW1lc3RhbXBpbmdf Y29uc3RhbnRzKCkuCj4gCj4gU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0 ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuYyAgIHwgNDQgKysrKysrKysrKysrKysrCj4gIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYXRvbWljLmggICB8ICAyICsKPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgIHwgNTYgKysrKysrKysrKysr KysrLS0tLQo+ICAuLi4vZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmggICAg fCAgOSArLS0KPiAgNCBmaWxlcyBjaGFuZ2VkLCA5NSBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlv bnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYXRvbWljLmMK PiBpbmRleCA3Y2YxM2I5YzdkMzguLjI2NmQwY2U5ZDAzZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21pYy5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuYwo+IEBAIC0xOTUsNiArMTk1LDE0IEBAIGlu dGVsX2NydGNfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgCj4gIAlf X2RybV9hdG9taWNfaGVscGVyX2NydGNfZHVwbGljYXRlX3N0YXRlKGNydGMsICZjcnRjX3N0YXRl LT51YXBpKTsKPiAgCj4gKwkvKiBjb3B5IGNvbG9yIGJsb2JzICovCj4gKwlpZiAoY3J0Y19zdGF0 ZS0+aHcuZGVnYW1tYV9sdXQpCj4gKwkJZHJtX3Byb3BlcnR5X2Jsb2JfZ2V0KGNydGNfc3RhdGUt Pmh3LmRlZ2FtbWFfbHV0KTsKPiArCWlmIChjcnRjX3N0YXRlLT5ody5jdG0pCj4gKwkJZHJtX3By b3BlcnR5X2Jsb2JfZ2V0KGNydGNfc3RhdGUtPmh3LmN0bSk7Cj4gKwlpZiAoY3J0Y19zdGF0ZS0+ aHcuZ2FtbWFfbHV0KQo+ICsJCWRybV9wcm9wZXJ0eV9ibG9iX2dldChjcnRjX3N0YXRlLT5ody5n YW1tYV9sdXQpOwo+ICsKPiAgCWNydGNfc3RhdGUtPnVwZGF0ZV9waXBlID0gZmFsc2U7Cj4gIAlj cnRjX3N0YXRlLT5kaXNhYmxlX2xwX3dtID0gZmFsc2U7Cj4gIAljcnRjX3N0YXRlLT5kaXNhYmxl X2N4c3IgPSBmYWxzZTsKPiBAQCAtMjA4LDYgKzIxNiw0MSBAQCBpbnRlbF9jcnRjX2R1cGxpY2F0 ZV9zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIAlyZXR1cm4gJmNydGNfc3RhdGUtPnVh cGk7Cj4gIH0KPiAgCj4gK3N0YXRpYyB2b2lkIGludGVsX2NydGNfcHV0X2NvbG9yX2Jsb2JzKHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICt7Cj4gKwlkcm1fcHJvcGVydHlf YmxvYl9wdXQoY3J0Y19zdGF0ZS0+aHcuZGVnYW1tYV9sdXQpOwo+ICsJZHJtX3Byb3BlcnR5X2Js b2JfcHV0KGNydGNfc3RhdGUtPmh3LmdhbW1hX2x1dCk7Cj4gKwlkcm1fcHJvcGVydHlfYmxvYl9w dXQoY3J0Y19zdGF0ZS0+aHcuY3RtKTsKPiArfQo+ICsKPiArdm9pZCBpbnRlbF9jcnRjX2ZyZWVf aHdfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gK3sKPiArCWlu dGVsX2NydGNfcHV0X2NvbG9yX2Jsb2JzKGNydGNfc3RhdGUpOwo+ICt9Cj4gKwo+ICt2b2lkIGlu dGVsX2NydGNfY29weV9jb2xvcl9ibG9icyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19z dGF0ZSkKClRoaXMgaXMgb25seSB1c2VkIGluIGludGVsX2Rpc3BsYXkuYyBzbyBzaG91bGQgcGVy aGFwcyBsaXZlIHRoZXJlPwoKPiArewo+ICsJaW50ZWxfY3J0Y19wdXRfY29sb3JfYmxvYnMoY3J0 Y19zdGF0ZSk7Cj4gKwo+ICsJaWYgKGNydGNfc3RhdGUtPnVhcGkuZGVnYW1tYV9sdXQpCj4gKwkJ Y3J0Y19zdGF0ZS0+aHcuZGVnYW1tYV9sdXQgPQo+ICsJCQlkcm1fcHJvcGVydHlfYmxvYl9nZXQo Y3J0Y19zdGF0ZS0+dWFwaS5kZWdhbW1hX2x1dCk7Cj4gKwllbHNlCj4gKwkJY3J0Y19zdGF0ZS0+ aHcuZGVnYW1tYV9sdXQgPSBOVUxMOwo+ICsKPiArCWlmIChjcnRjX3N0YXRlLT51YXBpLmdhbW1h X2x1dCkKPiArCQljcnRjX3N0YXRlLT5ody5nYW1tYV9sdXQgPQo+ICsJCQlkcm1fcHJvcGVydHlf YmxvYl9nZXQoY3J0Y19zdGF0ZS0+dWFwaS5nYW1tYV9sdXQpOwo+ICsJZWxzZQo+ICsJCWNydGNf c3RhdGUtPmh3LmdhbW1hX2x1dCA9IE5VTEw7Cj4gKwo+ICsJaWYgKGNydGNfc3RhdGUtPnVhcGku Y3RtKQo+ICsJCWNydGNfc3RhdGUtPmh3LmN0bSA9Cj4gKwkJCWRybV9wcm9wZXJ0eV9ibG9iX2dl dChjcnRjX3N0YXRlLT51YXBpLmN0bSk7Cj4gKwllbHNlCj4gKwkJY3J0Y19zdGF0ZS0+aHcuY3Rt ID0gTlVMTDsKPiArfQo+ICsKPiAgLyoqCj4gICAqIGludGVsX2NydGNfZGVzdHJveV9zdGF0ZSAt IGRlc3Ryb3kgY3J0YyBzdGF0ZQo+ICAgKiBAY3J0YzogZHJtIGNydGMKPiBAQCAtMjIzLDYgKzI2 Niw3IEBAIGludGVsX2NydGNfZGVzdHJveV9zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4g IAlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9IHRvX2ludGVsX2NydGNfc3Rh dGUoc3RhdGUpOwo+ICAKPiAgCV9fZHJtX2F0b21pY19oZWxwZXJfY3J0Y19kZXN0cm95X3N0YXRl KCZjcnRjX3N0YXRlLT51YXBpKTsKPiArCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShjcnRjX3N0 YXRlKTsKPiAgCWtmcmVlKGNydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21pYy5oIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuaAo+IGluZGV4IDU4MDY1ZDMxNjFhMy4uNDJiZTkx ZTA3NzJhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf YXRvbWljLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21p Yy5oCj4gQEAgLTM1LDYgKzM1LDggQEAgaW50ZWxfZGlnaXRhbF9jb25uZWN0b3JfZHVwbGljYXRl X3N0YXRlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwo+ICBzdHJ1Y3QgZHJtX2Ny dGNfc3RhdGUgKmludGVsX2NydGNfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 Yyk7Cj4gIHZvaWQgaW50ZWxfY3J0Y19kZXN0cm95X3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKPiAgCQkJICAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUpOwo+ICt2b2lkIGlu dGVsX2NydGNfZnJlZV9od19zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZSk7Cj4gK3ZvaWQgaW50ZWxfY3J0Y19jb3B5X2NvbG9yX2Jsb2JzKHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlKTsKPiAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKmludGVsX2F0 b21pY19zdGF0ZV9hbGxvYyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgdm9pZCBpbnRlbF9h dG9taWNfc3RhdGVfY2xlYXIoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKPiAgCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAx MWRkN2ExODI1NDMuLjJkYmMxZGY5NTA1YSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTcxMTAsNiArNzExMCw4IEBAIHN0YXRpYyB2 b2lkIGludGVsX2NydGNfZGlzYWJsZV9ub2F0b21pYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4g IAljcnRjLT5lbmFibGVkID0gZmFsc2U7Cj4gIAljcnRjLT5zdGF0ZS0+Y29ubmVjdG9yX21hc2sg PSAwOwo+ICAJY3J0Yy0+c3RhdGUtPmVuY29kZXJfbWFzayA9IDA7Cj4gKwlpbnRlbF9jcnRjX2Zy ZWVfaHdfc3RhdGUoY3J0Y19zdGF0ZSk7Cj4gKwltZW1zZXQoJmNydGNfc3RhdGUtPmh3LCAwLCBz aXplb2YoY3J0Y19zdGF0ZS0+aHcpKTsKPiAgCj4gIAlmb3JfZWFjaF9lbmNvZGVyX29uX2NydGMo Y3J0Yy0+ZGV2LCBjcnRjLCBlbmNvZGVyKQo+ICAJCWVuY29kZXItPmJhc2UuY3J0YyA9IE5VTEw7 Cj4gQEAgLTEyNDgyLDIyICsxMjQ4NCw1MCBAQCBzdGF0aWMgYm9vbCBjaGVja19kaWdpdGFsX3Bv cnRfY29uZmxpY3RzKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAJcmV0dXJu IHJldDsKPiAgfQo+ICAKPiArc3RhdGljIHZvaWQKPiAraW50ZWxfY3J0Y19jb3B5X3VhcGlfdG9f aHdfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gK3sKPiArCWNy dGNfc3RhdGUtPmh3LmVuYWJsZSA9IGNydGNfc3RhdGUtPnVhcGkuZW5hYmxlOwo+ICsJY3J0Y19z dGF0ZS0+aHcuYWN0aXZlID0gY3J0Y19zdGF0ZS0+dWFwaS5hY3RpdmU7Cj4gKwljcnRjX3N0YXRl LT5ody5tb2RlID0gY3J0Y19zdGF0ZS0+dWFwaS5tb2RlOwo+ICsJY3J0Y19zdGF0ZS0+aHcuYWRq dXN0ZWRfbW9kZSA9IGNydGNfc3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZTsKPiArCWludGVsX2Ny dGNfY29weV9jb2xvcl9ibG9icyhjcnRjX3N0YXRlKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQg Y29weV9od190b191YXBpX3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQo+ICt7Cj4gKwljcnRjX3N0YXRlLT51YXBpLmVuYWJsZSA9IGNydGNfc3RhdGUtPmh3LmVuYWJs ZTsKPiArCWNydGNfc3RhdGUtPnVhcGkuYWN0aXZlID0gY3J0Y19zdGF0ZS0+aHcuYWN0aXZlOwo+ ICsJY3J0Y19zdGF0ZS0+dWFwaS5tb2RlID0gY3J0Y19zdGF0ZS0+aHcubW9kZTsKPiArCWNydGNf c3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZSA9IGNydGNfc3RhdGUtPmh3LmFkanVzdGVkX21vZGU7 CgpXaHkgYXJlIHdlIG5vdCBjb3B5aW5nIHRoZSBjb2xvciBibG9icz8KCj4gK30KPiArCj4gIHN0 YXRpYyBpbnQKPiAtY2xlYXJfaW50ZWxfY3J0Y19zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkKPiAraW50ZWxfY3J0Y19wcmVwYXJlX3N0YXRlKHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpjcnRjX3N0YXRlKQoKSG1tLiBJIHdhcyBob3Bpbmcgd2UgY291bGQgbWFrZSB0 aGlzIGV2ZW4gc2ltcGxlciwgYnV0IG1heWJlIEknbSBhIGJpdApuYWl2ZS4gSSBndWVzcyB3ZSBy ZWFsbHkgZG8gbmVlZCB0byBjb25zaWRlciBuZWVkc19tb2Rlc2V0KCkgc28gYXMgdG8Kbm90IGNs b2JiZXIgdGhlIGFscmVhZHkgY29tcHV0ZWQgaHcgc3RhdGUgd2hlbiB3ZSdyZSBub3QgZ29pbmcg dG8gdGFrZQp0aGUgZnVsbCAuY29tcHV0ZV9jb25maWcoKSBwYXRoLgoKPiAgewo+ICAJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0KPiAgCQl0b19pOTE1KGNydGNfc3RhdGUtPnVh cGkuY3J0Yy0+ZGV2KTsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpzYXZlZF9zdGF0ZTsK PiAgCj4gKwlpZiAoIW5lZWRzX21vZGVzZXQoY3J0Y19zdGF0ZSkpIHsKPiArCQkvKiBPbmx5IG5l ZWQgdG8gdXBkYXRlIGNydGNfc3RhdGUtPmh3IGNvbG9yIGJsb2JzICovCgpUaGF0IGNvbW1lbnQg aXMgbGlrZWx5IHRvIGdldCBvdXQgb2YgZGF0ZS4gTm90IHN1cmUgaG93IHRvIHdvcmQgaXQgaW4g YQpuaWNlIHdheSB0aG91Z2guIEVzc2VudGlhbGx5IHdlIGp1c3Qgd2FudCB0byBjb3B5IHRoZSBw YXJ0IG9mIHRoZSBzdGF0ZQp0aGF0IGRvZXNuJ3QgY2xvYmJlciBhbnl0aGluZyBzZXQgdXAgYnkg LmNvbXB1dGVfY29uZmlnKCkgJiBjby4KCkl0IHdvdWxkIGJlIG5pY2UgaWYgd2UgaGFkIHRoZSBz YW1lIGxldmVsIG9mIGFic3RyYWN0aW9uIGZvciB0aGlzIGNhc2UKYXMgZm9yIHRoZSBmdWxsIG1v ZGVzZXQgY2FzZS4gRWcuIGludGVsX2NydGNfY29weV9od19zdGF0ZV9ub25fbW9kZXNldCgpCm9y IHNvbWV0aGluZy4gQSBiaXQgdWdseSB0aGF0IG5hbWUgdGhvdWdoLiBNaWdodCBoYXZlIHRoaW5r IG9mIHNvbWV0aGluZwpiZXR0ZXIuCgpBbm90aGVyIHRoaW5nIHRoYXQncyBhIGJpdCBjb25mdXNp bmcgaXMgdGhhdCB3ZSBuZWVkIHRvIGRvIHRoZQppbnRlbF9jcnRjX2ZyZWVfaHdfc3RhdGUoKSBm b3IgdGhlIGZ1bGwgbW9kZXNldCBwYXRoLCBidXQgd2UgZG9uJ3QKbmVlZCBpdCBmb3IgdGhlIG5v bi1tb2Rlc2V0IHBhdGguIFdvdWxkIGJlIG5pY2UgaXQgdGhlIHR3byBwYXRocwpiZWhhdmVkIG1v cmUgdW5pZm9ybWx5LgoKPiArCQlpbnRlbF9jcnRjX2NvcHlfY29sb3JfYmxvYnMoY3J0Y19zdGF0 ZSk7Cj4gKwkJcmV0dXJuIDA7Cj4gKwl9Cj4gKwo+ICAJc2F2ZWRfc3RhdGUgPSBremFsbG9jKHNp emVvZigqc2F2ZWRfc3RhdGUpLCBHRlBfS0VSTkVMKTsKPiAgCWlmICghc2F2ZWRfc3RhdGUpCj4g IAkJcmV0dXJuIC1FTk9NRU07Cj4gIAo+ICsJLyogZnJlZSB0aGUgb2xkIGNydGNfc3RhdGUtPmh3 IG1lbWJlcnMgKi8KPiArCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShjcnRjX3N0YXRlKTsKPiAr Cj4gIAkvKiBGSVhNRTogYmVmb3JlIHRoZSBzd2l0Y2ggdG8gYXRvbWljIHN0YXJ0ZWQsIGEgbmV3 IHBpcGVfY29uZmlnIHdhcwo+ICAJICoga3phbGxvYydkLiBDb2RlIHRoYXQgZGVwZW5kcyBvbiBh bnkgZmllbGQgYmVpbmcgemVybyBzaG91bGQgYmUKPiAgCSAqIGZpeGVkLCBzbyB0aGF0IHRoZSBj cnRjX3N0YXRlIGNhbiBiZSBzYWZlbHkgZHVwbGljYXRlZC4gRm9yIG5vdywKPiAgCSAqIG9ubHkg ZmllbGRzIHRoYXQgYXJlIGtub3cgdG8gbm90IGNhdXNlIHByb2JsZW1zIGFyZSBwcmVzZXJ2ZWQu ICovCj4gIAo+ICsJc2F2ZWRfc3RhdGUtPnVhcGkgPSBjcnRjX3N0YXRlLT51YXBpOwo+ICAJc2F2 ZWRfc3RhdGUtPnNjYWxlcl9zdGF0ZSA9IGNydGNfc3RhdGUtPnNjYWxlcl9zdGF0ZTsKPiAgCXNh dmVkX3N0YXRlLT5zaGFyZWRfZHBsbCA9IGNydGNfc3RhdGUtPnNoYXJlZF9kcGxsOwo+ICAJc2F2 ZWRfc3RhdGUtPmRwbGxfaHdfc3RhdGUgPSBjcnRjX3N0YXRlLT5kcGxsX2h3X3N0YXRlOwo+IEBA IC0xMjUxNSwxNCArMTI1NDUsMTEgQEAgY2xlYXJfaW50ZWxfY3J0Y19zdGF0ZShzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAgCQlzYXZlZF9zdGF0ZS0+c3luY19tb2RlX3Ns YXZlc19tYXNrID0KPiAgCQkJY3J0Y19zdGF0ZS0+c3luY19tb2RlX3NsYXZlc19tYXNrOwo+ICAK PiAtCS8qIEtlZXAgYmFzZSBkcm1fY3J0Y19zdGF0ZSBpbnRhY3QsIG9ubHkgY2xlYXIgb3VyIGV4 dGVuZGVkIHN0cnVjdCAqLwo+IC0JQlVJTERfQlVHX09OKG9mZnNldG9mKHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlLCBiYXNlKSk7Cj4gLQlCVUlMRF9CVUdfT04ob2Zmc2V0b2Yoc3RydWN0IGludGVs X2NydGNfc3RhdGUsIHVhcGkpKTsKPiAtCUJVSUxEX0JVR19PTihvZmZzZXRvZihzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSwgaHcpKTsKPiAtCW1lbWNweSgmY3J0Y19zdGF0ZS0+dWFwaSArIDEsICZz YXZlZF9zdGF0ZS0+dWFwaSArIDEsCj4gLQkgICAgICAgc2l6ZW9mKCpjcnRjX3N0YXRlKSAtIHNp emVvZihjcnRjX3N0YXRlLT51YXBpKSk7Cj4gLQo+ICsJbWVtY3B5KGNydGNfc3RhdGUsIHNhdmVk X3N0YXRlLCBzaXplb2YoKmNydGNfc3RhdGUpKTsKPiAgCWtmcmVlKHNhdmVkX3N0YXRlKTsKPiAr Cj4gKwlpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZShjcnRjX3N0YXRlKTsKPiArCj4g IAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAtMTI1MzgsMTAgKzEyNTY1LDYgQEAgaW50ZWxfbW9k ZXNldF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCj4g IAlpbnQgaTsKPiAgCWJvb2wgcmV0cnkgPSB0cnVlOwo+ICAKPiAtCXJldCA9IGNsZWFyX2ludGVs X2NydGNfc3RhdGUocGlwZV9jb25maWcpOwo+IC0JaWYgKHJldCkKPiAtCQlyZXR1cm4gcmV0Owo+ IC0KPiAgCXBpcGVfY29uZmlnLT5jcHVfdHJhbnNjb2RlciA9Cj4gIAkJKGVudW0gdHJhbnNjb2Rl cikgdG9faW50ZWxfY3J0YyhjcnRjKS0+cGlwZTsKPiAgCj4gQEAgLTEzMzYxLDYgKzEzMzg0LDgg QEAgdmVyaWZ5X2NydGNfc3RhdGUoc3RydWN0IGludGVsX2NydGMgKmNydGMsCj4gIAo+ICAJc3Rh dGUgPSBvbGRfY3J0Y19zdGF0ZS0+dWFwaS5zdGF0ZTsKPiAgCV9fZHJtX2F0b21pY19oZWxwZXJf Y3J0Y19kZXN0cm95X3N0YXRlKCZvbGRfY3J0Y19zdGF0ZS0+dWFwaSk7Cj4gKwlpbnRlbF9jcnRj X2ZyZWVfaHdfc3RhdGUob2xkX2NydGNfc3RhdGUpOwo+ICsKPiAgCXBpcGVfY29uZmlnID0gb2xk X2NydGNfc3RhdGU7Cj4gIAltZW1zZXQocGlwZV9jb25maWcsIDAsIHNpemVvZigqcGlwZV9jb25m aWcpKTsKPiAgCXBpcGVfY29uZmlnLT51YXBpLmNydGMgPSAmY3J0Yy0+YmFzZTsKPiBAQCAtMTM4 MjMsNiArMTM4NDgsMTAgQEAgc3RhdGljIGludCBpbnRlbF9hdG9taWNfY2hlY2soc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKPiAgCj4gIAlmb3JfZWFjaF9vbGRuZXdfaW50ZWxfY3J0Y19pbl9zdGF0 ZShzdGF0ZSwgY3J0Yywgb2xkX2NydGNfc3RhdGUsCj4gIAkJCQkJICAgIG5ld19jcnRjX3N0YXRl LCBpKSB7Cj4gKwkJcmV0ID0gaW50ZWxfY3J0Y19wcmVwYXJlX3N0YXRlKG5ld19jcnRjX3N0YXRl KTsKPiArCQlpZiAocmV0KQo+ICsJCQlyZXR1cm4gcmV0OwoKSSBoYXZlIGEgZmVlbGluZyB0aGlz IHNob3VsZCBiZSBpdHMgb3duIGxvb3AgaW4gY2FzZSB3ZSBuZWVkCnRvIGluc2VydCBnbG9iYWwg c3R1ZmYgYWZ0ZXIgdGhpcy4KCkZvciBleGFtcGxlLCBJIHRoaW5rIHRoZSBwb3J0IHN5bmMgc3R1 ZmYgc2hvdWxkIGJlIHRoZXJlIGJ1dApJIGNhbid0IHNlZSBpdCBub3cuIEFoLCBmb3Igc29tZSBy ZWFzb24gaXQncyBidXJpZWQgZGVlcCBpbnNpZGUKaW50ZWxfbW9kZXNldF9waXBlX2NvbmZpZygp IHdoaWNoIHNlZW1zIHdyb25nLiBJZiBhbnkgKG9yIGF0CmxlYXN0IHRoZSBtYXN0ZXIpIG9mIHRo ZSBnZW5sb2NrZWQgcGlwZXMgZG9lcyBhIGZ1bGwgbW9kZXNldAp3ZSBuZWVkIHRvIGRvIGEgZnVs bCBtb2Rlc2V0IG9uIGFsbCBvZiB0aGVtLCB3aGljaCBzaG91bGQgYWxzbwptZWFuIGEgZnVsbCAu Y29tcHV0ZV9jb25maWcoKSBvbiBldmVyeXRoaW5nLgoKSG1tLiBBbmQgaWYgd2UgZG8gdGhhdCB0 aGVuIGNvbWJpbmluZyB0aGUgdWFwaS0+aHcgY29weSBhbmQKY2xlYXJfaW50ZWxfY3J0Y19zdGF0 ZSgpIGxpa2UgdGhpcyBpcyBub3QgZ29pbmcgdG8gd29yay4KCj4gKwo+ICAJCWlmICghbmVlZHNf bW9kZXNldChuZXdfY3J0Y19zdGF0ZSkpCj4gIAkJCWNvbnRpbnVlOwo+ICAKPiBAQCAtMTcwOTks NiArMTcxMjgsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tb2Rlc2V0X3JlYWRvdXRfaHdfc3RhdGUo c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQkJdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5i YXNlLnN0YXRlKTsKPiAgCj4gIAkJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX2Rlc3Ryb3lfc3Rh dGUoJmNydGNfc3RhdGUtPnVhcGkpOwo+ICsJCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShjcnRj X3N0YXRlKTsKPiAgCQltZW1zZXQoY3J0Y19zdGF0ZSwgMCwgc2l6ZW9mKCpjcnRjX3N0YXRlKSk7 Cj4gIAkJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX3Jlc2V0KCZjcnRjLT5iYXNlLCAmY3J0Y19z dGF0ZS0+dWFwaSk7Cj4gIAo+IEBAIC0xNzIyNyw2ICsxNzI1Nyw3IEBAIHN0YXRpYyB2b2lkIGlu dGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJ CQkgKiBzZXQgYSBmbGFnIHRvIGluZGljYXRlIHRoYXQgYSBmdWxsIHJlY2FsY3VsYXRpb24gaXMK PiAgCQkJICogbmVlZGVkIG9uIHRoZSBuZXh0IGNvbW1pdC4KPiAgCQkJICovCj4gKwkJCWNydGNf c3RhdGUtPmh3Lm1vZGUgPSBjcnRjLT5iYXNlLm1vZGU7Cj4gIAkJCWNydGNfc3RhdGUtPmh3Lm1v ZGUucHJpdmF0ZV9mbGFncyA9IEk5MTVfTU9ERV9GTEFHX0lOSEVSSVRFRDsKPiAgCj4gIAkJCWlu dGVsX2NydGNfY29tcHV0ZV9waXhlbF9yYXRlKGNydGNfc3RhdGUpOwo+IEBAIC0xNzI1Nyw2ICsx NzI4OCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAKPiAgCQlpbnRlbF9id19jcnRjX3VwZGF0ZShid19zdGF0 ZSwgY3J0Y19zdGF0ZSk7Cj4gIAo+ICsJCWNvcHlfaHdfdG9fdWFwaV9zdGF0ZShjcnRjX3N0YXRl KTsKPiAgCQlpbnRlbF9waXBlX2NvbmZpZ19zYW5pdHlfY2hlY2soZGV2X3ByaXYsIGNydGNfc3Rh dGUpOwo+ICAJfQo+ICB9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZGlzcGxheV90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5X3R5cGVzLmgKPiBpbmRleCA0Njk3ZjcxOWIzYTguLjE3YzllYzMwMGYxOCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlf dHlwZXMuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eV90eXBlcy5oCj4gQEAgLTc0OSw4ICs3NDksNiBAQCBlbnVtIGludGVsX291dHB1dF9mb3JtYXQg ewo+ICB9Owo+ICAKPiAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgewo+IC0JdW5pb24gewo+IC0J c3RydWN0IGRybV9jcnRjX3N0YXRlIGJhc2U7Cj4gIAkvKgo+ICAJICogdWFwaSAoZHJtKSBzdGF0 ZS4gVGhpcyBpcyB0aGUgc29mdHdhcmUgc3RhdGUgc2hvd24gdG8gdXNlcnNwYWNlLgo+ICAJICog SW4gcGFydGljdWxhciwgdGhlIGZvbGxvd2luZyBtZW1iZXJzIGFyZSB1c2VkIGZvciBib29ra2Vl cGluZzoKPiBAQCAtNzczLDggKzc3MSwxMSBAQCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSB7Cj4g IAkgKgo+ICAJICogRHVyaW5nIGluaXRpYWwgaHcgcmVhZG91dCwgdGhleSBuZWVkIHRvIGJlIGNv cGllZCB0byB1YXBpLgo+ICAJICovCj4gLQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgaHc7Cj4gLQl9 Owo+ICsJc3RydWN0IHsKPiArCQlib29sIGFjdGl2ZSwgZW5hYmxlOwo+ICsJCXN0cnVjdCBkcm1f cHJvcGVydHlfYmxvYiAqZGVnYW1tYV9sdXQsICpnYW1tYV9sdXQsICpjdG07Cj4gKwkJc3RydWN0 IGRybV9kaXNwbGF5X21vZGUgbW9kZSwgYWRqdXN0ZWRfbW9kZTsKPiArCX0gaHc7Cj4gIAo+ICAJ LyoqCj4gIAkgKiBxdWlya3MgLSBiaXRmaWVsZCB3aXRoIGh3IHN0YXRlIHJlYWRvdXQgcXVpcmtz Cj4gLS0gCj4gMi4yMy4wCj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F0852CA9EBB for ; Thu, 24 Oct 2019 15:22:03 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id CC1472064A for ; Thu, 24 Oct 2019 15:22:03 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org CC1472064A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 164006E44C; Thu, 24 Oct 2019 15:22:03 +0000 (UTC) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1BF0C6E44D for ; Thu, 24 Oct 2019 15:22:02 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Oct 2019 08:21:54 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,225,1569308400"; d="scan'208";a="228552202" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by fmsmga002.fm.intel.com with SMTP; 24 Oct 2019 08:21:51 -0700 Received: by stinkbox (sSMTP sendmail emulation); Thu, 24 Oct 2019 18:21:50 +0300 Date: Thu, 24 Oct 2019 18:21:50 +0300 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= To: Maarten Lankhorst Message-ID: <20191024152150.GD1208@intel.com> References: <20191024124805.26840-1-maarten.lankhorst@linux.intel.com> <20191024124805.26840-8-maarten.lankhorst@linux.intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191024124805.26840-8-maarten.lankhorst@linux.intel.com> User-Agent: Mutt/1.10.1 (2018-07-13) Subject: Re: [Intel-gfx] [PATCH 08/14] drm/i915: Complete crtc hw/uapi split, v3. X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: intel-gfx@lists.freedesktop.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191024152150.Oi9wDIiXmTrxn5e36sXw3QaA8J2r21XGQ4NpqByJqX8@z> T24gVGh1LCBPY3QgMjQsIDIwMTkgYXQgMDI6NDc6NTlQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gTm93IHRoYXQgd2Ugc2VwYXJhdGVkIGV2ZXJ5dGhpbmcgaW50byB1YXBpIGFu ZCBodywgaXQncwo+IHRpbWUgdG8gbWFrZSB0aGUgc3BsaXQgZGVmaW5pdGl2ZS4gUmVtb3ZlIHRo ZSB1bmlvbiBhbmQKPiBtYWtlIGEgY29weSBvZiB0aGUgaHcgc3RhdGUgb24gbW9kZXNldCBhbmQg ZmFzdHNldC4KPiAKPiBDb2xvciBibG9icyBhcmUgY29waWVkIGluIGNydGMgYXRvbWljX2NoZWNr KCksIHJpZ2h0Cj4gYmVmb3JlIGNvbG9yIG1hbmFnZW1lbnQgaXMgY2hlY2tlZC4KPiAKPiBDaGFu Z2VzIHNpbmNlIHYxOgo+IC0gQ29weSBhbGwgYmxvYnMgaW1tZWRpYXRlbHkgYWZ0ZXIgZHJtX2F0 b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldCgpLgo+IC0gQ2xlYXIgY3J0Y19zdGF0ZS0+aHcgb24g ZGlzYWJsZSwgaW5zdGVhZCBvZiB1c2luZyBjbGVhcl9pbnRlbF9jcnRjX3N0YXRlKCkuCj4gQ2hh bmdlcyBzaW5jZSB2MjoKPiAtIFVzZSBpbnRlbF9jcnRjX2ZyZWVfaHdfc3RhdGUgKyBjbGVhciBp biBpbnRlbF9jcnRjX2Rpc2FibGVfbm9hdG9taWMoKS4KPiAtIE1ha2UgYSBpbnRlbF9jcnRjX3By ZXBhcmVfc3RhdGUoKSBmdW5jdGlvbiB0aGF0IGNsZWFycyB0aGUgY3J0Y19zdGF0ZQo+ICAgYW5k IGNvcGllcyBodyBtZW1iZXJzLgo+IC0gUmVtb3ZlIHNldHRpbmcgdWFwaS5hZGp1c3RlZF9tb2Rl LCB3ZSBub3cgaGF2ZSBhIGRpcmVjdCBjYWxsIHRvCj4gICBkcm1fY2FsY190aW1lc3RhbXBpbmdf Y29uc3RhbnRzKCkuCj4gCj4gU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0 ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuYyAgIHwgNDQgKysrKysrKysrKysrKysrCj4gIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYXRvbWljLmggICB8ICAyICsKPiAgZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgIHwgNTYgKysrKysrKysrKysr KysrLS0tLQo+ICAuLi4vZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmggICAg fCAgOSArLS0KPiAgNCBmaWxlcyBjaGFuZ2VkLCA5NSBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlv bnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRl bF9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfYXRvbWljLmMK PiBpbmRleCA3Y2YxM2I5YzdkMzguLjI2NmQwY2U5ZDAzZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21pYy5jCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuYwo+IEBAIC0xOTUsNiArMTk1LDE0IEBAIGlu dGVsX2NydGNfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKPiAgCj4gIAlf X2RybV9hdG9taWNfaGVscGVyX2NydGNfZHVwbGljYXRlX3N0YXRlKGNydGMsICZjcnRjX3N0YXRl LT51YXBpKTsKPiAgCj4gKwkvKiBjb3B5IGNvbG9yIGJsb2JzICovCj4gKwlpZiAoY3J0Y19zdGF0 ZS0+aHcuZGVnYW1tYV9sdXQpCj4gKwkJZHJtX3Byb3BlcnR5X2Jsb2JfZ2V0KGNydGNfc3RhdGUt Pmh3LmRlZ2FtbWFfbHV0KTsKPiArCWlmIChjcnRjX3N0YXRlLT5ody5jdG0pCj4gKwkJZHJtX3By b3BlcnR5X2Jsb2JfZ2V0KGNydGNfc3RhdGUtPmh3LmN0bSk7Cj4gKwlpZiAoY3J0Y19zdGF0ZS0+ aHcuZ2FtbWFfbHV0KQo+ICsJCWRybV9wcm9wZXJ0eV9ibG9iX2dldChjcnRjX3N0YXRlLT5ody5n YW1tYV9sdXQpOwo+ICsKPiAgCWNydGNfc3RhdGUtPnVwZGF0ZV9waXBlID0gZmFsc2U7Cj4gIAlj cnRjX3N0YXRlLT5kaXNhYmxlX2xwX3dtID0gZmFsc2U7Cj4gIAljcnRjX3N0YXRlLT5kaXNhYmxl X2N4c3IgPSBmYWxzZTsKPiBAQCAtMjA4LDYgKzIxNiw0MSBAQCBpbnRlbF9jcnRjX2R1cGxpY2F0 ZV9zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCj4gIAlyZXR1cm4gJmNydGNfc3RhdGUtPnVh cGk7Cj4gIH0KPiAgCj4gK3N0YXRpYyB2b2lkIGludGVsX2NydGNfcHV0X2NvbG9yX2Jsb2JzKHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQo+ICt7Cj4gKwlkcm1fcHJvcGVydHlf YmxvYl9wdXQoY3J0Y19zdGF0ZS0+aHcuZGVnYW1tYV9sdXQpOwo+ICsJZHJtX3Byb3BlcnR5X2Js b2JfcHV0KGNydGNfc3RhdGUtPmh3LmdhbW1hX2x1dCk7Cj4gKwlkcm1fcHJvcGVydHlfYmxvYl9w dXQoY3J0Y19zdGF0ZS0+aHcuY3RtKTsKPiArfQo+ICsKPiArdm9pZCBpbnRlbF9jcnRjX2ZyZWVf aHdfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gK3sKPiArCWlu dGVsX2NydGNfcHV0X2NvbG9yX2Jsb2JzKGNydGNfc3RhdGUpOwo+ICt9Cj4gKwo+ICt2b2lkIGlu dGVsX2NydGNfY29weV9jb2xvcl9ibG9icyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19z dGF0ZSkKClRoaXMgaXMgb25seSB1c2VkIGluIGludGVsX2Rpc3BsYXkuYyBzbyBzaG91bGQgcGVy aGFwcyBsaXZlIHRoZXJlPwoKPiArewo+ICsJaW50ZWxfY3J0Y19wdXRfY29sb3JfYmxvYnMoY3J0 Y19zdGF0ZSk7Cj4gKwo+ICsJaWYgKGNydGNfc3RhdGUtPnVhcGkuZGVnYW1tYV9sdXQpCj4gKwkJ Y3J0Y19zdGF0ZS0+aHcuZGVnYW1tYV9sdXQgPQo+ICsJCQlkcm1fcHJvcGVydHlfYmxvYl9nZXQo Y3J0Y19zdGF0ZS0+dWFwaS5kZWdhbW1hX2x1dCk7Cj4gKwllbHNlCj4gKwkJY3J0Y19zdGF0ZS0+ aHcuZGVnYW1tYV9sdXQgPSBOVUxMOwo+ICsKPiArCWlmIChjcnRjX3N0YXRlLT51YXBpLmdhbW1h X2x1dCkKPiArCQljcnRjX3N0YXRlLT5ody5nYW1tYV9sdXQgPQo+ICsJCQlkcm1fcHJvcGVydHlf YmxvYl9nZXQoY3J0Y19zdGF0ZS0+dWFwaS5nYW1tYV9sdXQpOwo+ICsJZWxzZQo+ICsJCWNydGNf c3RhdGUtPmh3LmdhbW1hX2x1dCA9IE5VTEw7Cj4gKwo+ICsJaWYgKGNydGNfc3RhdGUtPnVhcGku Y3RtKQo+ICsJCWNydGNfc3RhdGUtPmh3LmN0bSA9Cj4gKwkJCWRybV9wcm9wZXJ0eV9ibG9iX2dl dChjcnRjX3N0YXRlLT51YXBpLmN0bSk7Cj4gKwllbHNlCj4gKwkJY3J0Y19zdGF0ZS0+aHcuY3Rt ID0gTlVMTDsKPiArfQo+ICsKPiAgLyoqCj4gICAqIGludGVsX2NydGNfZGVzdHJveV9zdGF0ZSAt IGRlc3Ryb3kgY3J0YyBzdGF0ZQo+ICAgKiBAY3J0YzogZHJtIGNydGMKPiBAQCAtMjIzLDYgKzI2 Niw3IEBAIGludGVsX2NydGNfZGVzdHJveV9zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4g IAlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9IHRvX2ludGVsX2NydGNfc3Rh dGUoc3RhdGUpOwo+ICAKPiAgCV9fZHJtX2F0b21pY19oZWxwZXJfY3J0Y19kZXN0cm95X3N0YXRl KCZjcnRjX3N0YXRlLT51YXBpKTsKPiArCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShjcnRjX3N0 YXRlKTsKPiAgCWtmcmVlKGNydGNfc3RhdGUpOwo+ICB9Cj4gIAo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21pYy5oIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9hdG9taWMuaAo+IGluZGV4IDU4MDY1ZDMxNjFhMy4uNDJiZTkx ZTA3NzJhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf YXRvbWljLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2F0b21p Yy5oCj4gQEAgLTM1LDYgKzM1LDggQEAgaW50ZWxfZGlnaXRhbF9jb25uZWN0b3JfZHVwbGljYXRl X3N0YXRlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwo+ICBzdHJ1Y3QgZHJtX2Ny dGNfc3RhdGUgKmludGVsX2NydGNfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 Yyk7Cj4gIHZvaWQgaW50ZWxfY3J0Y19kZXN0cm95X3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKPiAgCQkJICAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqc3RhdGUpOwo+ICt2b2lkIGlu dGVsX2NydGNfZnJlZV9od19zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZSk7Cj4gK3ZvaWQgaW50ZWxfY3J0Y19jb3B5X2NvbG9yX2Jsb2JzKHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlKTsKPiAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKmludGVsX2F0 b21pY19zdGF0ZV9hbGxvYyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiAgdm9pZCBpbnRlbF9h dG9taWNfc3RhdGVfY2xlYXIoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKPiAgCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAx MWRkN2ExODI1NDMuLjJkYmMxZGY5NTA1YSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTcxMTAsNiArNzExMCw4IEBAIHN0YXRpYyB2 b2lkIGludGVsX2NydGNfZGlzYWJsZV9ub2F0b21pYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4g IAljcnRjLT5lbmFibGVkID0gZmFsc2U7Cj4gIAljcnRjLT5zdGF0ZS0+Y29ubmVjdG9yX21hc2sg PSAwOwo+ICAJY3J0Yy0+c3RhdGUtPmVuY29kZXJfbWFzayA9IDA7Cj4gKwlpbnRlbF9jcnRjX2Zy ZWVfaHdfc3RhdGUoY3J0Y19zdGF0ZSk7Cj4gKwltZW1zZXQoJmNydGNfc3RhdGUtPmh3LCAwLCBz aXplb2YoY3J0Y19zdGF0ZS0+aHcpKTsKPiAgCj4gIAlmb3JfZWFjaF9lbmNvZGVyX29uX2NydGMo Y3J0Yy0+ZGV2LCBjcnRjLCBlbmNvZGVyKQo+ICAJCWVuY29kZXItPmJhc2UuY3J0YyA9IE5VTEw7 Cj4gQEAgLTEyNDgyLDIyICsxMjQ4NCw1MCBAQCBzdGF0aWMgYm9vbCBjaGVja19kaWdpdGFsX3Bv cnRfY29uZmxpY3RzKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAJcmV0dXJu IHJldDsKPiAgfQo+ICAKPiArc3RhdGljIHZvaWQKPiAraW50ZWxfY3J0Y19jb3B5X3VhcGlfdG9f aHdfc3RhdGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gK3sKPiArCWNy dGNfc3RhdGUtPmh3LmVuYWJsZSA9IGNydGNfc3RhdGUtPnVhcGkuZW5hYmxlOwo+ICsJY3J0Y19z dGF0ZS0+aHcuYWN0aXZlID0gY3J0Y19zdGF0ZS0+dWFwaS5hY3RpdmU7Cj4gKwljcnRjX3N0YXRl LT5ody5tb2RlID0gY3J0Y19zdGF0ZS0+dWFwaS5tb2RlOwo+ICsJY3J0Y19zdGF0ZS0+aHcuYWRq dXN0ZWRfbW9kZSA9IGNydGNfc3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZTsKPiArCWludGVsX2Ny dGNfY29weV9jb2xvcl9ibG9icyhjcnRjX3N0YXRlKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQg Y29weV9od190b191YXBpX3N0YXRlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQo+ICt7Cj4gKwljcnRjX3N0YXRlLT51YXBpLmVuYWJsZSA9IGNydGNfc3RhdGUtPmh3LmVuYWJs ZTsKPiArCWNydGNfc3RhdGUtPnVhcGkuYWN0aXZlID0gY3J0Y19zdGF0ZS0+aHcuYWN0aXZlOwo+ ICsJY3J0Y19zdGF0ZS0+dWFwaS5tb2RlID0gY3J0Y19zdGF0ZS0+aHcubW9kZTsKPiArCWNydGNf c3RhdGUtPnVhcGkuYWRqdXN0ZWRfbW9kZSA9IGNydGNfc3RhdGUtPmh3LmFkanVzdGVkX21vZGU7 CgpXaHkgYXJlIHdlIG5vdCBjb3B5aW5nIHRoZSBjb2xvciBibG9icz8KCj4gK30KPiArCj4gIHN0 YXRpYyBpbnQKPiAtY2xlYXJfaW50ZWxfY3J0Y19zdGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSkKPiAraW50ZWxfY3J0Y19wcmVwYXJlX3N0YXRlKHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpjcnRjX3N0YXRlKQoKSG1tLiBJIHdhcyBob3Bpbmcgd2UgY291bGQgbWFrZSB0 aGlzIGV2ZW4gc2ltcGxlciwgYnV0IG1heWJlIEknbSBhIGJpdApuYWl2ZS4gSSBndWVzcyB3ZSBy ZWFsbHkgZG8gbmVlZCB0byBjb25zaWRlciBuZWVkc19tb2Rlc2V0KCkgc28gYXMgdG8Kbm90IGNs b2JiZXIgdGhlIGFscmVhZHkgY29tcHV0ZWQgaHcgc3RhdGUgd2hlbiB3ZSdyZSBub3QgZ29pbmcg dG8gdGFrZQp0aGUgZnVsbCAuY29tcHV0ZV9jb25maWcoKSBwYXRoLgoKPiAgewo+ICAJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0KPiAgCQl0b19pOTE1KGNydGNfc3RhdGUtPnVh cGkuY3J0Yy0+ZGV2KTsKPiAgCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpzYXZlZF9zdGF0ZTsK PiAgCj4gKwlpZiAoIW5lZWRzX21vZGVzZXQoY3J0Y19zdGF0ZSkpIHsKPiArCQkvKiBPbmx5IG5l ZWQgdG8gdXBkYXRlIGNydGNfc3RhdGUtPmh3IGNvbG9yIGJsb2JzICovCgpUaGF0IGNvbW1lbnQg aXMgbGlrZWx5IHRvIGdldCBvdXQgb2YgZGF0ZS4gTm90IHN1cmUgaG93IHRvIHdvcmQgaXQgaW4g YQpuaWNlIHdheSB0aG91Z2guIEVzc2VudGlhbGx5IHdlIGp1c3Qgd2FudCB0byBjb3B5IHRoZSBw YXJ0IG9mIHRoZSBzdGF0ZQp0aGF0IGRvZXNuJ3QgY2xvYmJlciBhbnl0aGluZyBzZXQgdXAgYnkg LmNvbXB1dGVfY29uZmlnKCkgJiBjby4KCkl0IHdvdWxkIGJlIG5pY2UgaWYgd2UgaGFkIHRoZSBz YW1lIGxldmVsIG9mIGFic3RyYWN0aW9uIGZvciB0aGlzIGNhc2UKYXMgZm9yIHRoZSBmdWxsIG1v ZGVzZXQgY2FzZS4gRWcuIGludGVsX2NydGNfY29weV9od19zdGF0ZV9ub25fbW9kZXNldCgpCm9y IHNvbWV0aGluZy4gQSBiaXQgdWdseSB0aGF0IG5hbWUgdGhvdWdoLiBNaWdodCBoYXZlIHRoaW5r IG9mIHNvbWV0aGluZwpiZXR0ZXIuCgpBbm90aGVyIHRoaW5nIHRoYXQncyBhIGJpdCBjb25mdXNp bmcgaXMgdGhhdCB3ZSBuZWVkIHRvIGRvIHRoZQppbnRlbF9jcnRjX2ZyZWVfaHdfc3RhdGUoKSBm b3IgdGhlIGZ1bGwgbW9kZXNldCBwYXRoLCBidXQgd2UgZG9uJ3QKbmVlZCBpdCBmb3IgdGhlIG5v bi1tb2Rlc2V0IHBhdGguIFdvdWxkIGJlIG5pY2UgaXQgdGhlIHR3byBwYXRocwpiZWhhdmVkIG1v cmUgdW5pZm9ybWx5LgoKPiArCQlpbnRlbF9jcnRjX2NvcHlfY29sb3JfYmxvYnMoY3J0Y19zdGF0 ZSk7Cj4gKwkJcmV0dXJuIDA7Cj4gKwl9Cj4gKwo+ICAJc2F2ZWRfc3RhdGUgPSBremFsbG9jKHNp emVvZigqc2F2ZWRfc3RhdGUpLCBHRlBfS0VSTkVMKTsKPiAgCWlmICghc2F2ZWRfc3RhdGUpCj4g IAkJcmV0dXJuIC1FTk9NRU07Cj4gIAo+ICsJLyogZnJlZSB0aGUgb2xkIGNydGNfc3RhdGUtPmh3 IG1lbWJlcnMgKi8KPiArCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShjcnRjX3N0YXRlKTsKPiAr Cj4gIAkvKiBGSVhNRTogYmVmb3JlIHRoZSBzd2l0Y2ggdG8gYXRvbWljIHN0YXJ0ZWQsIGEgbmV3 IHBpcGVfY29uZmlnIHdhcwo+ICAJICoga3phbGxvYydkLiBDb2RlIHRoYXQgZGVwZW5kcyBvbiBh bnkgZmllbGQgYmVpbmcgemVybyBzaG91bGQgYmUKPiAgCSAqIGZpeGVkLCBzbyB0aGF0IHRoZSBj cnRjX3N0YXRlIGNhbiBiZSBzYWZlbHkgZHVwbGljYXRlZC4gRm9yIG5vdywKPiAgCSAqIG9ubHkg ZmllbGRzIHRoYXQgYXJlIGtub3cgdG8gbm90IGNhdXNlIHByb2JsZW1zIGFyZSBwcmVzZXJ2ZWQu ICovCj4gIAo+ICsJc2F2ZWRfc3RhdGUtPnVhcGkgPSBjcnRjX3N0YXRlLT51YXBpOwo+ICAJc2F2 ZWRfc3RhdGUtPnNjYWxlcl9zdGF0ZSA9IGNydGNfc3RhdGUtPnNjYWxlcl9zdGF0ZTsKPiAgCXNh dmVkX3N0YXRlLT5zaGFyZWRfZHBsbCA9IGNydGNfc3RhdGUtPnNoYXJlZF9kcGxsOwo+ICAJc2F2 ZWRfc3RhdGUtPmRwbGxfaHdfc3RhdGUgPSBjcnRjX3N0YXRlLT5kcGxsX2h3X3N0YXRlOwo+IEBA IC0xMjUxNSwxNCArMTI1NDUsMTEgQEAgY2xlYXJfaW50ZWxfY3J0Y19zdGF0ZShzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKPiAgCQlzYXZlZF9zdGF0ZS0+c3luY19tb2RlX3Ns YXZlc19tYXNrID0KPiAgCQkJY3J0Y19zdGF0ZS0+c3luY19tb2RlX3NsYXZlc19tYXNrOwo+ICAK PiAtCS8qIEtlZXAgYmFzZSBkcm1fY3J0Y19zdGF0ZSBpbnRhY3QsIG9ubHkgY2xlYXIgb3VyIGV4 dGVuZGVkIHN0cnVjdCAqLwo+IC0JQlVJTERfQlVHX09OKG9mZnNldG9mKHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlLCBiYXNlKSk7Cj4gLQlCVUlMRF9CVUdfT04ob2Zmc2V0b2Yoc3RydWN0IGludGVs X2NydGNfc3RhdGUsIHVhcGkpKTsKPiAtCUJVSUxEX0JVR19PTihvZmZzZXRvZihzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSwgaHcpKTsKPiAtCW1lbWNweSgmY3J0Y19zdGF0ZS0+dWFwaSArIDEsICZz YXZlZF9zdGF0ZS0+dWFwaSArIDEsCj4gLQkgICAgICAgc2l6ZW9mKCpjcnRjX3N0YXRlKSAtIHNp emVvZihjcnRjX3N0YXRlLT51YXBpKSk7Cj4gLQo+ICsJbWVtY3B5KGNydGNfc3RhdGUsIHNhdmVk X3N0YXRlLCBzaXplb2YoKmNydGNfc3RhdGUpKTsKPiAgCWtmcmVlKHNhdmVkX3N0YXRlKTsKPiAr Cj4gKwlpbnRlbF9jcnRjX2NvcHlfdWFwaV90b19od19zdGF0ZShjcnRjX3N0YXRlKTsKPiArCj4g IAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAtMTI1MzgsMTAgKzEyNTY1LDYgQEAgaW50ZWxfbW9k ZXNldF9waXBlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCj4g IAlpbnQgaTsKPiAgCWJvb2wgcmV0cnkgPSB0cnVlOwo+ICAKPiAtCXJldCA9IGNsZWFyX2ludGVs X2NydGNfc3RhdGUocGlwZV9jb25maWcpOwo+IC0JaWYgKHJldCkKPiAtCQlyZXR1cm4gcmV0Owo+ IC0KPiAgCXBpcGVfY29uZmlnLT5jcHVfdHJhbnNjb2RlciA9Cj4gIAkJKGVudW0gdHJhbnNjb2Rl cikgdG9faW50ZWxfY3J0YyhjcnRjKS0+cGlwZTsKPiAgCj4gQEAgLTEzMzYxLDYgKzEzMzg0LDgg QEAgdmVyaWZ5X2NydGNfc3RhdGUoc3RydWN0IGludGVsX2NydGMgKmNydGMsCj4gIAo+ICAJc3Rh dGUgPSBvbGRfY3J0Y19zdGF0ZS0+dWFwaS5zdGF0ZTsKPiAgCV9fZHJtX2F0b21pY19oZWxwZXJf Y3J0Y19kZXN0cm95X3N0YXRlKCZvbGRfY3J0Y19zdGF0ZS0+dWFwaSk7Cj4gKwlpbnRlbF9jcnRj X2ZyZWVfaHdfc3RhdGUob2xkX2NydGNfc3RhdGUpOwo+ICsKPiAgCXBpcGVfY29uZmlnID0gb2xk X2NydGNfc3RhdGU7Cj4gIAltZW1zZXQocGlwZV9jb25maWcsIDAsIHNpemVvZigqcGlwZV9jb25m aWcpKTsKPiAgCXBpcGVfY29uZmlnLT51YXBpLmNydGMgPSAmY3J0Yy0+YmFzZTsKPiBAQCAtMTM4 MjMsNiArMTM4NDgsMTAgQEAgc3RhdGljIGludCBpbnRlbF9hdG9taWNfY2hlY2soc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKPiAgCj4gIAlmb3JfZWFjaF9vbGRuZXdfaW50ZWxfY3J0Y19pbl9zdGF0 ZShzdGF0ZSwgY3J0Yywgb2xkX2NydGNfc3RhdGUsCj4gIAkJCQkJICAgIG5ld19jcnRjX3N0YXRl LCBpKSB7Cj4gKwkJcmV0ID0gaW50ZWxfY3J0Y19wcmVwYXJlX3N0YXRlKG5ld19jcnRjX3N0YXRl KTsKPiArCQlpZiAocmV0KQo+ICsJCQlyZXR1cm4gcmV0OwoKSSBoYXZlIGEgZmVlbGluZyB0aGlz IHNob3VsZCBiZSBpdHMgb3duIGxvb3AgaW4gY2FzZSB3ZSBuZWVkCnRvIGluc2VydCBnbG9iYWwg c3R1ZmYgYWZ0ZXIgdGhpcy4KCkZvciBleGFtcGxlLCBJIHRoaW5rIHRoZSBwb3J0IHN5bmMgc3R1 ZmYgc2hvdWxkIGJlIHRoZXJlIGJ1dApJIGNhbid0IHNlZSBpdCBub3cuIEFoLCBmb3Igc29tZSBy ZWFzb24gaXQncyBidXJpZWQgZGVlcCBpbnNpZGUKaW50ZWxfbW9kZXNldF9waXBlX2NvbmZpZygp IHdoaWNoIHNlZW1zIHdyb25nLiBJZiBhbnkgKG9yIGF0CmxlYXN0IHRoZSBtYXN0ZXIpIG9mIHRo ZSBnZW5sb2NrZWQgcGlwZXMgZG9lcyBhIGZ1bGwgbW9kZXNldAp3ZSBuZWVkIHRvIGRvIGEgZnVs bCBtb2Rlc2V0IG9uIGFsbCBvZiB0aGVtLCB3aGljaCBzaG91bGQgYWxzbwptZWFuIGEgZnVsbCAu Y29tcHV0ZV9jb25maWcoKSBvbiBldmVyeXRoaW5nLgoKSG1tLiBBbmQgaWYgd2UgZG8gdGhhdCB0 aGVuIGNvbWJpbmluZyB0aGUgdWFwaS0+aHcgY29weSBhbmQKY2xlYXJfaW50ZWxfY3J0Y19zdGF0 ZSgpIGxpa2UgdGhpcyBpcyBub3QgZ29pbmcgdG8gd29yay4KCj4gKwo+ICAJCWlmICghbmVlZHNf bW9kZXNldChuZXdfY3J0Y19zdGF0ZSkpCj4gIAkJCWNvbnRpbnVlOwo+ICAKPiBAQCAtMTcwOTks NiArMTcxMjgsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tb2Rlc2V0X3JlYWRvdXRfaHdfc3RhdGUo c3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCQkJdG9faW50ZWxfY3J0Y19zdGF0ZShjcnRjLT5i YXNlLnN0YXRlKTsKPiAgCj4gIAkJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX2Rlc3Ryb3lfc3Rh dGUoJmNydGNfc3RhdGUtPnVhcGkpOwo+ICsJCWludGVsX2NydGNfZnJlZV9od19zdGF0ZShjcnRj X3N0YXRlKTsKPiAgCQltZW1zZXQoY3J0Y19zdGF0ZSwgMCwgc2l6ZW9mKCpjcnRjX3N0YXRlKSk7 Cj4gIAkJX19kcm1fYXRvbWljX2hlbHBlcl9jcnRjX3Jlc2V0KCZjcnRjLT5iYXNlLCAmY3J0Y19z dGF0ZS0+dWFwaSk7Cj4gIAo+IEBAIC0xNzIyNyw2ICsxNzI1Nyw3IEBAIHN0YXRpYyB2b2lkIGlu dGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJ CQkgKiBzZXQgYSBmbGFnIHRvIGluZGljYXRlIHRoYXQgYSBmdWxsIHJlY2FsY3VsYXRpb24gaXMK PiAgCQkJICogbmVlZGVkIG9uIHRoZSBuZXh0IGNvbW1pdC4KPiAgCQkJICovCj4gKwkJCWNydGNf c3RhdGUtPmh3Lm1vZGUgPSBjcnRjLT5iYXNlLm1vZGU7Cj4gIAkJCWNydGNfc3RhdGUtPmh3Lm1v ZGUucHJpdmF0ZV9mbGFncyA9IEk5MTVfTU9ERV9GTEFHX0lOSEVSSVRFRDsKPiAgCj4gIAkJCWlu dGVsX2NydGNfY29tcHV0ZV9waXhlbF9yYXRlKGNydGNfc3RhdGUpOwo+IEBAIC0xNzI1Nyw2ICsx NzI4OCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAKPiAgCQlpbnRlbF9id19jcnRjX3VwZGF0ZShid19zdGF0 ZSwgY3J0Y19zdGF0ZSk7Cj4gIAo+ICsJCWNvcHlfaHdfdG9fdWFwaV9zdGF0ZShjcnRjX3N0YXRl KTsKPiAgCQlpbnRlbF9waXBlX2NvbmZpZ19zYW5pdHlfY2hlY2soZGV2X3ByaXYsIGNydGNfc3Rh dGUpOwo+ICAJfQo+ICB9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3Bs YXkvaW50ZWxfZGlzcGxheV90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5X3R5cGVzLmgKPiBpbmRleCA0Njk3ZjcxOWIzYTguLjE3YzllYzMwMGYxOCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlf dHlwZXMuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eV90eXBlcy5oCj4gQEAgLTc0OSw4ICs3NDksNiBAQCBlbnVtIGludGVsX291dHB1dF9mb3JtYXQg ewo+ICB9Owo+ICAKPiAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgewo+IC0JdW5pb24gewo+IC0J c3RydWN0IGRybV9jcnRjX3N0YXRlIGJhc2U7Cj4gIAkvKgo+ICAJICogdWFwaSAoZHJtKSBzdGF0 ZS4gVGhpcyBpcyB0aGUgc29mdHdhcmUgc3RhdGUgc2hvd24gdG8gdXNlcnNwYWNlLgo+ICAJICog SW4gcGFydGljdWxhciwgdGhlIGZvbGxvd2luZyBtZW1iZXJzIGFyZSB1c2VkIGZvciBib29ra2Vl cGluZzoKPiBAQCAtNzczLDggKzc3MSwxMSBAQCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSB7Cj4g IAkgKgo+ICAJICogRHVyaW5nIGluaXRpYWwgaHcgcmVhZG91dCwgdGhleSBuZWVkIHRvIGJlIGNv cGllZCB0byB1YXBpLgo+ICAJICovCj4gLQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgaHc7Cj4gLQl9 Owo+ICsJc3RydWN0IHsKPiArCQlib29sIGFjdGl2ZSwgZW5hYmxlOwo+ICsJCXN0cnVjdCBkcm1f cHJvcGVydHlfYmxvYiAqZGVnYW1tYV9sdXQsICpnYW1tYV9sdXQsICpjdG07Cj4gKwkJc3RydWN0 IGRybV9kaXNwbGF5X21vZGUgbW9kZSwgYWRqdXN0ZWRfbW9kZTsKPiArCX0gaHc7Cj4gIAo+ICAJ LyoqCj4gIAkgKiBxdWlya3MgLSBiaXRmaWVsZCB3aXRoIGh3IHN0YXRlIHJlYWRvdXQgcXVpcmtz Cj4gLS0gCj4gMi4yMy4wCj4gCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBsaXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QK SW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==