From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 6/8] drm/i915: Add calc_voltage_level display vfunc Date: Tue, 10 Sep 2019 15:41:21 +0300 Message-ID: <20190910124121.GL7482@intel.com> References: <20190907002143.22591-1-matthew.d.roper@intel.com> <20190907002143.22591-7-matthew.d.roper@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 5D8D76E8CE for ; Tue, 10 Sep 2019 12:41:25 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190907002143.22591-7-matthew.d.roper@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Matt Roper Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBTZXAgMDYsIDIwMTkgYXQgMDU6MjE6NDFQTSAtMDcwMCwgTWF0dCBSb3BlciB3cm90 ZToKPiBXaXRoIGFsbCBvZiB0aGUgY2RjbGsgZnVuY3Rpb24gY29uc29saWRhdGlvbiwgd2UgY2Fu IGN1dCBkb3duIG9uIGEgbG90Cj4gb2YgcGxhdGZvcm0gaWYvZWxzZSBsb2dpYyBieSBjcmVhdGlu ZyBhIHZmdW5jIHRoYXQncyBpbml0aWFsaXplZCBhdAo+IHN0YXJ0dXAuCgpSZXZpZXdlZC1ieTog VmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCj4gCj4gQ2M6 IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gU2lnbmVk LW9mZi1ieTogTWF0dCBSb3BlciA8bWF0dGhldy5kLnJvcGVyQGludGVsLmNvbT4KPiAtLS0KPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9jZGNsay5jIHwgNzYgKysrKysrKyst LS0tLS0tLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAg ICAgfCAgMSArCj4gIDIgZmlsZXMgY2hhbmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50 ZWxfY2RjbGsuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfY2RjbGsuYwo+ IGluZGV4IGE3MGZlYzgyZDJiYy4uYTY2OTY2OTdhMDlmIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfY2RjbGsuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfY2RjbGsuYwo+IEBAIC0xNDAzLDE4ICsxNDAzLDggQEAgc3Rh dGljIHZvaWQgYnh0X2dldF9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs Cj4gIAkgKiBDYW4ndCByZWFkIHRoaXMgb3V0IDooIExldCdzIGFzc3VtZSBpdCdzCj4gIAkgKiBh dCBsZWFzdCB3aGF0IHRoZSBDRENMSyBmcmVxdWVuY3kgcmVxdWlyZXMuCj4gIAkgKi8KPiAtCWlm IChJU19FTEtIQVJUTEFLRShkZXZfcHJpdikpCj4gLQkJY2RjbGtfc3RhdGUtPnZvbHRhZ2VfbGV2 ZWwgPQo+IC0JCQllaGxfY2FsY192b2x0YWdlX2xldmVsKGNkY2xrX3N0YXRlLT5jZGNsayk7Cj4g LQllbHNlIGlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDExKQo+IC0JCWNkY2xrX3N0YXRlLT52 b2x0YWdlX2xldmVsID0KPiAtCQkJaWNsX2NhbGNfdm9sdGFnZV9sZXZlbChjZGNsa19zdGF0ZS0+ Y2RjbGspOwo+IC0JZWxzZSBpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSAxMCkKPiAtCQljZGNs a19zdGF0ZS0+dm9sdGFnZV9sZXZlbCA9Cj4gLQkJCWNubF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoY2Rj bGtfc3RhdGUtPmNkY2xrKTsKPiAtCWVsc2UKPiAtCQljZGNsa19zdGF0ZS0+dm9sdGFnZV9sZXZl bCA9Cj4gLQkJCWJ4dF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoY2RjbGtfc3RhdGUtPmNkY2xrKTsKPiAr CWNkY2xrX3N0YXRlLT52b2x0YWdlX2xldmVsID0KPiArCQlkZXZfcHJpdi0+ZGlzcGxheS5jYWxj X3ZvbHRhZ2VfbGV2ZWwoY2RjbGtfc3RhdGUtPmNkY2xrKTsKPiAgfQo+ICAKPiAgc3RhdGljIHZv aWQgYnh0X2RlX3BsbF9kaXNhYmxlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK PiBAQCAtMTY4MSw3ICsxNjcxLDggQEAgc3RhdGljIHZvaWQgYnh0X2luaXRfY2RjbGsoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICAJICovCj4gIAljZGNsa19zdGF0ZS5jZGNs ayA9IGNhbGNfY2RjbGsoZGV2X3ByaXYsIDApOwo+ICAJY2RjbGtfc3RhdGUudmNvID0gY2FsY19j ZGNsa19wbGxfdmNvKGRldl9wcml2LCBjZGNsa19zdGF0ZS5jZGNsayk7Cj4gLQljZGNsa19zdGF0 ZS52b2x0YWdlX2xldmVsID0gYnh0X2NhbGNfdm9sdGFnZV9sZXZlbChjZGNsa19zdGF0ZS5jZGNs ayk7Cj4gKwljZGNsa19zdGF0ZS52b2x0YWdlX2xldmVsID0KPiArCQlkZXZfcHJpdi0+ZGlzcGxh eS5jYWxjX3ZvbHRhZ2VfbGV2ZWwoY2RjbGtfc3RhdGUuY2RjbGspOwo+ICAKPiAgCWJ4dF9zZXRf Y2RjbGsoZGV2X3ByaXYsICZjZGNsa19zdGF0ZSwgSU5WQUxJRF9QSVBFKTsKPiAgfQo+IEBAIC0x NjkyLDE4ICsxNjgzLDggQEAgc3RhdGljIHZvaWQgYnh0X3VuaW5pdF9jZGNsayhzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAo+ICAJY2RjbGtfc3RhdGUuY2RjbGsgPSBjZGNs a19zdGF0ZS5ieXBhc3M7Cj4gIAljZGNsa19zdGF0ZS52Y28gPSAwOwo+IC0JaWYgKElTX0VMS0hB UlRMQUtFKGRldl9wcml2KSkKPiAtCQljZGNsa19zdGF0ZS52b2x0YWdlX2xldmVsID0KPiAtCQkJ ZWhsX2NhbGNfdm9sdGFnZV9sZXZlbChjZGNsa19zdGF0ZS5jZGNsayk7Cj4gLQllbHNlIGlmIChJ TlRFTF9HRU4oZGV2X3ByaXYpID49IDExKQo+IC0JCWNkY2xrX3N0YXRlLnZvbHRhZ2VfbGV2ZWwg PQo+IC0JCQlpY2xfY2FsY192b2x0YWdlX2xldmVsKGNkY2xrX3N0YXRlLmNkY2xrKTsKPiAtCWVs c2UgaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTApCj4gLQkJY2RjbGtfc3RhdGUudm9sdGFn ZV9sZXZlbCA9Cj4gLQkJCWNubF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoY2RjbGtfc3RhdGUuY2RjbGsp Owo+IC0JZWxzZQo+IC0JCWNkY2xrX3N0YXRlLnZvbHRhZ2VfbGV2ZWwgPQo+IC0JCQlieHRfY2Fs Y192b2x0YWdlX2xldmVsKGNkY2xrX3N0YXRlLmNkY2xrKTsKPiArCWNkY2xrX3N0YXRlLnZvbHRh Z2VfbGV2ZWwgPQo+ICsJCWRldl9wcml2LT5kaXNwbGF5LmNhbGNfdm9sdGFnZV9sZXZlbChjZGNs a19zdGF0ZS5jZGNsayk7Cj4gIAo+ICAJYnh0X3NldF9jZGNsayhkZXZfcHJpdiwgJmNkY2xrX3N0 YXRlLCBJTlZBTElEX1BJUEUpOwo+ICB9Cj4gQEAgLTE3MzksMTIgKzE3MjAsOCBAQCBzdGF0aWMg dm9pZCBpY2xfaW5pdF9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4g IAlzYW5pdGl6ZWRfc3RhdGUuY2RjbGsgPSBjYWxjX2NkY2xrKGRldl9wcml2LCAwKTsKPiAgCXNh bml0aXplZF9zdGF0ZS52Y28gPSBjYWxjX2NkY2xrX3BsbF92Y28oZGV2X3ByaXYsCj4gIAkJCQkJ CSBzYW5pdGl6ZWRfc3RhdGUuY2RjbGspOwo+IC0JaWYgKElTX0VMS0hBUlRMQUtFKGRldl9wcml2 KSkKPiAtCQlzYW5pdGl6ZWRfc3RhdGUudm9sdGFnZV9sZXZlbCA9Cj4gLQkJCWVobF9jYWxjX3Zv bHRhZ2VfbGV2ZWwoc2FuaXRpemVkX3N0YXRlLmNkY2xrKTsKPiAtCWVsc2UKPiAtCQlzYW5pdGl6 ZWRfc3RhdGUudm9sdGFnZV9sZXZlbCA9Cj4gLQkJCWljbF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoc2Fu aXRpemVkX3N0YXRlLmNkY2xrKTsKPiArCXNhbml0aXplZF9zdGF0ZS52b2x0YWdlX2xldmVsID0K PiArCQlkZXZfcHJpdi0+ZGlzcGxheS5jYWxjX3ZvbHRhZ2VfbGV2ZWwoc2FuaXRpemVkX3N0YXRl LmNkY2xrKTsKPiAgCj4gIAlieHRfc2V0X2NkY2xrKGRldl9wcml2LCAmc2FuaXRpemVkX3N0YXRl LCBJTlZBTElEX1BJUEUpOwo+ICB9Cj4gQEAgLTE3NjMsNyArMTc0MCw4IEBAIHN0YXRpYyB2b2lk IGNubF9pbml0X2NkY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAgCj4g IAljZGNsa19zdGF0ZS5jZGNsayA9IGNhbGNfY2RjbGsoZGV2X3ByaXYsIDApOwo+ICAJY2RjbGtf c3RhdGUudmNvID0gY2FsY19jZGNsa19wbGxfdmNvKGRldl9wcml2LCBjZGNsa19zdGF0ZS5jZGNs ayk7Cj4gLQljZGNsa19zdGF0ZS52b2x0YWdlX2xldmVsID0gY25sX2NhbGNfdm9sdGFnZV9sZXZl bChjZGNsa19zdGF0ZS5jZGNsayk7Cj4gKwljZGNsa19zdGF0ZS52b2x0YWdlX2xldmVsID0KPiAr CQlkZXZfcHJpdi0+ZGlzcGxheS5jYWxjX3ZvbHRhZ2VfbGV2ZWwoY2RjbGtfc3RhdGUuY2RjbGsp Owo+ICAKPiAgCWJ4dF9zZXRfY2RjbGsoZGV2X3ByaXYsICZjZGNsa19zdGF0ZSwgSU5WQUxJRF9Q SVBFKTsKPiAgfQo+IEBAIC0yMjU1LDcgKzIyMzMsNyBAQCBzdGF0aWMgaW50IGJ4dF9tb2Rlc2V0 X2NhbGNfY2RjbGsoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAlzdGF0ZS0+ Y2RjbGsubG9naWNhbC52Y28gPSB2Y287Cj4gIAlzdGF0ZS0+Y2RjbGsubG9naWNhbC5jZGNsayA9 IGNkY2xrOwo+ICAJc3RhdGUtPmNkY2xrLmxvZ2ljYWwudm9sdGFnZV9sZXZlbCA9Cj4gLQkJYnh0 X2NhbGNfdm9sdGFnZV9sZXZlbChjZGNsayk7Cj4gKwkJZGV2X3ByaXYtPmRpc3BsYXkuY2FsY192 b2x0YWdlX2xldmVsKGNkY2xrKTsKPiAgCj4gIAlpZiAoIXN0YXRlLT5hY3RpdmVfcGlwZXMpIHsK PiAgCQljZGNsayA9IGNhbGNfY2RjbGsoZGV2X3ByaXYsIHN0YXRlLT5jZGNsay5mb3JjZV9taW5f Y2RjbGspOwo+IEBAIC0yMjY0LDcgKzIyNDIsNyBAQCBzdGF0aWMgaW50IGJ4dF9tb2Rlc2V0X2Nh bGNfY2RjbGsoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAkJc3RhdGUtPmNk Y2xrLmFjdHVhbC52Y28gPSB2Y287Cj4gIAkJc3RhdGUtPmNkY2xrLmFjdHVhbC5jZGNsayA9IGNk Y2xrOwo+ICAJCXN0YXRlLT5jZGNsay5hY3R1YWwudm9sdGFnZV9sZXZlbCA9Cj4gLQkJCWJ4dF9j YWxjX3ZvbHRhZ2VfbGV2ZWwoY2RjbGspOwo+ICsJCQlkZXZfcHJpdi0+ZGlzcGxheS5jYWxjX3Zv bHRhZ2VfbGV2ZWwoY2RjbGspOwo+ICAJfSBlbHNlIHsKPiAgCQlzdGF0ZS0+Y2RjbGsuYWN0dWFs ID0gc3RhdGUtPmNkY2xrLmxvZ2ljYWw7Cj4gIAl9Cj4gQEAgLTIzMTksMTQgKzIyOTcsOSBAQCBz dGF0aWMgaW50IGljbF9tb2Rlc2V0X2NhbGNfY2RjbGsoc3RydWN0IGludGVsX2F0b21pY19zdGF0 ZSAqc3RhdGUpCj4gIAo+ICAJc3RhdGUtPmNkY2xrLmxvZ2ljYWwudmNvID0gdmNvOwo+ICAJc3Rh dGUtPmNkY2xrLmxvZ2ljYWwuY2RjbGsgPSBjZGNsazsKPiAtCWlmIChJU19FTEtIQVJUTEFLRShk ZXZfcHJpdikpCj4gLQkJc3RhdGUtPmNkY2xrLmxvZ2ljYWwudm9sdGFnZV9sZXZlbCA9Cj4gLQkJ CW1heChlaGxfY2FsY192b2x0YWdlX2xldmVsKGNkY2xrKSwKPiAtCQkJICAgIGNubF9jb21wdXRl X21pbl92b2x0YWdlX2xldmVsKHN0YXRlKSk7Cj4gLQllbHNlCj4gLQkJc3RhdGUtPmNkY2xrLmxv Z2ljYWwudm9sdGFnZV9sZXZlbCA9Cj4gLQkJCW1heChpY2xfY2FsY192b2x0YWdlX2xldmVsKGNk Y2xrKSwKPiAtCQkJICAgIGNubF9jb21wdXRlX21pbl92b2x0YWdlX2xldmVsKHN0YXRlKSk7Cj4g KwlzdGF0ZS0+Y2RjbGsubG9naWNhbC52b2x0YWdlX2xldmVsID0KPiArCQltYXgoZGV2X3ByaXYt PmRpc3BsYXkuY2FsY192b2x0YWdlX2xldmVsKGNkY2xrKSwKPiArCQkgICAgY25sX2NvbXB1dGVf bWluX3ZvbHRhZ2VfbGV2ZWwoc3RhdGUpKTsKPiAgCj4gIAlpZiAoIXN0YXRlLT5hY3RpdmVfcGlw ZXMpIHsKPiAgCQljZGNsayA9IGNhbGNfY2RjbGsoZGV2X3ByaXYsIHN0YXRlLT5jZGNsay5mb3Jj ZV9taW5fY2RjbGspOwo+IEBAIC0yMzM0LDEyICsyMzA3LDggQEAgc3RhdGljIGludCBpY2xfbW9k ZXNldF9jYWxjX2NkY2xrKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAKPiAg CQlzdGF0ZS0+Y2RjbGsuYWN0dWFsLnZjbyA9IHZjbzsKPiAgCQlzdGF0ZS0+Y2RjbGsuYWN0dWFs LmNkY2xrID0gY2RjbGs7Cj4gLQkJaWYgKElTX0VMS0hBUlRMQUtFKGRldl9wcml2KSkKPiAtCQkJ c3RhdGUtPmNkY2xrLmFjdHVhbC52b2x0YWdlX2xldmVsID0KPiAtCQkJCWVobF9jYWxjX3ZvbHRh Z2VfbGV2ZWwoY2RjbGspOwo+IC0JCWVsc2UKPiAtCQkJc3RhdGUtPmNkY2xrLmFjdHVhbC52b2x0 YWdlX2xldmVsID0KPiAtCQkJCWljbF9jYWxjX3ZvbHRhZ2VfbGV2ZWwoY2RjbGspOwo+ICsJCXN0 YXRlLT5jZGNsay5hY3R1YWwudm9sdGFnZV9sZXZlbCA9Cj4gKwkJCWRldl9wcml2LT5kaXNwbGF5 LmNhbGNfdm9sdGFnZV9sZXZlbChjZGNsayk7Cj4gIAl9IGVsc2Ugewo+ICAJCXN0YXRlLT5jZGNs ay5hY3R1YWwgPSBzdGF0ZS0+Y2RjbGsubG9naWNhbDsKPiAgCX0KPiBAQCAtMjU2MywxOSArMjUz MiwyOCBAQCB2b2lkIGludGVsX3VwZGF0ZV9yYXdjbGsoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQo+ICAgKi8KPiAgdm9pZCBpbnRlbF9pbml0X2NkY2xrX2hvb2tzKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKPiAgewo+IC0JaWYgKElOVEVMX0dFTihkZXZfcHJp dikgPj0gMTEpIHsKPiArCWlmIChJU19FTEtIQVJUTEFLRShkZXZfcHJpdikpIHsKPiArCQlkZXZf cHJpdi0+ZGlzcGxheS5zZXRfY2RjbGsgPSBieHRfc2V0X2NkY2xrOwo+ICsJCWRldl9wcml2LT5k aXNwbGF5Lm1vZGVzZXRfY2FsY19jZGNsayA9IGljbF9tb2Rlc2V0X2NhbGNfY2RjbGs7Cj4gKwkJ ZGV2X3ByaXYtPmRpc3BsYXkuY2FsY192b2x0YWdlX2xldmVsID0gZWhsX2NhbGNfdm9sdGFnZV9s ZXZlbDsKPiArCQlkZXZfcHJpdi0+Y2RjbGsudGFibGUgPSBpY2xfY2RjbGtfdGFibGU7Cj4gKwkJ ZGV2X3ByaXYtPmNkY2xrLnRhYmxlX3NpemUgPSBBUlJBWV9TSVpFKGljbF9jZGNsa190YWJsZSk7 Cj4gKwl9IGVsc2UgaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTEpIHsKPiAgCQlkZXZfcHJp di0+ZGlzcGxheS5zZXRfY2RjbGsgPSBieHRfc2V0X2NkY2xrOwo+ICAJCWRldl9wcml2LT5kaXNw bGF5Lm1vZGVzZXRfY2FsY19jZGNsayA9IGljbF9tb2Rlc2V0X2NhbGNfY2RjbGs7Cj4gKwkJZGV2 X3ByaXYtPmRpc3BsYXkuY2FsY192b2x0YWdlX2xldmVsID0gaWNsX2NhbGNfdm9sdGFnZV9sZXZl bDsKPiAgCQlkZXZfcHJpdi0+Y2RjbGsudGFibGUgPSBpY2xfY2RjbGtfdGFibGU7Cj4gIAkJZGV2 X3ByaXYtPmNkY2xrLnRhYmxlX3NpemUgPSBBUlJBWV9TSVpFKGljbF9jZGNsa190YWJsZSk7Cj4g IAl9IGVsc2UgaWYgKElTX0NBTk5PTkxBS0UoZGV2X3ByaXYpKSB7Cj4gIAkJZGV2X3ByaXYtPmRp c3BsYXkuc2V0X2NkY2xrID0gYnh0X3NldF9jZGNsazsKPiAgCQlkZXZfcHJpdi0+ZGlzcGxheS5t b2Rlc2V0X2NhbGNfY2RjbGsgPSBjbmxfbW9kZXNldF9jYWxjX2NkY2xrOwo+ICsJCWRldl9wcml2 LT5kaXNwbGF5LmNhbGNfdm9sdGFnZV9sZXZlbCA9IGNubF9jYWxjX3ZvbHRhZ2VfbGV2ZWw7Cj4g IAkJZGV2X3ByaXYtPmNkY2xrLnRhYmxlID0gY25sX2NkY2xrX3RhYmxlOwo+ICAJCWRldl9wcml2 LT5jZGNsay50YWJsZV9zaXplID0gQVJSQVlfU0laRShjbmxfY2RjbGtfdGFibGUpOwo+ICAJfSBl bHNlIGlmIChJU19HRU45X0xQKGRldl9wcml2KSkgewo+ICAJCWRldl9wcml2LT5kaXNwbGF5LnNl dF9jZGNsayA9IGJ4dF9zZXRfY2RjbGs7Cj4gIAkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9j YWxjX2NkY2xrID0gYnh0X21vZGVzZXRfY2FsY19jZGNsazsKPiArCQlkZXZfcHJpdi0+ZGlzcGxh eS5jYWxjX3ZvbHRhZ2VfbGV2ZWwgPSBieHRfY2FsY192b2x0YWdlX2xldmVsOwo+ICAJCWRldl9w cml2LT5jZGNsay50YWJsZSA9IGJ4dF9jZGNsa190YWJsZTsKPiAgCQlkZXZfcHJpdi0+Y2RjbGsu dGFibGVfc2l6ZSA9IEFSUkFZX1NJWkUoYnh0X2NkY2xrX3RhYmxlKTsKPiAgCX0gZWxzZSBpZiAo SVNfR0VOOV9CQyhkZXZfcHJpdikpIHsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBpbmRleCBh NGQyNDkxOTNkYzguLmE1NmRhNDMxYmZlMyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ IEBAIC0yNzYsNiArMjc2LDcgQEAgc3RydWN0IGRybV9pOTE1X2Rpc3BsYXlfZnVuY3Mgewo+ICAJ aW50ICgqY29tcHV0ZV9nbG9iYWxfd2F0ZXJtYXJrcykoc3RydWN0IGludGVsX2F0b21pY19zdGF0 ZSAqc3RhdGUpOwo+ICAJdm9pZCAoKnVwZGF0ZV93bSkoc3RydWN0IGludGVsX2NydGMgKmNydGMp Owo+ICAJaW50ICgqbW9kZXNldF9jYWxjX2NkY2xrKShzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRl ICpzdGF0ZSk7Cj4gKwl1OCAoKmNhbGNfdm9sdGFnZV9sZXZlbCkoaW50IGNkY2xrKTsKPiAgCS8q IFJldHVybnMgdGhlIGFjdGl2ZSBzdGF0ZSBvZiB0aGUgY3J0YywgYW5kIGlmIHRoZSBjcnRjIGlz IGFjdGl2ZSwKPiAgCSAqIGZpbGxzIG91dCB0aGUgcGlwZS1jb25maWcgd2l0aCB0aGUgaHcgc3Rh dGUuICovCj4gIAlib29sICgqZ2V0X3BpcGVfY29uZmlnKShzdHJ1Y3QgaW50ZWxfY3J0YyAqLAo+ IC0tIAo+IDIuMjAuMQoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbApfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=