From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: Re: [PATCH 09/14] drm/i915: setup scalers for crtc_compute_config Date: Thu, 9 Apr 2015 14:51:23 -0700 Message-ID: <20150409215123.GD9016@intel.com> References: <1428445727-18103-1-git-send-email-chandra.konduru@intel.com> <1428445727-18103-10-git-send-email-chandra.konduru@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 283A26E864 for ; Thu, 9 Apr 2015 14:51:24 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1428445727-18103-10-git-send-email-chandra.konduru@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chandra Konduru Cc: daniel.vetter@intel.com, intel-gfx@lists.freedesktop.org, ander.conselvan.de.oliveira@intel.com List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBBcHIgMDcsIDIwMTUgYXQgMDM6Mjg6NDJQTSAtMDcwMCwgQ2hhbmRyYSBLb25kdXJ1 IHdyb3RlOgo+IEFkZGVkIGludGVsX2F0b21pY19zZXR1cF9zY2FsZXJzIHRvIHNldHVwIHNjYWxl cnMgYmFzZWQgb24KPiBzdGFnZWQgc2NhbGluZyByZXF1ZXN0cyBmcm9tIGEgY3J0YyBhbmQgaXRz IHBsYW5lcy4gSWYgc3RhZ2VkCj4gcmVxdWVzdHMgYXJlIHN1cHBvcnRhYmxlLCB0aGlzIGZ1bmN0 aW9uIGFzc2lnbnMgc2NhbGVycyB0bwo+IHJlcXVlc3RlZCBwbGFuZXMgYW5kIGNydGMuIE5vdGUg dGhhdCB0aGUgc2NhbGVyIGFzc2lnbmVtZW50Cj4gaXRzZWxmIGlzIHN0YWdlZCBpbnRvIGNydGNf c3RhdGUgYW5kIHJlc3BlY3RpdmUgcGxhbmVfc3RhdGVzCj4gZm9yIGxhdGVyIGNvbW1pdCBhZnRl ciBhbGwgY2hlY2tzIGhhdmUgYmVlbiBkb25lLgo+IAo+IG92ZXJhbGwgaGlnaCBsZXZlbCBmbG93 Ogo+ICAtIHNjYWxlciByZXF1ZXN0cyBhcmUgc3RhZ2VkIGludG8gY3J0Y19zdGF0ZSBieSBwbGFu ZXMvY3J0Ywo+ICAtIGNoZWNrIHdoZXRoZXIgc3RhZ2VkIHNjYWxpbmcgcmVxdWVzdHMgY2FuIGJl IHN1cHBvcnRlZAo+ICAtIGFkZCBwbGFuZXMgdXNpbmcgc2NhbGVycyB0aGF0IGFyZW4ndCBpbiBj dXJyZW50IHRyYW5zYWN0aW9uCj4gIC0gYXNzaWduIHNjYWxlcnMgdG8gcmVxdWVzdGVkIHVzZXJz Cj4gIC0gYXMgcGFydCBvZiBwbGFuZSBjb21taXQsIHNjYWxlcnMgd2lsbCBiZSBjb21taXR0ZWQK PiAgICAoaS5lLiwgZWl0aGVyIGF0dGFjaGVkIG9yIGRldGFjaGVkKSB0byByZXNwZWN0aXZlIHBs YW5lcyBpbiBodwo+ICAtIGFzIHBhcnQgb2YgY3J0Y19jb21taXQsIHNjYWxlciB3aWxsIGJlIGVp dGhlciBhdHRhY2hlZCBvciBkZXRhY2hlZAo+ICAgIHRvIGNydGMgaW4gaHcKPiAKPiBjcnRjX2Nv bXB1dGVfY29uZmlnIGNhbGxzIGludGVsX2F0b21pY19zZXR1cF9zY2FsZXJzKCkgdG8gc3RhcnQK PiBzY2FsZXIgYXNzaWdubWVudHMgYXMgcGVyIHNjYWxlciBzdGF0ZSBpbiBjcnRjIGNvbmZpZy4g VGhpcyBjYWxsCj4gc2hvdWxkIGJlIG1vdmVkIHRvIGF0b21pYyBjcnRjIG9uY2UgaXQgaXMgYXZh aWxhYmxlLgo+IAo+IHYyOgo+IC1yZW1vdmVkIGEgbG9nIG1lc3NhZ2UgKG1lKQo+IC1jaGFuZ2Vk IGlucHV0IHBhcmFtZXRlciB0byBjcnRjX3N0YXRlIChtZSkKPiAKPiB2MzoKPiAtcmVtb3ZlIGFz c2lnbmluZyBwbGFuZV9zdGF0ZSByZXR1cm5lZCBieSBkcm1fYXRvbWljX2dldF9wbGFuZV9zdGF0 ZSAoTWF0dCkKPiAtZmFpbCBpZiB0aGVyZSBpcyBhbiBlcnJvciBmcm9tIGRybV9hdG9taWNfZ2V0 X3BsYW5lX3N0YXRlIChNYXR0KQo+IAo+IHY0Ogo+IC1jaGFuZ2VzIHRvIGFsaWduIHdpdGggdXBk YXRlZCBzY2FsZXIgc3RydWN0dXJlIChNYXR0LCBtZSkKPiAKPiBTaWduZWQtb2ZmLWJ5OiBDaGFu ZHJhIEtvbmR1cnUgPGNoYW5kcmEua29uZHVydUBpbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jICB8ICAxMzcgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAg IDEwICsrLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgICAzICsK PiAgMyBmaWxlcyBjaGFuZ2VkLCAxNDkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+IAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jCj4gaW5kZXggMzkwM2I5MC4uYWMzMTdiNCAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jCj4gQEAgLTI0MSwzICsyNDEsMTQw IEBAIGludGVsX2NydGNfZGVzdHJveV9zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIHsK PiAgCWRybV9hdG9taWNfaGVscGVyX2NydGNfZGVzdHJveV9zdGF0ZShjcnRjLCBzdGF0ZSk7Cj4g IH0KPiArCj4gKy8qKgo+ICsgKiBpbnRlbF9hdG9taWNfc2V0dXBfc2NhbGVycygpIC0gc2V0dXAg c2NhbGVycyBmb3IgY3J0YyBwZXIgc3RhZ2VkIHJlcXVlc3RzCj4gKyAqIEBkZXY6IERSTSBkZXZp Y2UKPiArICogQGNydGM6IGludGVsIGNydGMKPiArICogQGNydGNfc3RhdGU6IGluY29taW5nIGNy dGNfc3RhdGUgdG8gdmFsaWRhdGUgYW5kIHNldHVwIHNjYWxlcnMKPiArICoKPiArICogVGhpcyBm dW5jdGlvbiBzZXRzIHVwIHNjYWxlcnMgYmFzZWQgb24gc3RhZ2VkIHNjYWxpbmcgcmVxdWVzdHMg Zm9yCj4gKyAqIGEgQGNydGMgYW5kIGl0cyBwbGFuZXMuIEl0IGlzIGNhbGxlZCBmcm9tIGNydGMg bGV2ZWwgY2hlY2sgcGF0aC4gSWYgcmVxdWVzdAo+ICsgKiBpcyBhIHN1cHBvcnRhYmxlIHJlcXVl c3QsIGl0IGF0dGFjaGVzIHNjYWxlcnMgdG8gcmVxdWVzdGVkIHBsYW5lcyBhbmQgY3J0Yy4KPiAr ICoKPiArICogVGhpcyBmdW5jdGlvbiB0YWtlcyBpbnRvIGFjY291bnQgdGhlIGN1cnJlbnQgc2Nh bGVyKHMpIGluIHVzZSBieSBhbnkgcGxhbmVzCj4gKyAqIG5vdCBiZWluZyBwYXJ0IG9mIHRoaXMg YXRvbWljIHN0YXRlCj4gKyAqCj4gKyAqICBSZXR1cm5zOgo+ICsgKiAgICAgICAgIDAgLSBzY2Fs ZXJzIHdlcmUgc2V0dXAgc3VjY2VzZnVsbHkKPiArICogICAgICAgICBlcnJvciBjb2RlIC0gb3Ro ZXJ3aXNlCj4gKyAqLwo+ICtpbnQgaW50ZWxfYXRvbWljX3NldHVwX3NjYWxlcnMoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKPiArCXN0cnVjdCBpbnRlbF9jcnRjICppbnRlbF9jcnRjLAo+ICsJc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gK3sKPiArCXN0cnVjdCBkcm1fcGxh bmUgKnBsYW5lID0gTlVMTDsKPiArCXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmU7Cj4g KwlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlID0gTlVMTDsKPiArCXN0cnVj dCBpbnRlbF9jcnRjX3NjYWxlcl9zdGF0ZSAqc2NhbGVyX3N0YXRlOwo+ICsJc3RydWN0IGRybV9h dG9taWNfc3RhdGUgKmRybV9zdGF0ZTsKPiArCWludCBudW1fc2NhbGVyc19uZWVkOwo+ICsJaW50 IGksIGo7Cj4gKwo+ICsJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuIDwgOSB8fCAhaW50ZWxfY3J0 YyB8fCAhY3J0Y19zdGF0ZSkKPiArCQlyZXR1cm4gMDsKPiArCj4gKwlzY2FsZXJfc3RhdGUgPSAm Y3J0Y19zdGF0ZS0+c2NhbGVyX3N0YXRlOwo+ICsJZHJtX3N0YXRlID0gY3J0Y19zdGF0ZS0+YmFz ZS5zdGF0ZTsKPiArCj4gKwludW1fc2NhbGVyc19uZWVkID0gaHdlaWdodDMyKHNjYWxlcl9zdGF0 ZS0+c2NhbGVyX3VzZXJzKTsKPiArCURSTV9ERUJVR19LTVMoImNydGNfc3RhdGUgPSAlcCBuZWVk ID0gJWQgYXZhaWwgPSAlZCBzY2FsZXJfdXNlcnMgPSAweCV4XG4iLAo+ICsJCWNydGNfc3RhdGUs IG51bV9zY2FsZXJzX25lZWQsIGludGVsX2NydGMtPm51bV9zY2FsZXJzLAo+ICsJCXNjYWxlcl9z dGF0ZS0+c2NhbGVyX3VzZXJzKTsKPiArCj4gKwkvKgo+ICsJICogSGlnaCBsZXZlbCBmbG93Ogo+ ICsJICogLSBzdGFnZWQgc2NhbGVyIHJlcXVlc3RzIGFyZSBhbHJlYWR5IGluIHNjYWxlcl9zdGF0 ZS0+c2NhbGVyX3VzZXJzCj4gKwkgKiAtIGNoZWNrIHdoZXRoZXIgc3RhZ2VkIHNjYWxpbmcgcmVx dWVzdHMgY2FuIGJlIHN1cHBvcnRlZAo+ICsJICogLSBhZGQgcGxhbmVzIHVzaW5nIHNjYWxlcnMg dGhhdCBhcmVuJ3QgaW4gY3VycmVudCB0cmFuc2FjdGlvbgo+ICsJICogLSBhc3NpZ24gc2NhbGVy cyB0byByZXF1ZXN0ZWQgdXNlcnMKPiArCSAqIC0gYXMgcGFydCBvZiBwbGFuZSBjb21taXQsIHNj YWxlcnMgd2lsbCBiZSBjb21taXR0ZWQKPiArCSAqICAgKGkuZS4sIGVpdGhlciBhdHRhY2hlZCBv ciBkZXRhY2hlZCkgdG8gcmVzcGVjdGl2ZSBwbGFuZXMgaW4gaHcKPiArCSAqIC0gYXMgcGFydCBv ZiBjcnRjX2NvbW1pdCwgc2NhbGVyIHdpbGwgYmUgZWl0aGVyIGF0dGFjaGVkIG9yIGRldGFjaGVk Cj4gKwkgKiAgIHRvIGNydGMgaW4gaHcKPiArCSAqLwo+ICsKPiArCS8qIGZhaWwgaWYgcmVxdWly ZWQgc2NhbGVycyA+IGF2YWlsYWJsZSBzY2FsZXJzICovCj4gKwlpZiAobnVtX3NjYWxlcnNfbmVl ZCA+IGludGVsX2NydGMtPm51bV9zY2FsZXJzKXsKPiArCQlEUk1fREVCVUdfS01TKCJUb28gbWFu eSBzY2FsaW5nIHJlcXVlc3RzICVkID4gJWRcbiIsCj4gKwkJCW51bV9zY2FsZXJzX25lZWQsIGlu dGVsX2NydGMtPm51bV9zY2FsZXJzKTsKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiArCX0KPiArCj4g KwkvKiB3YWxrdGhyb3VnaCBzY2FsZXJfdXNlcnMgYml0cyBhbmQgc3RhcnQgYXNzaWduaW5nIHNj YWxlcnMgKi8KPiArCWZvciAoaSA9IDA7IGkgPCBzaXplb2Yoc2NhbGVyX3N0YXRlLT5zY2FsZXJf dXNlcnMpICogODsgaSsrKSB7Cj4gKwkJaW50ICpzY2FsZXJfaWQ7Cj4gKwo+ICsJCS8qIHNraXAg aWYgc2NhbGVyIG5vdCByZXF1aXJlZCAqLwo+ICsJCWlmICghKHNjYWxlcl9zdGF0ZS0+c2NhbGVy X3VzZXJzICYgKDEgPDwgaSkpKQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJaWYgKGkgPT0gU0tM X0NSVENfSU5ERVgpIHsKPiArCQkJLyogcGFuZWwgZml0dGVyIGNhc2U6IGFzc2lnbiBhcyBhIGNy dGMgc2NhbGVyICovCj4gKwkJCXNjYWxlcl9pZCA9ICZzY2FsZXJfc3RhdGUtPnNjYWxlcl9pZDsK PiArCQl9IGVsc2Ugewo+ICsJCQlpZiAoIWRybV9zdGF0ZSkKPiArCQkJCWNvbnRpbnVlOwo+ICsK PiArCQkJLyogcGxhbmUgc2NhbGVyIGNhc2U6IGFzc2lnbiBhcyBhIHBsYW5lIHNjYWxlciAqLwo+ ICsJCQkvKiBmaW5kIHRoZSBwbGFuZSB0aGF0IHNldCB0aGUgYml0IGFzIHNjYWxlcl91c2VyICov Cj4gKwkJCXBsYW5lID0gZHJtX3N0YXRlLT5wbGFuZXNbaV07Cj4gKwo+ICsJCQkvKgo+ICsJCQkg KiB0byBlbmFibGUvZGlzYWJsZSBocSBtb2RlLCBhZGQgcGxhbmVzIHRoYXQgYXJlIHVzaW5nIHNj YWxlcgo+ICsJCQkgKiBpbnRvIHRoaXMgdHJhbnNhY3Rpb24KPiArCQkJICovCgpUaGUgY29kZSBo ZXJlIGxvb2tzIGZpbmUsIGJ1dCB0aGUgcmVmZXJlbmNlIHRvICJocSBtb2RlIiBraW5kIG9mIGNv bWVzCm91dCBvZiB0aGUgYmx1ZS4gIEkgcmVhbGl6ZSB5b3UncmUgc2V0dGluZyBIUSBvciBEWU4g ZG93biBhdCB0aGUgYm90dG9tCm9mIHRoaXMgZnVuY3Rpb24sIGJ1dCB0aGVyZSdzIG5ldmVyIHJl YWxseSBhbnkgaW5kaWNhdGlvbiBvZiB3aGF0IHRob3NlCmFyZSBvciB3aGF0IHRoZXkgbWVhbiAo b3IgaG93IGhhdmluZyB0aGUgb3RoZXIgcGxhbmUgc3RhdGVzIGluIHRoZQp0b3AtbGV2ZWwgdHJh bnNhY3Rpb24gcmVsYXRlcyB0byBIUSBtb2RlKS4gIEknbSBhc3N1bWluZyB3aGF0IHlvdXIKY29t bWVudCBoZXJlIGlzIHRyeWluZyB0byBzYXkgaXMgdGhhdCB0aGUgbW9kZSBmb3IgYW4gYWxyZWFk eSBzZXR1cCBhbmQKdW5jaGFuZ2VkIHBsYW5lK3NjYWxlciBtaWdodCBoYXZlIHRvIGNoYW5nZSBk dWUgdG8gY2hhbmdlcyB0byB0aGUKdG90YWwgbnVtYmVyIG9mIHNjYWxlcnMgb3ZlcmFsbCwgcmln aHQ/CgpTbyBtYXliZSBqdXN0IGFkZCBhIHBhcmFncmFwaCB0byB0aGUgY29tbWl0IG1lc3NhZ2Ug ZXhwbGFpbmluZyB0aGUgSFEKc3R1ZmYgYSBsaXR0bGUgYml0PyAgSSB0aGluayB0aGUgY29kZSBp dHNlbGYgc2hvdWxkIGJlIGZpbmUgc28geW91IGNhbgpjb25zaWRlciBpdAoKUmV2aWV3ZWQtYnk6 IE1hdHQgUm9wZXIgPG1hdHRoZXcuZC5yb3BlckBpbnRlbC5jb20+CgphZnRlciB1cGRhdGluZyB0 aGUgY29tbWl0IG1lc3NhZ2UuCgoKTWF0dAoKPiArCQkJaWYgKCFwbGFuZSkgewo+ICsJCQkJc3Ry dWN0IGRybV9wbGFuZV9zdGF0ZSAqc3RhdGU7Cj4gKwkJCQlwbGFuZSA9IGRybV9wbGFuZV9mcm9t X2luZGV4KGRldiwgaSk7Cj4gKwkJCQlzdGF0ZSA9IGRybV9hdG9taWNfZ2V0X3BsYW5lX3N0YXRl KGRybV9zdGF0ZSwgcGxhbmUpOwo+ICsJCQkJaWYgKElTX0VSUihzdGF0ZSkpIHsKPiArCQkJCQlE Uk1fREVCVUdfS01TKCJGYWlsZWQgdG8gYWRkIFtQTEFORTolZF0gdG8gZHJtX3N0YXRlXG4iLAo+ ICsJCQkJCQlwbGFuZS0+YmFzZS5pZCk7Cj4gKwkJCQkJcmV0dXJuIFBUUl9FUlIoc3RhdGUpOwo+ ICsJCQkJfQo+ICsJCQl9Cj4gKwo+ICsJCQlpbnRlbF9wbGFuZSA9IHRvX2ludGVsX3BsYW5lKHBs YW5lKTsKPiArCj4gKwkJCS8qIHBsYW5lIG9uIGRpZmZlcmVudCBjcnRjIGNhbm5vdCBiZSBhIHNj YWxlciB1c2VyIG9mIHRoaXMgY3J0YyAqLwo+ICsJCQlpZiAoV0FSTl9PTihpbnRlbF9wbGFuZS0+ cGlwZSAhPSBpbnRlbF9jcnRjLT5waXBlKSkgewo+ICsJCQkJY29udGludWU7Cj4gKwkJCX0KPiAr Cj4gKwkJCXBsYW5lX3N0YXRlID0gdG9faW50ZWxfcGxhbmVfc3RhdGUoZHJtX3N0YXRlLT5wbGFu ZV9zdGF0ZXNbaV0pOwo+ICsJCQlzY2FsZXJfaWQgPSAmcGxhbmVfc3RhdGUtPnNjYWxlcl9pZDsK PiArCQl9Cj4gKwo+ICsJCWlmICgqc2NhbGVyX2lkIDwgMCkgewo+ICsJCQkvKiBmaW5kIGEgZnJl ZSBzY2FsZXIgKi8KPiArCQkJZm9yIChqID0gMDsgaiA8IGludGVsX2NydGMtPm51bV9zY2FsZXJz OyBqKyspIHsKPiArCQkJCWlmICghc2NhbGVyX3N0YXRlLT5zY2FsZXJzW2pdLmluX3VzZSkgewo+ ICsJCQkJCXNjYWxlcl9zdGF0ZS0+c2NhbGVyc1tqXS5pbl91c2UgPSAxOwo+ICsJCQkJCSpzY2Fs ZXJfaWQgPSBzY2FsZXJfc3RhdGUtPnNjYWxlcnNbal0uaWQ7Cj4gKwkJCQkJRFJNX0RFQlVHX0tN UygiQXR0YWNoZWQgc2NhbGVyIGlkICV1LiV1IHRvICVzOiVkXG4iLAo+ICsJCQkJCQlpbnRlbF9j cnRjLT5waXBlLAo+ICsJCQkJCQlpID09IFNLTF9DUlRDX0lOREVYID8gc2NhbGVyX3N0YXRlLT5z Y2FsZXJfaWQgOgo+ICsJCQkJCQkJcGxhbmVfc3RhdGUtPnNjYWxlcl9pZCwKPiArCQkJCQkJaSA9 PSBTS0xfQ1JUQ19JTkRFWCA/ICJDUlRDIiA6ICJQTEFORSIsCj4gKwkJCQkJCWkgPT0gU0tMX0NS VENfSU5ERVggPyAgaW50ZWxfY3J0Yy0+YmFzZS5iYXNlLmlkIDoKPiArCQkJCQkJcGxhbmUtPmJh c2UuaWQpOwo+ICsJCQkJCWJyZWFrOwo+ICsJCQkJfQo+ICsJCQl9Cj4gKwkJfQo+ICsKPiArCQlp ZiAoV0FSTl9PTigqc2NhbGVyX2lkIDwgMCkpIHsKPiArCQkJRFJNX0RFQlVHX0tNUygiQ2Fubm90 IGZpbmQgc2NhbGVyIGZvciAlczolZFxuIiwKPiArCQkJCWkgPT0gU0tMX0NSVENfSU5ERVggPyAi Q1JUQyIgOiAiUExBTkUiLAo+ICsJCQkJaSA9PSBTS0xfQ1JUQ19JTkRFWCA/IGludGVsX2NydGMt PmJhc2UuYmFzZS5pZDpwbGFuZS0+YmFzZS5pZCk7Cj4gKwkJCWNvbnRpbnVlOwo+ICsJCX0KPiAr Cj4gKwkJLyogc2V0IHNjYWxlciBtb2RlICovCj4gKwkJc2NhbGVyX3N0YXRlLT5zY2FsZXJzWypz Y2FsZXJfaWRdLm1vZGUgPSAobnVtX3NjYWxlcnNfbmVlZCA9PSAxKSA/Cj4gKwkJCVBTX1NDQUxF Ul9NT0RFX0hRIDogUFNfU0NBTEVSX01PREVfRFlOOwo+ICsJfQo+ICsKPiArCXJldHVybiAwOwo+ ICt9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IGluZGV4IGYxMDUxZjAuLjk2 OTE3NjggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gQEAgLTU4MDks NiArNTgwOSw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19jb21wdXRlX2NvbmZpZyhzdHJ1Y3Qg aW50ZWxfY3J0YyAqY3J0YywKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNl LmRldjsKPiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3By aXZhdGU7Cj4gIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSA9ICZwaXBl X2NvbmZpZy0+YmFzZS5hZGp1c3RlZF9tb2RlOwo+ICsJaW50IHJldDsKPiAgCj4gIAkvKiBGSVhN RSBzaG91bGQgY2hlY2sgcGl4ZWwgY2xvY2sgbGltaXRzIG9uIGFsbCBwbGF0Zm9ybXMgKi8KPiAg CWlmIChJTlRFTF9JTkZPKGRldiktPmdlbiA8IDQpIHsKPiBAQCAtNTg2Myw3ICs1ODY0LDE0IEBA IHN0YXRpYyBpbnQgaW50ZWxfY3J0Y19jb21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0YyAq Y3J0YywKPiAgCWlmIChwaXBlX2NvbmZpZy0+aGFzX3BjaF9lbmNvZGVyKQo+ICAJCXJldHVybiBp cm9ubGFrZV9mZGlfY29tcHV0ZV9jb25maWcoY3J0YywgcGlwZV9jb25maWcpOwo+ICAKPiAtCXJl dHVybiAwOwo+ICsJLyogRklYTUU6IHJlbW92ZSBiZWxvdyBjYWxsIG9uY2UgYXRvbWljIG1vZGUg c2V0IGlzIHBsYWNlIGFuZCBhbGwgY3J0Ywo+ICsJICogcmVsYXRlZCBjaGVja3MgY2FsbGVkIGZy b20gYXRvbWljX2NydGNfY2hlY2sgZnVuY3Rpb24gKi8KPiArCXJldCA9IDA7Cj4gKwlEUk1fREVC VUdfS01TKCJpbnRlbF9jcnRjID0gJXAgZHJtX3N0YXRlIChwaXBlX2NvbmZpZy0+YmFzZS5zdGF0 ZSkgPSAlcFxuIiwKPiArCQljcnRjLCBwaXBlX2NvbmZpZy0+YmFzZS5zdGF0ZSk7Cj4gKwlyZXQg PSBpbnRlbF9hdG9taWNfc2V0dXBfc2NhbGVycyhkZXYsIGNydGMsIHBpcGVfY29uZmlnKTsKPiAr Cj4gKwlyZXR1cm4gcmV0Owo+ICB9Cj4gIAo+ICBzdGF0aWMgaW50IHNreWxha2VfZ2V0X2Rpc3Bs YXlfY2xvY2tfc3BlZWQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAo+IGluZGV4IGFkY2E2OTIuLmY5NjE0ZmIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAo+IEBAIC0xMzgyLDYgKzEzODIsOSBAQCBpbnRlbF9hdG9taWNfZ2V0X2NydGNfc3Rh dGUoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAo+ICAKPiAgCXJldHVybiB0b19pbnRl bF9jcnRjX3N0YXRlKGNydGNfc3RhdGUpOwo+ICB9Cj4gK2ludCBpbnRlbF9hdG9taWNfc2V0dXBf c2NhbGVycyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICsJc3RydWN0IGludGVsX2NydGMgKmlu dGVsX2NydGMsCj4gKwlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7Cj4gIAo+ ICAvKiBpbnRlbF9hdG9taWNfcGxhbmUuYyAqLwo+ICBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUg KmludGVsX2NyZWF0ZV9wbGFuZV9zdGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSk7Cj4gLS0g Cj4gMS43LjkuNQo+IAoKLS0gCk1hdHQgUm9wZXIKR3JhcGhpY3MgU29mdHdhcmUgRW5naW5lZXIK SW9URyBQbGF0Zm9ybSBFbmFibGluZyAmIERldmVsb3BtZW50CkludGVsIENvcnBvcmF0aW9uCig5 MTYpIDM1Ni0yNzk1Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==