From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rodrigo Vivi Subject: Re: [PATCH v3 8/8] drm/i915: Adjust system agent voltage on CNL if required by DDI ports Date: Mon, 23 Oct 2017 11:39:45 -0700 Message-ID: <20171023183945.cydhsdt2lltwhofg@intel.com> References: <20171018204825.2500-9-ville.syrjala@linux.intel.com> <20171020170540.25171-1-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id CF3E46E0B9 for ; Mon, 23 Oct 2017 18:39:45 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20171020170540.25171-1-ville.syrjala@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: Ville Syrjala Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBPY3QgMjAsIDIwMTcgYXQgMDU6MDU6NDBQTSArMDAwMCwgVmlsbGUgU3lyamFsYSB3 cm90ZToKPiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwu Y29tPgo+IAo+IE9uIENOTCB3ZSBtYXkgbmVlZCB0byBidW1wIHVwIHRoZSBzeXN0ZW0gYWdlbnQg dm9sdGFnZSBub3Qgb25seSBkdWUKPiB0byBDRENMSyBidXQgYWxzbyB3aGVuIGRyaXZpbmcgRERJ IHBvcnQgd2l0aCBhIHN1ZmZpY2llbnRseSBoaWdoIGNsb2NrLgo+IFRvIHRoYXQgZW5kIHN0YXJ0 IHRyYWNraW5nIHRoZSBtaW5pbXVtIGFjY2VwdGFibGUgdm9sdGFnZSBmb3IgZWFjaCBjcnRjLgo+ IFdlIGRvIHRoZSB0cmFja2luZyB2aWEgY3J0Y3MgYmVjYXVzZSB3ZSBkb24ndCBoYXZlIGFueSBr aW5kIG9mIGVuY29kZXIKPiBzdGF0ZS4gQWxzbyB0aGVyZSdzIG5vIGRvd25zaWRlIHRvIGRvaW5n IGl0IHRoaXMgd2F5LCBhbmQgaXQgbWF0Y2hlcyBob3cKPiB3ZSB0cmFjayBjZGNsayByZXF1aXJl bWVudHMgb24gYWNjb3VudCBvZiBwaXhlbCByYXRlLgo+IAo+IHYyOiBBbGxvdyBkaXNhYmxlZCBj cnRjcyB0byB1c2UgdGhlIG1pbiB2b2x0YWdlCj4gICAgIEFkZCBJU19DTkwgY2hlY2sgdG8gaW50 ZWxfZGRpX2NvbXB1dGVfbWluX3ZvbHRhZ2UoKSBzaW5jZQo+ICAgICB3ZSdyZSB1c2luZyBDTkwg c3BlY2lmaWMgdmFsdWVzIHRoZXJlCj4gICAgIHMvaW50ZWxfY29tcHV0ZV9taW5fdm9sdGFnZS9j bmxfY29tcHV0ZV9taW5fdm9sdGFnZS8gc2luY2UKPiAgICAgdGhlIGZ1bmN0aW9uIG1ha2VzIGh3 IHNwZWNpZmljIGFzc3VtcHRpb25zIGFib3V0IHRoZSB2b2x0YWdlCj4gICAgIHZhbHVlcwo+IHYz OiBEcm9wIHRoZSB0ZXN0IGhhY2sgbGVmdG92ZXJzIGZyb20gc2tsX21vZGVzZXRfY2FsY19jZGNs aygpCj4gCj4gQ2M6IE1pa2EgS2Fob2xhIDxtaWthLmthaG9sYUBpbnRlbC5jb20+Cj4gQ2M6IE1h bmFzaSBOYXZhcmUgPG1hbmFzaS5kLm5hdmFyZUBpbnRlbC5jb20+Cj4gQ2M6IFJvZHJpZ28gVml2 aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KPiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rs w6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oICAgICAgfCAgMiArKwo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9jZGNsay5jICAgfCA0NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0K PiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgICAgIHwgMTEgKysrKysrKysrCj4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICA5ICsrKysrKysKPiAgZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHBfbXN0LmMgIHwgIDUgKysrKwo+ICBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgNiArKysrKwo+ICA2IGZpbGVzIGNoYW5nZWQs IDc4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmgKPiBpbmRleCBkM2FjNThkYzI3NWYuLjE4NTcxMWE4NTJiMCAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaAo+IEBAIC0yNDE1LDYgKzI0MTUsOCBAQCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSB7Cj4gIAl1bnNpZ25lZCBpbnQgYWN0aXZlX2NydGNzOwo+ICAJLyogbWluaW11bSBhY2NlcHRh YmxlIGNkY2xrIGZvciBlYWNoIHBpcGUgKi8KPiAgCWludCBtaW5fY2RjbGtbSTkxNV9NQVhfUElQ RVNdOwo+ICsJLyogbWluaW11bSBhY2NlcHRhYmxlIHZvbHRhZ2UgZm9yIGVhY2ggcGlwZSAqLwo+ ICsJdTggbWluX3ZvbHRhZ2VbSTkxNV9NQVhfUElQRVNdOwo+ICAKPiAgCWludCBkcGlvX3BoeV9p b3NmX3BvcnRbSTkxNV9OVU1fUEhZU19WTFZdOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfY2RjbGsuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Nk Y2xrLmMKPiBpbmRleCAyYTBjYzlhYWZhNWEuLjBmNWYyY2U0YmQzZSAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jZGNsay5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfY2RjbGsuYwo+IEBAIC0xNjYxLDYgKzE2NjEsMTIgQEAgc3RhdGljIHZvaWQg Y25sX3NldF9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAltdXRl eF91bmxvY2soJmRldl9wcml2LT5wY3VfbG9jayk7Cj4gIAo+ICAJaW50ZWxfdXBkYXRlX2NkY2xr KGRldl9wcml2KTsKPiArCj4gKwkvKgo+ICsJICogQ2FuJ3QgcmVhZCBvdXQgdGhlIHZvbHRhZ2Ug OiggU28gbGV0J3MKPiArCSAqIGp1c3QgYXNzdW1lIGV2ZXJ5dGhpbmcgaXMgYXMgZXhwZWN0ZWQu Cj4gKwkgKi8KPiArCWRldl9wcml2LT5jZGNsay5ody52b2x0YWdlID0gY2RjbGtfc3RhdGUtPnZv bHRhZ2U7Cj4gIH0KPiAgCj4gIHN0YXRpYyBpbnQgY25sX2NkY2xrX3BsbF92Y28oc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBpbnQgY2RjbGspCj4gQEAgLTE5MzAsNiArMTkzNiw0 MiBAQCBzdGF0aWMgaW50IGludGVsX2NvbXB1dGVfbWluX2NkY2xrKHN0cnVjdCBkcm1fYXRvbWlj X3N0YXRlICpzdGF0ZSkKPiAgCXJldHVybiBtaW5fY2RjbGs7Cj4gIH0KPiAgCj4gKy8qCj4gKyAq IE5vdGUgdGhhdCB0aGlzIGZ1bmN0aW9ucyBhc3N1bWVzIHRoYXQgMCBpcwo+ICsgKiB0aGUgbG93 ZXN0IHZvbHRhZ2UgdmFsdWUsIGFuZCBoaWdoZXIgdmFsdWVzCj4gKyAqIGNvcnJlc3BvbmQgdG8g aW5jcmVhc2luZ2x5IGhpZ2hlciB2b2x0YWdlcy4KPiArICoKPiArICogU2hvdWxkIHRoYXQgcmVs YXRpb25zaGlwIG5vIGxvbmdlciBob2xkIG9uCj4gKyAqIGZ1dHVyZSBwbGF0Zm9ybXMgdGhpcyBj b2RlIHdpbGwgbmVlZCB0byBiZQo+ICsgKiBhZGp1c3RlZC4KPiArICovCj4gK3N0YXRpYyB1OCBj bmxfY29tcHV0ZV9taW5fdm9sdGFnZShzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSkK PiArewo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShzdGF0 ZS0+YmFzZS5kZXYpOwo+ICsJc3RydWN0IGludGVsX2NydGMgKmNydGM7Cj4gKwlzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKPiArCXU4IG1pbl92b2x0YWdlOwo+ICsJaW50IGk7 Cj4gKwllbnVtIHBpcGUgcGlwZTsKPiArCj4gKwltZW1jcHkoc3RhdGUtPm1pbl92b2x0YWdlLCBk ZXZfcHJpdi0+bWluX3ZvbHRhZ2UsCj4gKwkgICAgICAgc2l6ZW9mKHN0YXRlLT5taW5fdm9sdGFn ZSkpOwo+ICsKPiArCWZvcl9lYWNoX25ld19pbnRlbF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRj LCBjcnRjX3N0YXRlLCBpKSB7Cj4gKwkJaWYgKGNydGNfc3RhdGUtPmJhc2UuZW5hYmxlKQo+ICsJ CQlzdGF0ZS0+bWluX3ZvbHRhZ2VbaV0gPSBjcnRjX3N0YXRlLT5taW5fdm9sdGFnZTsKPiArCQll bHNlCj4gKwkJCXN0YXRlLT5taW5fdm9sdGFnZVtpXSA9IDA7Cj4gKwl9Cj4gKwo+ICsJbWluX3Zv bHRhZ2UgPSAwOwo+ICsJZm9yX2VhY2hfcGlwZShkZXZfcHJpdiwgcGlwZSkKPiArCQltaW5fdm9s dGFnZSA9IG1heChzdGF0ZS0+bWluX3ZvbHRhZ2VbcGlwZV0sCj4gKwkJCQkgIG1pbl92b2x0YWdl KTsKPiArCj4gKwlyZXR1cm4gbWluX3ZvbHRhZ2U7Cj4gK30KPiArCj4gIHN0YXRpYyBpbnQgdmx2 X21vZGVzZXRfY2FsY19jZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIHsK PiAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoc3RhdGUtPmRl dik7Cj4gQEAgLTIwODYsNyArMjEyOCw5IEBAIHN0YXRpYyBpbnQgY25sX21vZGVzZXRfY2FsY19j ZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAo+ICAJaW50ZWxfc3RhdGUt PmNkY2xrLmxvZ2ljYWwudmNvID0gdmNvOwo+ICAJaW50ZWxfc3RhdGUtPmNkY2xrLmxvZ2ljYWwu Y2RjbGsgPSBjZGNsazsKPiAtCWludGVsX3N0YXRlLT5jZGNsay5sb2dpY2FsLnZvbHRhZ2UgPSBj bmxfY2FsY192b2x0YWdlKGNkY2xrKTsKPiArCWludGVsX3N0YXRlLT5jZGNsay5sb2dpY2FsLnZv bHRhZ2UgPQo+ICsJCW1heChjbmxfY2FsY192b2x0YWdlKGNkY2xrKSwKPiArCQkgICAgY25sX2Nv bXB1dGVfbWluX3ZvbHRhZ2UoaW50ZWxfc3RhdGUpKTsKPiAgCj4gIAlpZiAoIWludGVsX3N0YXRl LT5hY3RpdmVfY3J0Y3MpIHsKPiAgCQljZGNsayA9IGNubF9jYWxjX2NkY2xrKDApOwo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2RkaS5jCj4gaW5kZXggYWRmNTFiMzI4ODQ0Li5mNzA3MTM0YjRmNjUgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGkuYwo+IEBAIC0yNTI1LDYgKzI1MjUsMTMgQEAgYm9v bCBpbnRlbF9kZGlfaXNfYXVkaW9fZW5hYmxlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCj4gIAlyZXR1cm4gZmFsc2U7Cj4gIH0KPiAgCj4gK3ZvaWQgaW50ZWxfZGRpX2NvbXB1 dGVfbWluX3ZvbHRhZ2Uoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICsJCQkJ ICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCj4gK3sKPiArCWlmIChJU19D QU5OT05MQUtFKGRldl9wcml2KSAmJiBjcnRjX3N0YXRlLT5wb3J0X2Nsb2NrID4gNTk0MDAwKQo+ ICsJCWNydGNfc3RhdGUtPm1pbl92b2x0YWdlID0gMjsKPiArfQoKTm93IHdlIGhhdmUgdGhpcyBw cm9wZXJseSBoYW5kbGVkLCBzaG91bGQgd2UgcmVtb3ZlIG9uIHRoZSBzYW1lIHBhdGNoCmFsbCA0 ICJGSVhNRTogKERWRlMpIiBvbiBkcGxsIGNvZGU/IE1heWJlIHJlbW92aW5nIHRoZSBlbnRpcmUg Y29tbWVudApibG9ja3Mgd2l0aCBhIHNtYWxsZXIgZXhwbGFuYXRpb24gdGhhdCB3ZSBoYW5kbGUg dGhhdCBkdmZzIGluIGEgZGlmZmVyZW50CmFuZCBhdG9taWMgd2F5LgoKb25lIHdheSBvciBhbm90 aGVyLCBmZWVsIGZyZWUgdG8gdXNlOgoKUmV2aWV3ZWQtYnk6IFJvZHJpZ28gVml2aSA8cm9kcmln by52aXZpQGludGVsLmNvbT4KCj4gKwo+ICB2b2lkIGludGVsX2RkaV9nZXRfY29uZmlnKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCQkgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpwaXBlX2NvbmZpZykKPiAgewo+IEBAIC0yNjI0LDYgKzI2MzEsOCBAQCB2b2lkIGludGVsX2Rk aV9nZXRfY29uZmlnKHN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyLAo+ICAJaWYgKElTX0dF TjlfTFAoZGV2X3ByaXYpKQo+ICAJCXBpcGVfY29uZmlnLT5sYW5lX2xhdF9vcHRpbV9tYXNrID0K PiAgCQkJYnh0X2RkaV9waHlfZ2V0X2xhbmVfbGF0X29wdGltX21hc2soZW5jb2Rlcik7Cj4gKwo+ ICsJaW50ZWxfZGRpX2NvbXB1dGVfbWluX3ZvbHRhZ2UoZGV2X3ByaXYsIHBpcGVfY29uZmlnKTsK PiAgfQo+ICAKPiAgc3RhdGljIGJvb2wgaW50ZWxfZGRpX2NvbXB1dGVfY29uZmlnKHN0cnVjdCBp bnRlbF9lbmNvZGVyICplbmNvZGVyLAo+IEBAIC0yNjUwLDYgKzI2NTksOCBAQCBzdGF0aWMgYm9v bCBpbnRlbF9kZGlfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIs Cj4gIAkJCWJ4dF9kZGlfcGh5X2NhbGNfbGFuZV9sYXRfb3B0aW1fbWFzayhlbmNvZGVyLAo+ICAJ CQkJCQkJICAgICBwaXBlX2NvbmZpZy0+bGFuZV9jb3VudCk7Cj4gIAo+ICsJaW50ZWxfZGRpX2Nv bXB1dGVfbWluX3ZvbHRhZ2UoZGV2X3ByaXYsIHBpcGVfY29uZmlnKTsKPiArCj4gIAlyZXR1cm4g cmV0Owo+ICAKPiAgfQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k aXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAz MmU3Y2NhNTJkYTIuLjgzMDI0OTU2YTc0ZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k aXNwbGF5LmMKPiBAQCAtNTkzOCw2ICs1OTM4LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfY3J0Y19k aXNhYmxlX25vYXRvbWljKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgCj4gIAlkZXZfcHJpdi0+ YWN0aXZlX2NydGNzICY9IH4oMSA8PCBpbnRlbF9jcnRjLT5waXBlKTsKPiAgCWRldl9wcml2LT5t aW5fY2RjbGtbaW50ZWxfY3J0Yy0+cGlwZV0gPSAwOwo+ICsJZGV2X3ByaXYtPm1pbl92b2x0YWdl W2ludGVsX2NydGMtPnBpcGVdID0gMDsKPiAgfQo+ICAKPiAgLyoKPiBAQCAtMTEzMDQsNiArMTEz MDUsOCBAQCBpbnRlbF9waXBlX2NvbmZpZ19jb21wYXJlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwKPiAgCVBJUEVfQ09ORl9DSEVDS19DTE9DS19GVVpaWShiYXNlLmFkanVzdGVk X21vZGUuY3J0Y19jbG9jayk7Cj4gIAlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlkocG9ydF9j bG9jayk7Cj4gIAo+ICsJUElQRV9DT05GX0NIRUNLX0kobWluX3ZvbHRhZ2UpOwo+ICsKPiAgI3Vu ZGVmIFBJUEVfQ09ORl9DSEVDS19YCj4gICN1bmRlZiBQSVBFX0NPTkZfQ0hFQ0tfSQo+ICAjdW5k ZWYgUElQRV9DT05GX0NIRUNLX1AKPiBAQCAtMTE5NjQsNiArMTE5NjcsOSBAQCBzdGF0aWMgaW50 IGludGVsX21vZGVzZXRfY2hlY2tzKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAg CQlEUk1fREVCVUdfS01TKCJOZXcgY2RjbGsgY2FsY3VsYXRlZCB0byBiZSBsb2dpY2FsICV1IGtI eiwgYWN0dWFsICV1IGtIelxuIiwKPiAgCQkJICAgICAgaW50ZWxfc3RhdGUtPmNkY2xrLmxvZ2lj YWwuY2RjbGssCj4gIAkJCSAgICAgIGludGVsX3N0YXRlLT5jZGNsay5hY3R1YWwuY2RjbGspOwo+ ICsJCURSTV9ERUJVR19LTVMoIk5ldyB2b2x0YWdlIGNhbGN1bGF0ZWQgdG8gYmUgbG9naWNhbCAl dSwgYWN0dWFsICV1XG4iLAo+ICsJCQkgICAgICBpbnRlbF9zdGF0ZS0+Y2RjbGsubG9naWNhbC52 b2x0YWdlLAo+ICsJCQkgICAgICBpbnRlbF9zdGF0ZS0+Y2RjbGsuYWN0dWFsLnZvbHRhZ2UpOwo+ ICAJfSBlbHNlIHsKPiAgCQl0b19pbnRlbF9hdG9taWNfc3RhdGUoc3RhdGUpLT5jZGNsay5sb2dp Y2FsID0gZGV2X3ByaXYtPmNkY2xrLmxvZ2ljYWw7Cj4gIAl9Cj4gQEAgLTEyNTMyLDYgKzEyNTM4 LDggQEAgc3RhdGljIGludCBpbnRlbF9hdG9taWNfY29tbWl0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCj4gIAlpZiAoaW50ZWxfc3RhdGUtPm1vZGVzZXQpIHsKPiAgCQltZW1jcHkoZGV2X3ByaXYt Pm1pbl9jZGNsaywgaW50ZWxfc3RhdGUtPm1pbl9jZGNsaywKPiAgCQkgICAgICAgc2l6ZW9mKGlu dGVsX3N0YXRlLT5taW5fY2RjbGspKTsKPiArCQltZW1jcHkoZGV2X3ByaXYtPm1pbl92b2x0YWdl LCBpbnRlbF9zdGF0ZS0+bWluX3ZvbHRhZ2UsCj4gKwkJICAgICAgIHNpemVvZihpbnRlbF9zdGF0 ZS0+bWluX3ZvbHRhZ2UpKTsKPiAgCQlkZXZfcHJpdi0+YWN0aXZlX2NydGNzID0gaW50ZWxfc3Rh dGUtPmFjdGl2ZV9jcnRjczsKPiAgCQlkZXZfcHJpdi0+Y2RjbGsubG9naWNhbCA9IGludGVsX3N0 YXRlLT5jZGNsay5sb2dpY2FsOwo+ICAJCWRldl9wcml2LT5jZGNsay5hY3R1YWwgPSBpbnRlbF9z dGF0ZS0+Y2RjbGsuYWN0dWFsOwo+IEBAIC0xNTA0Miw2ICsxNTA1MCw3IEBAIHN0YXRpYyB2b2lk IGludGVsX21vZGVzZXRfcmVhZG91dF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ ICAJCX0KPiAgCj4gIAkJZGV2X3ByaXYtPm1pbl9jZGNsa1tjcnRjLT5waXBlXSA9IG1pbl9jZGNs azsKPiArCQlkZXZfcHJpdi0+bWluX3ZvbHRhZ2VbY3J0Yy0+cGlwZV0gPSBjcnRjX3N0YXRlLT5t aW5fdm9sdGFnZTsKPiAgCj4gIAkJaW50ZWxfcGlwZV9jb25maWdfc2FuaXR5X2NoZWNrKGRldl9w cml2LCBjcnRjX3N0YXRlKTsKPiAgCX0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHBfbXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcF9tc3QuYwo+ IGluZGV4IDc3MjUyMTQ0MGE5Zi4uNmMxZGE4OGI1ZmVmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2RwX21zdC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHBfbXN0LmMKPiBAQCAtMzQsNiArMzQsNyBAQCBzdGF0aWMgYm9vbCBpbnRlbF9kcF9t c3RfY29tcHV0ZV9jb25maWcoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIsCj4gIAkJCQkJ c3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnLAo+ICAJCQkJCXN0cnVjdCBkcm1f Y29ubmVjdG9yX3N0YXRlICpjb25uX3N0YXRlKQo+ICB7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGVuY29kZXItPmJhc2UuZGV2KTsKPiAgCXN0cnVjdCBp bnRlbF9kcF9tc3RfZW5jb2RlciAqaW50ZWxfbXN0ID0gZW5jX3RvX21zdCgmZW5jb2Rlci0+YmFz ZSk7Cj4gIAlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCA9IGludGVs X21zdC0+cHJpbWFyeTsKPiAgCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSAmaW50ZWxfZGln X3BvcnQtPmRwOwo+IEBAIC04Nyw2ICs4OCw4IEBAIHN0YXRpYyBib29sIGludGVsX2RwX21zdF9j b21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCj4gIAlwaXBl X2NvbmZpZy0+ZHBfbV9uLnR1ID0gc2xvdHM7Cj4gIAo+ICsJaW50ZWxfZGRpX2NvbXB1dGVfbWlu X3ZvbHRhZ2UoZGV2X3ByaXYsIHBpcGVfY29uZmlnKTsKPiArCj4gIAlyZXR1cm4gdHJ1ZTsKPiAg fQo+ICAKPiBAQCAtMzA3LDYgKzMxMCw4IEBAIHN0YXRpYyB2b2lkIGludGVsX2RwX21zdF9lbmNf Z2V0X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKPiAgCWludGVsX2RwX2dl dF9tX24oY3J0YywgcGlwZV9jb25maWcpOwo+ICAKPiAgCWludGVsX2RkaV9jbG9ja19nZXQoJmlu dGVsX2RpZ19wb3J0LT5iYXNlLCBwaXBlX2NvbmZpZyk7Cj4gKwo+ICsJaW50ZWxfZGRpX2NvbXB1 dGVfbWluX3ZvbHRhZ2UoZGV2X3ByaXYsIHBpcGVfY29uZmlnKTsKPiAgfQo+ICAKPiAgc3RhdGlj IGludCBpbnRlbF9kcF9tc3RfZ2V0X2RkY19tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29u bmVjdG9yKQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCj4gaW5kZXggNzY1YTczNzcwMGM1Li4w MDI4OTRiMTNkNjkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2 LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAo+IEBAIC0zODYsNiAr Mzg2LDggQEAgc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSB7Cj4gIAl1bnNpZ25lZCBpbnQgYWN0 aXZlX2NydGNzOwo+ICAJLyogbWluaW11bSBhY2NlcHRhYmxlIGNkY2xrIGZvciBlYWNoIHBpcGUg Ki8KPiAgCWludCBtaW5fY2RjbGtbSTkxNV9NQVhfUElQRVNdOwo+ICsJLyogbWluaW11bSBhY2Nl cHRhYmxlIHZvbHRhZ2UgZm9yIGVhY2ggcGlwZSAqLwo+ICsJdTggbWluX3ZvbHRhZ2VbSTkxNV9N QVhfUElQRVNdOwo+ICAKPiAgCXN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbF9zdGF0ZSBzaGFyZWRf ZHBsbFtJOTE1X05VTV9QTExTXTsKPiAgCj4gQEAgLTczOSw2ICs3NDEsOCBAQCBzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSB7Cj4gIAkgKi8KPiAgCXVpbnQ4X3QgbGFuZV9sYXRfb3B0aW1fbWFzazsK PiAgCj4gKwl1OCBtaW5fdm9sdGFnZTsKPiArCj4gIAkvKiBQYW5lbCBmaXR0ZXIgY29udHJvbHMg Zm9yIGdlbjItZ2VuNCArIFZMViAqLwo+ICAJc3RydWN0IHsKPiAgCQl1MzIgY29udHJvbDsKPiBA QCAtMTI5NCw2ICsxMjk4LDggQEAgdm9pZCBpbnRlbF9kZGlfY2xvY2tfZ2V0KHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyLAo+ICAJCQkgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVf Y29uZmlnKTsKPiAgdm9pZCBpbnRlbF9kZGlfc2V0X3ZjX3BheWxvYWRfYWxsb2MoY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gIAkJCQkgICAgYm9vbCBzdGF0ZSk7 Cj4gK3ZvaWQgaW50ZWxfZGRpX2NvbXB1dGVfbWluX3ZvbHRhZ2Uoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAo+ICsJCQkJICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNf c3RhdGUpOwo+ICB1MzIgYnh0X3NpZ25hbF9sZXZlbHMoc3RydWN0IGludGVsX2RwICppbnRlbF9k cCk7Cj4gIHVpbnQzMl90IGRkaV9zaWduYWxfbGV2ZWxzKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxf ZHApOwo+ICB1OCBpbnRlbF9kZGlfZHBfdm9sdGFnZV9tYXgoc3RydWN0IGludGVsX2VuY29kZXIg KmVuY29kZXIpOwo+IC0tIAo+IDIuMTMuNgo+IApfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK