From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: Re: [PATCH v4 4/4] drm/i915: Acquire PUNIT->PMIC bus for intel_uncore_forcewake_reset() Date: Tue, 22 Aug 2017 12:00:49 +0300 Message-ID: <20170822090049.c4a4m6xgwbzcc2dv@ideak-desk.fi.intel.com> References: <20170820125920.27347-1-hdegoede@redhat.com> <20170820125920.27347-4-hdegoede@redhat.com> Reply-To: imre.deak@intel.com Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20170820125920.27347-4-hdegoede@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Hans de Goede Cc: intel-gfx , dri-devel@lists.freedesktop.org, Daniel Vetter List-Id: dri-devel@lists.freedesktop.org T24gU3VuLCBBdWcgMjAsIDIwMTcgYXQgMDI6NTk6MjBQTSArMDIwMCwgSGFucyBkZSBHb2VkZSB3 cm90ZToKPiBpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3Jlc2V0KCkgZG9lcyBmb3JjZXdha2UgcHV0 cyBhbmQgZ2V0cyBhcyBzdWNoCj4gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCBuby1vbmUgdHJp ZXMgdG8gYWNjZXNzIHRoZSBQVU5JVC0+UE1JQyBidXMKPiAob24gc3lzdGVtcyB3aGVyZSB0aGlz IGJ1cyBpcyBzaGFyZWQpIHdoaWxlIGl0IHJ1bnMsIG90aGVyd2lzZSBiYWQKPiB0aGluZ3MgaGFw cGVuLgo+IAo+IE5vcm1hbGx5IHRoaXMgaXMgdGFrZW4gY2FyZSBvZiBieSB0aGUgaTkxNV9wbWlj X2J1c19hY2Nlc3Nfbm90aWZpZXIoKQo+IHdoaWNoIGRvZXMgYW4gaW50ZWxfdW5jb3JlX2ZvcmNl d2FrZV9nZXQoRk9SQ0VXQUtFX0FMTCkgd2hlbiBzb21lIG90aGVyCj4gZHJpdmVyIHRyaWVzIHRv IGFjY2VzcyB0aGUgUE1JQyBidXMsIHNvIHRoYXQgbGF0ZXIgZm9yY2V3YWtlIGdldHMgYXJlCj4g bm8tb3BzIChmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBidXMgYWNjZXNzKS4KPiAKPiBCdXQgaW50 ZWxfdW5jb3JlX2ZvcmNld2FrZV9yZXNldCBnZXRzIGNhbGxlZCBpbiAzIGNhc2VzOgo+IDEpIEJl Zm9yZSByZWdpc3RlcmluZyB0aGUgcG1pY19idXNfYWNjZXNzX25vdGlmaWVyCj4gMikgQWZ0ZXIg dW5yZWdpc3RlcmluZyB0aGUgcG1pY19idXNfYWNjZXNzX25vdGlmaWVyCj4gMykgVG8gcmVzZXQg Zm9yY2V3YWtlIHN0YXRlIG9uIGEgR1BVIHJlc2V0Cj4gCj4gSW4gYWxsIDMgY2FzZXMgdGhlIGk5 MTVfcG1pY19idXNfYWNjZXNzX25vdGlmaWVyKCkgcHJvdGVjdGlvbiBpcwo+IGluc3VmZmljaWVu dC4KPiAKPiBUaGlzIGNvbW1pdCBmaXhlcyB0aGlzIHJhY2UgYnkgY2FsbGluZyBpb3NmX21iaV9w dW5pdF9hY3F1aXJlKCkgYmVmb3JlCj4gY2FsbGluZyBpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3Jl c2V0KCkuIEluIHRoZSBjYXNlIHdoZXJlIGl0IGlzIGNhbGxlZAo+IGRpcmVjdGx5IGFmdGVyIHVu cmVnaXN0ZXJpbmcgdGhlIHBtaWNfYnVzX2FjY2Vzc19ub3RpZmllciwgd2UgbmVlZCB0bwo+IGhv bGQgdGhlIHB1bml0LWxvY2sgb3ZlciBib3RoIGNhbGxzIHRvIGF2b2lkIGEgcmFjZSB3aGVyZQo+ IGludGVsX3VuY29yZV9md19yZWxlYXNlX3RpbWVyKCkgbWF5IGV4ZWN1dGUgYmV0d2VlbiB0aGUg MiBjYWxscy4KPiAKPiBUbyBhbGxvdyBob2xkaW5nIHRoZSBsb2NrIG92ZXIgYm90aCBjYWxscyB3 ZSBuZWVkIGFuIHVubG9ja2VkCj4gdmFyaWFudCBvZiBpb3NmX21iaV91bnJlZ2lzdGVyX3BtaWNf YnVzX2FjY2Vzc19ub3RpZmllci4gU2luY2UKPiBpbnRlbF91bmNvcmUuYyBpcyB0aGUgb25seSB1 c2VyIG9mIHRoaXMgZnVuY3Rpb24sIHdlIHNpbXBseQo+IG1vZGlmeSBpdCBpbiB0aGlzIGNvbW1p dC4gRG9pbmcgdGhpcyBpbiBhIHNlcGFyYXRlIGNvbW1pdCB3b3VsZAo+IHJlcXVpcmUgZmlyc3Qg YWRkaW5nIGFuIHVubG9ja2VkIHZhcmlhbnQsIHRoZW4gdGhpcyBjb21taXQgYW5kCj4gdGhlbiBy ZW1vdmluZyB0aGUgdW51c2VkIG5vcm1hbCB2YXJpYW50Lgo+IAo+IFNpZ25lZC1vZmYtYnk6IEhh bnMgZGUgR29lZGUgPGhkZWdvZWRlQHJlZGhhdC5jb20+Cj4gUmV2aWV3ZWQtYnk6IEltcmUgRGVh ayA8aW1yZS5kZWFrQGludGVsLmNvbT4KPiAtLS0KPiBDaGFuZ2VzIGluIHYyOgo+IC1SZWJhc2Ug b24gY3VycmVudCAoSnVseSA2dGggMjAxNykgZHJtLW5leHQKPiAKPiBDaGFuZ2VzIGluIHYzOgo+ IC1LZWVwIHB1bml0IGFjcXVpcmVkIC8gbG9ja2VkIG92ZXIgdGhlIHVucmVnaXN0ZXIgKyBmb3Jj ZXdha2VfcmVzZXQKPiAgY2FsbCBjb21ibyB0byBhdm9pZCBhIHJhY2UgaGl0dGluZyBiZXR3ZWVu IHRoZSAyIGNhbGxzCj4gLVRoaXMgcmVxdWlyZXMgbW9kaWZ5aW5nIGlvc2ZfbWJpX3VucmVnaXN0 ZXJfcG1pY19idXNfYWNjZXNzX25vdGlmaWVyCj4gIHRvIG5vdCB0YWtlIHRoZSBsb2NrIGl0c2Vs Ziwgc2luY2Ugd2UgYXJlIHRoZSBvbmx5IHVzZXJzIHRoaXMgaXMgZG9uZQo+ICBpbiB0aGlzIHNh bWUgY29tbWl0Cj4gCj4gQ2hhbmdlcyBpbiB2NDoKPiAtRml4IG1pc3NpbmcgcmVuYW1lIGluIGRv Yy1jb21tZW50Cj4gLUFkZCBhbmQgdXNlIGlvc2ZfbWJpX2Fzc2VydF9wdW5pdF9hY3F1aXJlZCgp IGhlbHBlcgo+IC1BZGQgbWlzc2luZyBhY3F1aXFyZSBzdXJyb3VuZGluZyBpbnRlbF91bmNvcmVf Zm9yY2V3YWtlX3Jlc2V0KCkgaW5zaWRlCj4gIGludGVsX3VuY29yZV9jaGVja19mb3JjZXdha2Vf ZG9tYWlucygpCj4gLUFkZCBJbXJlJ3MgUmV2aWV3ZWQtYnkKPiAtLS0KPiAgYXJjaC94ODYvaW5j bHVkZS9hc20vaW9zZl9tYmkuaCAgICAgICAgICAgICAgIHwgMjAgKysrKysrKysrKysrKysrKyst LS0KPiAgYXJjaC94ODYvcGxhdGZvcm0vaW50ZWwvaW9zZl9tYmkuYyAgICAgICAgICAgIHwgMjAg KysrKysrKysrKystLS0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3Jl LmMgICAgICAgICAgIHwgMTcgKysrKysrKysrKysrKy0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvc2VsZnRlc3RzL2ludGVsX3VuY29yZS5jIHwgIDMgKysrCj4gIDQgZmlsZXMgY2hhbmdlZCwg NDQgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gv eDg2L2luY2x1ZGUvYXNtL2lvc2ZfbWJpLmggYi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9pb3NmX21i aS5oCj4gaW5kZXggYzMxM2NhYzM2ZjU2Li4wZjBkZTQzMDMxODAgMTAwNjQ0Cj4gLS0tIGEvYXJj aC94ODYvaW5jbHVkZS9hc20vaW9zZl9tYmkuaAo+ICsrKyBiL2FyY2gveDg2L2luY2x1ZGUvYXNt L2lvc2ZfbWJpLmgKPiBAQCAtMTM5LDExICsxMzksMTcgQEAgdm9pZCBpb3NmX21iaV9wdW5pdF9y ZWxlYXNlKHZvaWQpOwo+ICBpbnQgaW9zZl9tYmlfcmVnaXN0ZXJfcG1pY19idXNfYWNjZXNzX25v dGlmaWVyKHN0cnVjdCBub3RpZmllcl9ibG9jayAqbmIpOwo+ICAKPiAgLyoqCj4gLSAqIGlvc2Zf bWJpX3JlZ2lzdGVyX3BtaWNfYnVzX2FjY2Vzc19ub3RpZmllciAtIFVucmVnaXN0ZXIgUE1JQyBi dXMgbm90aWZpZXIKPiArICogaW9zZl9tYmlfcmVnaXN0ZXJfcG1pY19idXNfYWNjZXNzX25vdGlm aWVyX3VubG9ja2VkIC0gVW5yZWdpc3RlciBQTUlDIGJ1cwo+ICsgKiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBub3RpZmllcgo+ICsgKgo+ICsg KiBOb3RlIHRoZSBjYWxsZXIgbXVzdCBjYWxsIGlvc2ZfbWJpX3B1bml0X2FjcXVpcmUoKSBiZWZv cmUgY2FsbGluZyB0aGlzCj4gKyAqIHRvIGVuc3VyZSB0aGUgYnVzIGlzIGluYWN0aXZlIGJlZm9y ZSB1bnJlZ2lzdGVyaW5nIChhbmQgY2FsbAo+ICsgKiBpb3NmX21iaV9wdW5pdF9yZWxlYXNlKCkg YWZ0ZXJ3YXJkcykuCj4gICAqCj4gICAqIEBuYjogbm90aWZpZXJfYmxvY2sgdG8gdW5yZWdpc3Rl cgo+ICAgKi8KPiAtaW50IGlvc2ZfbWJpX3VucmVnaXN0ZXJfcG1pY19idXNfYWNjZXNzX25vdGlm aWVyKHN0cnVjdCBub3RpZmllcl9ibG9jayAqbmIpOwo+ICtpbnQgaW9zZl9tYmlfdW5yZWdpc3Rl cl9wbWljX2J1c19hY2Nlc3Nfbm90aWZpZXJfdW5sb2NrZWQoCj4gKwlzdHJ1Y3Qgbm90aWZpZXJf YmxvY2sgKm5iKTsKPiAgCj4gIC8qKgo+ICAgKiBpb3NmX21iaV9jYWxsX3BtaWNfYnVzX2FjY2Vz c19ub3RpZmllcl9jaGFpbiAtIENhbGwgUE1JQyBidXMgbm90aWZpZXIgY2hhaW4KPiBAQCAtMTUz LDYgKzE1OSwxMSBAQCBpbnQgaW9zZl9tYmlfdW5yZWdpc3Rlcl9wbWljX2J1c19hY2Nlc3Nfbm90 aWZpZXIoc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYik7Cj4gICAqLwo+ICBpbnQgaW9zZl9tYmlf Y2FsbF9wbWljX2J1c19hY2Nlc3Nfbm90aWZpZXJfY2hhaW4odW5zaWduZWQgbG9uZyB2YWwsIHZv aWQgKnYpOwo+ICAKPiArLyoqCj4gKyAqIGlvc2ZfbWJpX2Fzc2VydF9wdW5pdF9hY3F1aXJlZCAt IEFzc2VydCB0aGF0IHRoZSBQLVVuaXQgaGFzIGJlZW4gYWNxdWlyZWQuCj4gKyAqLwo+ICt2b2lk IGlvc2ZfbWJpX2Fzc2VydF9wdW5pdF9hY3F1aXJlZCh2b2lkKTsKPiArCj4gICNlbHNlIC8qIENP TkZJR19JT1NGX01CSSBpcyBub3QgZW5hYmxlZCAqLwo+ICBzdGF0aWMgaW5saW5lCj4gIGJvb2wg aW9zZl9tYmlfYXZhaWxhYmxlKHZvaWQpCj4gQEAgLTE5MSw3ICsyMDIsOCBAQCBpbnQgaW9zZl9t YmlfcmVnaXN0ZXJfcG1pY19idXNfYWNjZXNzX25vdGlmaWVyKHN0cnVjdCBub3RpZmllcl9ibG9j ayAqbmIpCj4gIH0KPiAgCj4gIHN0YXRpYyBpbmxpbmUKPiAtaW50IGlvc2ZfbWJpX3VucmVnaXN0 ZXJfcG1pY19idXNfYWNjZXNzX25vdGlmaWVyKHN0cnVjdCBub3RpZmllcl9ibG9jayAqbmIpCj4g K2ludCBpb3NmX21iaV91bnJlZ2lzdGVyX3BtaWNfYnVzX2FjY2Vzc19ub3RpZmllcl91bmxvY2tl ZCgKPiArCXN0cnVjdCBub3RpZmllcl9ibG9jayAqbmIpCj4gIHsKPiAgCXJldHVybiAwOwo+ICB9 Cj4gQEAgLTIwMiw2ICsyMTQsOCBAQCBpbnQgaW9zZl9tYmlfY2FsbF9wbWljX2J1c19hY2Nlc3Nf bm90aWZpZXJfY2hhaW4odW5zaWduZWQgbG9uZyB2YWwsIHZvaWQgKnYpCj4gIAlyZXR1cm4gMDsK PiAgfQo+ICAKPiArc3RhdGljIGlubGluZSB2b2lkIGlvc2ZfbWJpX2Fzc2VydF9wdW5pdF9hY3F1 aXJlZCh2b2lkKSB7fQo+ICsKPiAgI2VuZGlmIC8qIENPTkZJR19JT1NGX01CSSAqLwo+ICAKPiAg I2VuZGlmIC8qIElPU0ZfTUJJX1NZTVNfSCAqLwo+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9wbGF0 Zm9ybS9pbnRlbC9pb3NmX21iaS5jIGIvYXJjaC94ODYvcGxhdGZvcm0vaW50ZWwvaW9zZl9tYmku Ywo+IGluZGV4IGE5NTJhYzE5OTc0MS4uYTUzNjFmZDExZTZlIDEwMDY0NAo+IC0tLSBhL2FyY2gv eDg2L3BsYXRmb3JtL2ludGVsL2lvc2ZfbWJpLmMKPiArKysgYi9hcmNoL3g4Ni9wbGF0Zm9ybS9p bnRlbC9pb3NmX21iaS5jCj4gQEAgLTIxOCwxOSArMjE4LDE1IEBAIGludCBpb3NmX21iaV9yZWdp c3Rlcl9wbWljX2J1c19hY2Nlc3Nfbm90aWZpZXIoc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYikK PiAgfQo+ICBFWFBPUlRfU1lNQk9MKGlvc2ZfbWJpX3JlZ2lzdGVyX3BtaWNfYnVzX2FjY2Vzc19u b3RpZmllcik7Cj4gIAo+IC1pbnQgaW9zZl9tYmlfdW5yZWdpc3Rlcl9wbWljX2J1c19hY2Nlc3Nf bm90aWZpZXIoc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYikKPiAraW50IGlvc2ZfbWJpX3VucmVn aXN0ZXJfcG1pY19idXNfYWNjZXNzX25vdGlmaWVyX3VubG9ja2VkKAo+ICsJc3RydWN0IG5vdGlm aWVyX2Jsb2NrICpuYikKPiAgewo+IC0JaW50IHJldDsKPiArCVdBUk5fT04oIW11dGV4X2lzX2xv Y2tlZCgmaW9zZl9tYmlfcHVuaXRfbXV0ZXgpKTsKCk1pc3NlZCB0byBjaGFuZ2UgdGhpcyB0byBp b3NmX21iaV9hc3NlcnRfcHVuaXRfYWNxdWlyZWQoKS4gVGhlIHJlc3QKbG9va3Mgb2sgdG8gbWUu IEkgY2FuIGNoYW5nZSB0aGUgYWJvdmUgd2hpbGUgYXBwbHlpbmcsIG5vIG5lZWQgdG8KcmVzZW5k IGZvciB0aGlzLgoKQWRkaW5nIGFsc28gQ2hyaXMuCgo+ICAKPiAtCS8qIFdhaXQgZm9yIHRoZSBi dXMgdG8gZ28gaW5hY3RpdmUgYmVmb3JlIHVucmVnaXN0ZXJpbmcgKi8KPiAtCW11dGV4X2xvY2so Jmlvc2ZfbWJpX3B1bml0X211dGV4KTsKPiAtCXJldCA9IGJsb2NraW5nX25vdGlmaWVyX2NoYWlu X3VucmVnaXN0ZXIoCj4gKwlyZXR1cm4gYmxvY2tpbmdfbm90aWZpZXJfY2hhaW5fdW5yZWdpc3Rl cigKPiAgCQkJCSZpb3NmX21iaV9wbWljX2J1c19hY2Nlc3Nfbm90aWZpZXIsIG5iKTsKPiAtCW11 dGV4X3VubG9jaygmaW9zZl9tYmlfcHVuaXRfbXV0ZXgpOwo+IC0KPiAtCXJldHVybiByZXQ7Cj4g IH0KPiAtRVhQT1JUX1NZTUJPTChpb3NmX21iaV91bnJlZ2lzdGVyX3BtaWNfYnVzX2FjY2Vzc19u b3RpZmllcik7Cj4gK0VYUE9SVF9TWU1CT0woaW9zZl9tYmlfdW5yZWdpc3Rlcl9wbWljX2J1c19h Y2Nlc3Nfbm90aWZpZXJfdW5sb2NrZWQpOwo+ICAKPiAgaW50IGlvc2ZfbWJpX2NhbGxfcG1pY19i dXNfYWNjZXNzX25vdGlmaWVyX2NoYWluKHVuc2lnbmVkIGxvbmcgdmFsLCB2b2lkICp2KQo+ICB7 Cj4gQEAgLTIzOSw2ICsyMzUsMTIgQEAgaW50IGlvc2ZfbWJpX2NhbGxfcG1pY19idXNfYWNjZXNz X25vdGlmaWVyX2NoYWluKHVuc2lnbmVkIGxvbmcgdmFsLCB2b2lkICp2KQo+ICB9Cj4gIEVYUE9S VF9TWU1CT0woaW9zZl9tYmlfY2FsbF9wbWljX2J1c19hY2Nlc3Nfbm90aWZpZXJfY2hhaW4pOwo+ ICAKPiArdm9pZCBpb3NmX21iaV9hc3NlcnRfcHVuaXRfYWNxdWlyZWQodm9pZCkKPiArewo+ICsJ V0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZpb3NmX21iaV9wdW5pdF9tdXRleCkpOwo+ICt9Cj4g K0VYUE9SVF9TWU1CT0woaW9zZl9tYmlfYXNzZXJ0X3B1bml0X2FjcXVpcmVkKTsKPiArCj4gICNp ZmRlZiBDT05GSUdfSU9TRl9NQklfREVCVUcKPiAgc3RhdGljIHUzMglkYmdfbWRyOwo+ICBzdGF0 aWMgdTMyCWRiZ19tY3I7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3VuY29yZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKPiBpbmRleCBl OWVkMDI1MTg0MDYuLjgwZTc1YzAyOWU1OSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF91bmNvcmUuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Vu Y29yZS5jCj4gQEAgLTIyOSw2ICsyMjksNyBAQCBpbnRlbF91bmNvcmVfZndfcmVsZWFzZV90aW1l cihzdHJ1Y3QgaHJ0aW1lciAqdGltZXIpCj4gIAlyZXR1cm4gSFJUSU1FUl9OT1JFU1RBUlQ7Cj4g IH0KPiAgCj4gKy8qIE5vdGUgY2FsbGVycyBtdXN0IGhhdmUgYWNxdWlyZWQgdGhlIFBVTklULT5Q TUlDIGJ1cywgYmVmb3JlIGNhbGxpbmcgdGhpcy4gKi8KPiAgc3RhdGljIHZvaWQgaW50ZWxfdW5j b3JlX2ZvcmNld2FrZV9yZXNldChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4g IAkJCQkJIGJvb2wgcmVzdG9yZSkKPiAgewo+IEBAIC0yMzcsNiArMjM4LDggQEAgc3RhdGljIHZv aWQgaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9yZXNldChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCj4gIAlpbnQgcmV0cnlfY291bnQgPSAxMDA7Cj4gIAllbnVtIGZvcmNld2FrZV9k b21haW5zIGZ3LCBhY3RpdmVfZG9tYWluczsKPiAgCj4gKwlpb3NmX21iaV9hc3NlcnRfcHVuaXRf YWNxdWlyZWQoKTsKPiArCj4gIAkvKiBIb2xkIHVuY29yZS5sb2NrIGFjcm9zcyByZXNldCB0byBw cmV2ZW50IGFueSByZWdpc3RlciBhY2Nlc3MKPiAgCSAqIHdpdGggZm9yY2V3YWtlIG5vdCBzZXQg Y29ycmVjdGx5LiBXYWl0IHVudGlsIGFsbCBwZW5kaW5nCj4gIAkgKiB0aW1lcnMgYXJlIHJ1biBi ZWZvcmUgaG9sZGluZy4KPiBAQCAtNDE2LDE0ICs0MTksMTggQEAgc3RhdGljIHZvaWQgX19pbnRl bF91bmNvcmVfZWFybHlfc2FuaXRpemUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAo+ICAJCQkJICAgR1RfRklGT19DVExfUkM2X1BPTElDWV9TVEFMTCk7Cj4gIAl9Cj4gIAo+ICsJ aW9zZl9tYmlfcHVuaXRfYWNxdWlyZSgpOwo+ICAJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9yZXNl dChkZXZfcHJpdiwgcmVzdG9yZV9mb3JjZXdha2UpOwo+ICsJaW9zZl9tYmlfcHVuaXRfcmVsZWFz ZSgpOwo+ICB9Cj4gIAo+ICB2b2lkIGludGVsX3VuY29yZV9zdXNwZW5kKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdikKPiAgewo+IC0JaW9zZl9tYmlfdW5yZWdpc3Rlcl9wbWljX2J1 c19hY2Nlc3Nfbm90aWZpZXIoCj4gKwlpb3NmX21iaV9wdW5pdF9hY3F1aXJlKCk7Cj4gKwlpb3Nm X21iaV91bnJlZ2lzdGVyX3BtaWNfYnVzX2FjY2Vzc19ub3RpZmllcl91bmxvY2tlZCgKPiAgCQkm ZGV2X3ByaXYtPnVuY29yZS5wbWljX2J1c19hY2Nlc3NfbmIpOwo+ICAJaW50ZWxfdW5jb3JlX2Zv cmNld2FrZV9yZXNldChkZXZfcHJpdiwgZmFsc2UpOwo+ICsJaW9zZl9tYmlfcHVuaXRfcmVsZWFz ZSgpOwo+ICB9Cj4gIAo+ICB2b2lkIGludGVsX3VuY29yZV9yZXN1bWVfZWFybHkoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+IEBAIC0xMjQ2LDEyICsxMjUzLDE0IEBAIHZvaWQg aW50ZWxfdW5jb3JlX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAK PiAgdm9pZCBpbnRlbF91bmNvcmVfZmluaShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCj4gIHsKPiAtCWlvc2ZfbWJpX3VucmVnaXN0ZXJfcG1pY19idXNfYWNjZXNzX25vdGlmaWVy KAo+IC0JCSZkZXZfcHJpdi0+dW5jb3JlLnBtaWNfYnVzX2FjY2Vzc19uYik7Cj4gLQo+ICAJLyog UGFyYW5vaWE6IG1ha2Ugc3VyZSB3ZSBoYXZlIGRpc2FibGVkIGV2ZXJ5dGhpbmcgYmVmb3JlIHdl IGV4aXQuICovCj4gIAlpbnRlbF91bmNvcmVfc2FuaXRpemUoZGV2X3ByaXYpOwo+ICsKPiArCWlv c2ZfbWJpX3B1bml0X2FjcXVpcmUoKTsKPiArCWlvc2ZfbWJpX3VucmVnaXN0ZXJfcG1pY19idXNf YWNjZXNzX25vdGlmaWVyX3VubG9ja2VkKAo+ICsJCSZkZXZfcHJpdi0+dW5jb3JlLnBtaWNfYnVz X2FjY2Vzc19uYik7Cj4gIAlpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3Jlc2V0KGRldl9wcml2LCBm YWxzZSk7Cj4gKwlpb3NmX21iaV9wdW5pdF9yZWxlYXNlKCk7Cj4gIH0KPiAgCj4gICNkZWZpbmUg R0VOX1JBTkdFKGwsIGgpIEdFTk1BU0soKGgpIC0gMSwgKGwpIC0gMSkKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2ludGVsX3VuY29yZS5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvc2VsZnRlc3RzL2ludGVsX3VuY29yZS5jCj4gaW5kZXggMmQwZmVmMmNmY2E2 Li41NWQwZWY0ZmJjZWYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRl c3RzL2ludGVsX3VuY29yZS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3Rz L2ludGVsX3VuY29yZS5jCj4gQEAgLTE0OCw3ICsxNDgsMTAgQEAgc3RhdGljIGludCBpbnRlbF91 bmNvcmVfY2hlY2tfZm9yY2V3YWtlX2RvbWFpbnMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcmkKPiAgCWZvcl9lYWNoX3NldF9iaXQob2Zmc2V0LCB2YWxpZCwgRldfUkFOR0UpIHsKPiAg CQlpOTE1X3JlZ190IHJlZyA9IHsgb2Zmc2V0IH07Cj4gIAo+ICsJCWlvc2ZfbWJpX3B1bml0X2Fj cXVpcmUoKTsKPiAgCQlpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3Jlc2V0KGRldl9wcml2LCBmYWxz ZSk7Cj4gKwkJaW9zZl9tYmlfcHVuaXRfcmVsZWFzZSgpOwo+ICsKPiAgCQljaGVja19mb3JfdW5j bGFpbWVkX21taW8oZGV2X3ByaXYpOwo+ICAKPiAgCQkodm9pZClJOTE1X1JFQUQocmVnKTsKPiAt LSAKPiAyLjEzLjQKPiAKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwt Z2Z4Cg==