From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 3/4] drm/i915: New offset for reading frequencies on CHV. Date: Fri, 12 Dec 2014 21:09:41 +0200 Message-ID: <20141212190941.GB10649@intel.com> References: <1418374096-26561-1-git-send-email-deepak.s@linux.intel.com> <1418374096-26561-3-git-send-email-deepak.s@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id E37776E15C for ; Fri, 12 Dec 2014 11:09:44 -0800 (PST) Content-Disposition: inline In-Reply-To: <1418374096-26561-3-git-send-email-deepak.s@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: deepak.s@linux.intel.com Cc: daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBEZWMgMTIsIDIwMTQgYXQgMDI6MTg6MTVQTSArMDUzMCwgZGVlcGFrLnNAbGludXgu aW50ZWwuY29tIHdyb3RlOgo+IEZyb206IERlZXBhayBTIDxkZWVwYWsuc0BsaW51eC5pbnRlbC5j b20+Cj4gCj4gVXNlIG5ldyBTaWRlYmFuZCBvZmZzZXQgdG8gcmVhZCBtYXgvbWluL2dhdXIgZnJl cSBiYXNlZCBvbiB0aGUgU0tVIGl0Cj4gaXMgcnVubmluZyBvbi4gQmFzZWQgb24gdGhlIE51bWJl ciBvZiBFVSwgd2UgcmVhZCBkaWZmZXJlbnQgYml0cyB0bwo+IGlkZW50aWZ5IHRoZSBtYXggZnJl cXVlbmNpZXMgYXQgd2hpY2ggc3lzdGVtIGNhbiBydW4uCj4gCj4gU2lnbmVkLW9mZi1ieTogRGVl cGFrIFMgPGRlZXBhay5zQGxpbnV4LmludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaCAgICAgICB8ICA0ICstLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3JlZy5oICAgICAgIHwgMTIgKysrKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcG0uYyAgICAgICB8IDUyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCj4g IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3NpZGViYW5kLmMgfCAgNCArLS0KPiAgNCBmaWxl cyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKPiBpbmRleCBiNThiYWQ0Li4wNjkwZGZmIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCj4gQEAgLTMwMTYsOCArMzAxNiw4IEBAIGludCBzYW5keWJyaWRnZV9wY29k ZV9yZWFkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTMyIG1ib3gsIHUzMiAq dmFsCj4gIGludCBzYW5keWJyaWRnZV9wY29kZV93cml0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsIHUzMiBtYm94LCB1MzIgdmFsKTsKPiAgCj4gIC8qIGludGVsX3NpZGViYW5k LmMgKi8KPiAtdTMyIHZsdl9wdW5pdF9yZWFkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwgdTggYWRkcik7Cj4gLXZvaWQgdmx2X3B1bml0X3dyaXRlKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwgdTggYWRkciwgdTMyIHZhbCk7Cj4gK3UzMiB2bHZfcHVuaXRfcmVh ZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBhZGRyKTsKPiArdm9pZCB2 bHZfcHVuaXRfd3JpdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIgYWRk ciwgdTMyIHZhbCk7Cj4gIHUzMiB2bHZfbmNfcmVhZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsIHU4IGFkZHIpOwo+ICB1MzIgdmx2X2dwaW9fbmNfcmVhZChzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiByZWcpOwo+ICB2b2lkIHZsdl9ncGlvX25jX3dyaXRl KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTMyIHJlZywgdTMyIHZhbCk7Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gaW5kZXggYjU3Y2JhMy4uZjQxMjkwYyAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC02MDIsNiArNjAyLDE4IEBAIGVudW0gcHVuaXRfcG93 ZXJfd2VsbCB7Cj4gICNkZWZpbmUgUFVOSVRfRlVTRV9CVVMyCQkJCTB4ZjYgLyogYml0cyA0Nzo0 MCAqLwo+ICAjZGVmaW5lIFBVTklUX0ZVU0VfQlVTMQkJCQkweGY1IC8qIGJpdHMgNTU6NDggKi8K PiAgCj4gKyNkZWZpbmUgRkJfR0ZYX0ZNQVhfQVRfVk1BWF9GVVNFCQkweDEzNgo+ICsjZGVmaW5l IEZCX0dGWF9GTUFYX0FUX1ZNQVhfRlVTRV9NQVNLCQkweGZmCj4gKyNkZWZpbmUgRkJfR0ZYX0ZN QVhfQVRfVk1BWF8yU1M0RVVfRlVTRV9TSElGVAkyNAo+ICsjZGVmaW5lIEZCX0dGWF9GTUFYX0FU X1ZNQVhfMlNTNkVVX0ZVU0VfU0hJRlQJMTYKPiArI2RlZmluZSBGQl9HRlhfRk1BWF9BVF9WTUFY XzJTUzhFVV9GVVNFX1NISUZUCTgKPiArCgpUaGlzIGJsYW5rIGxpbmUgbWFrZXMgbWUgdGhpbmsg RkJfR0ZYX0dVQVJfRlJFUV9GVVNFX01BU0sgaXNuJ3QgcGFydCBvZgp0aGlzIHJlZ2lzdGVyLiBT byBiZXN0IG5vdCBsZWF2ZSBzdWNoIGJsYW5rIGxpbmUgaGVyZS4KCkkgaGF2ZSAweDNjM2MzYzI4 IGluIHRoaXMgcmVnaXN0ZXIsIHdoaWNoIG1hdGNoZXMgd2hhdCBJIGdldCB1c2luZyB0aGUKb2xk IG1ldGhvZC4KCj4gKyNkZWZpbmUgRkJfR0ZYX0dVQVJfRlJFUV9GVVNFX01BU0sJCTB4ZmYKPiAr Cj4gKyNkZWZpbmUgRkJfR0ZYX0ZNSU5fQVRfVk1JTl9GVVNFCQkweDEzNwo+ICsjZGVmaW5lIEZC X0dGWF9GTUlOX0FUX1ZNSU5fRlVTRV9NQVNLCQkweGZmCj4gKyNkZWZpbmUgRkJfR0ZYX0ZNSU5f QVRfVk1JTl9GVVNFX1NISUZUCQk4CgpJIGhhdmUgMHg2OTg0MTQyOCBoZXJlLiBUaGUgbG93IDgg Yml0cyBsb29rIGxpa2UgYW5vdGhlciBmcmVxIHZhbHVlLgpXaGF0IGlzIGl0PwoKSSBoYXZlIG5v IGRvY3MgZm9yIHRoaXMgc3R1ZmYgc28gY2FuJ3QgcmVhbGx5IHJldmlldyBhcGFydCBmcm9tIGxv b2tpbmcKYXQgd2hhdCBteSBoYXJkd2FyZSByZXBvcnRzLgoKCkFjdHVhbGx5LCBzaW5jZSBhbGwg dGhlIHZhbHVlcyBhcmUgOCBiaXRzIG1heWJlIGl0IHdvdWxkIGJlIG5lYXRlciB0bwpqdXN0CiNk ZWZpbmUgRkJfR0ZYX0ZSRVFfRlVTRV9NQVNLIDB4ZmYKYW5kIHVzZSB0aGF0IGV2ZXJ5d2hlcmUg aW5zdGVhZCBvZiBoYXZpbmcgdGhyZWUgZGlmZmVyZW50IGRlZmluaXRpb25zCmZvciB0aGUgc2Ft ZSAweGZmIHZhbHVlLgoKPiArCj4gICNkZWZpbmUgUFVOSVRfR1BVX1NUQVRVU19SRUcJCQkweGRi Cj4gICNkZWZpbmUgUFVOSVRfR1BVX1NUQVRVU19NQVhfRlJFUV9TSElGVAkxNgo+ICAjZGVmaW5l IFBVTklUX0dQVV9TVEFUVVNfTUFYX0ZSRVFfTUFTSwkJMHhmZgo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cG0uYwo+IGluZGV4IDJhY2IzZGUuLjcxYjhlMmYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcG0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Bt LmMKPiBAQCAtNDM0NiwxMSArNDM0NiwyOSBAQCB2b2lkIGdlbjZfdXBkYXRlX3JpbmdfZnJlcShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAKPiAgc3RhdGljIGludCBjaGVycnl2aWV3X3Jwc19t YXhfZnJlcShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIHsKPiArCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBkZXZfcHJpdi0+ZGV2Owo+ICsJc3RydWN0IGludGVsX2Rldmlj ZV9pbmZvICppbmZvOwo+ICAJdTMyIHZhbCwgcnAwOwo+ICAKPiAtCXZhbCA9IHZsdl9wdW5pdF9y ZWFkKGRldl9wcml2LCBQVU5JVF9HUFVfU1RBVFVTX1JFRyk7Cj4gLQlycDAgPSAodmFsID4+IFBV TklUX0dQVV9TVEFUVVNfTUFYX0ZSRVFfU0hJRlQpICYgUFVOSVRfR1BVX1NUQVRVU19NQVhfRlJF UV9NQVNLOwo+IC0KPiArCWluZm8gPSAoc3RydWN0IGludGVsX2RldmljZV9pbmZvICopJmRldl9w cml2LT5pbmZvOwoKUG9pbnRsZXNzIGNhc3QuIEFsc28gdGhlIGFzc2lnbm1lbnQgY291bGQgYmUg ZG9uZSB3aGVuIGRlY2xhcmluZyBpbmZvLAphbmQgd2UgdXN1YWxseSB1c2UgSU5URUxfSU5GTygp IHRvIGdldCBhdCBpdC4KCj4gKwo+ICsJaWYgKGRldi0+cGRldi0+cmV2aXNpb24gPj0gMHgyMCkg ewoKRG8gd2UgcmVhbGx5IG5lZWQgdGhpcyBjaGVjaz8gSSB3b3VsZCB0aGluayBpdCB3b3VsZCBi ZSB1cCB0byB0aGUKUHVuaXQgZmlybXdhcmUgdmVyc2lvbiByYXRoZXIgdGhlIHN0ZXBwaW5nLiBN eSBCU1cgaGFzIFBDSSByZXYgMHgxNSwKYnV0IHdpdGggdGhlIGxhdGVzdCBCSU9TIGJvdGggZnVz ZSByZWdpc3RlcnMgYWxyZWFkeSBjb250YWluIGNvcnJlY3QKbG9va2luZyBpbmZvcm1hdGlvbi4K Cj4gKwkJdmFsID0gdmx2X3B1bml0X3JlYWQoZGV2X3ByaXYsIEZCX0dGWF9GTUFYX0FUX1ZNQVhf RlVTRSk7Cj4gKwo+ICsJCWlmIChpbmZvLT5ldV90b3RhbCA9PSA4KSAvKiAoMiAqIDQpIGNvbmZp ZyAqLwo+ICsJCQlycDAgPSAodmFsID4+IEZCX0dGWF9GTUFYX0FUX1ZNQVhfMlNTNEVVX0ZVU0Vf U0hJRlQpOwo+ICsJCWVsc2UgaWYgKGluZm8tPmV1X3RvdGFsID09IDEyKSAvKiAoMiAqIDYpIGNv bmZpZyAqLwo+ICsJCQlycDAgPSAodmFsID4+IEZCX0dGWF9GTUFYX0FUX1ZNQVhfMlNTNkVVX0ZV U0VfU0hJRlQpOwo+ICsJCWVsc2UgaWYgKGluZm8tPmV1X3RvdGFsID09IDE2KSAvKiAoMiAqIDgp IGNvbmZpZyAqLwo+ICsJCQlycDAgPSAodmFsID4+IEZCX0dGWF9GTUFYX0FUX1ZNQVhfMlNTOEVV X0ZVU0VfU0hJRlQpOwo+ICsJCWVsc2UgLyogU2V0dGluZyAoMiAqIDgpIE1pbiBSUDAgZm9yIGFu eSBvdGhlciBjb21iaW5hdGlvbiAqLwo+ICsJCQlycDAgPSAodmFsID4+IEZCX0dGWF9GTUFYX0FU X1ZNQVhfMlNTOEVVX0ZVU0VfU0hJRlQpOwoKJ3N3aXRjaCAoSU5URUxfSU5GTyhkZXYpLT5ldV90 b3RhbCknIHBlcmhhcHM/Cgo+ICsJCXJwMCA9IChycDAgJiBGQl9HRlhfRk1BWF9BVF9WTUFYX0ZV U0VfTUFTSyk7Cj4gKwl9IGVsc2UgeyAvKiBGb3IgcHJlLXByb2R1Y3Rpb24gaGFyZHdhcmUgKi8K PiArCQl2YWwgPSB2bHZfcHVuaXRfcmVhZChkZXZfcHJpdiwgUFVOSVRfR1BVX1NUQVRVU19SRUcp Owo+ICsJCXJwMCA9ICh2YWwgPj4gUFVOSVRfR1BVX1NUQVRVU19NQVhfRlJFUV9TSElGVCkgJgo+ ICsJCSAgICAgICBQVU5JVF9HUFVfU1RBVFVTX01BWF9GUkVRX01BU0s7Cj4gKwl9Cj4gIAlyZXR1 cm4gcnAwOwo+ICB9Cj4gIAo+IEBAIC00MzY2LDIwICs0Mzg0LDQwIEBAIHN0YXRpYyBpbnQgY2hl cnJ5dmlld19ycHNfcnBlX2ZyZXEoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ ICAKPiAgc3RhdGljIGludCBjaGVycnl2aWV3X3Jwc19ndWFyX2ZyZXEoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQo+ICB7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2 X3ByaXYtPmRldjsKPiArCXN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyAqaW5mbzsKPiAgCXUzMiB2 YWwsIHJwMTsKPiAgCj4gLQl2YWwgPSB2bHZfcHVuaXRfcmVhZChkZXZfcHJpdiwgUFVOSVRfUkVH X0dQVV9GUkVRX1NUUyk7Cj4gLQlycDEgPSAodmFsID4+IFBVTklUX0dQVV9TVEFUVVNfTUFYX0ZS RVFfU0hJRlQpICYgUFVOSVRfR1BVX1NUQVRVU19NQVhfRlJFUV9NQVNLOwo+ICsJaW5mbyA9IChz dHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gKikmZGV2X3ByaXYtPmluZm87CgpVbnVzZWQgaGVyZS4K Cj4gIAo+ICsJaWYgKGRldi0+cGRldi0+cmV2aXNpb24gPj0gMHgyMCkgewoKPiArCQl2YWwgPSB2 bHZfcHVuaXRfcmVhZChkZXZfcHJpdiwgRkJfR0ZYX0ZNQVhfQVRfVk1BWF9GVVNFKTsKPiArCQly cDEgPSAodmFsICYgRkJfR0ZYX0dVQVJfRlJFUV9GVVNFX01BU0spOwo+ICsJfSBlbHNlIHsgLyog Rm9yIHByZS1wcm9kdWN0aW9uIGhhcmR3YXJlICovCj4gKwkJdmFsID0gdmx2X3B1bml0X3JlYWQo ZGV2X3ByaXYsIFBVTklUX1JFR19HUFVfRlJFUV9TVFMpOwo+ICsJCXJwMSA9ICgodmFsID4+IFBV TklUX0dQVV9TVEFUVVNfTUFYX0ZSRVFfU0hJRlQpICYKPiArCQkgICAgICAgUFVOSVRfR1BVX1NU QVRVU19NQVhfRlJFUV9NQVNLKTsKPiArCX0KPiAgCXJldHVybiBycDE7Cj4gIH0KPiAgCj4gIHN0 YXRpYyBpbnQgY2hlcnJ5dmlld19ycHNfbWluX2ZyZXEoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQo+ICB7Cj4gKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2X3ByaXYtPmRl djsKPiArCXN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyAqaW5mbzsKPiAgCXUzMiB2YWwsIHJwbjsK PiArCWluZm8gPSAoc3RydWN0IGludGVsX2RldmljZV9pbmZvICopJmRldl9wcml2LT5pbmZvOwoK VW51c2VkLgoKPiArCj4gKwlpZiAoZGV2LT5wZGV2LT5yZXZpc2lvbiA+PSAweDIwKSB7Cj4gKwkJ dmFsID0gdmx2X3B1bml0X3JlYWQoZGV2X3ByaXYsIEZCX0dGWF9GTUlOX0FUX1ZNSU5fRlVTRSk7 Cj4gKwkJcnBuID0gKCh2YWwgPj4gRkJfR0ZYX0ZNSU5fQVRfVk1JTl9GVVNFX1NISUZUKSAmCj4g KwkJICAgICAgIEZCX0dGWF9GTUlOX0FUX1ZNSU5fRlVTRV9NQVNLKTsKPiArCX0gZWxzZSB7IC8q IEZvciBwcmUtcHJvZHVjdGlvbiBoYXJkd2FyZSAqLwo+ICsJCXZhbCA9IHZsdl9wdW5pdF9yZWFk KGRldl9wcml2LCBQVU5JVF9HUFVfU1RBVFVTX1JFRyk7Cj4gKwkJcnBuID0gKCh2YWwgPj4gUFVO SVRfR1BVX1NUQVRJU19HRlhfTUlOX0ZSRVFfU0hJRlQpICYKPiArCQkgICAgICAgUFVOSVRfR1BV X1NUQVRVU19HRlhfTUlOX0ZSRVFfTUFTSyk7Cj4gKwl9Cj4gIAo+IC0JdmFsID0gdmx2X3B1bml0 X3JlYWQoZGV2X3ByaXYsIFBVTklUX0dQVV9TVEFUVVNfUkVHKTsKPiAtCXJwbiA9ICh2YWwgPj4g UFVOSVRfR1BVX1NUQVRJU19HRlhfTUlOX0ZSRVFfU0hJRlQpICYgUFVOSVRfR1BVX1NUQVRVU19H RlhfTUlOX0ZSRVFfTUFTSzsKPiAgCXJldHVybiBycG47Cj4gIH0KPiAgCj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3NpZGViYW5kLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9zaWRlYmFuZC5jCj4gaW5kZXggMDFkODQxZS4uM2M0MmVlZiAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zaWRlYmFuZC5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfc2lkZWJhbmQuYwo+IEBAIC03NSw3ICs3NSw3IEBAIHN0YXRp YyBpbnQgdmx2X3NpZGViYW5kX3J3KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwg dTMyIGRldmZuLAo+ICAJcmV0dXJuIDA7Cj4gIH0KPiAgCj4gLXUzMiB2bHZfcHVuaXRfcmVhZChz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHU4IGFkZHIpCj4gK3UzMiB2bHZfcHVu aXRfcmVhZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBhZGRyKQoKR29v ZCB0aGluZyB5b3UgaGFkIHRvIHBhc3MgYSBjb25zdGFudC4gT3RoZXJ3aXNlIHRoaXMgY291bGQg aGF2ZSBjYXVzZWQKcXVpdGUgYSBiaXQgb2YgaGVhZCBzY3JhdGNoaW5nIGZvciB5b3UgOykKCj4g IHsKPiAgCXUzMiB2YWwgPSAwOwo+ICAKPiBAQCAtODksNyArODksNyBAQCB1MzIgdmx2X3B1bml0 X3JlYWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1OCBhZGRyKQo+ICAJcmV0 dXJuIHZhbDsKPiAgfQo+ICAKPiAtdm9pZCB2bHZfcHVuaXRfd3JpdGUoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LCB1OCBhZGRyLCB1MzIgdmFsKQo+ICt2b2lkIHZsdl9wdW5pdF93 cml0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBhZGRyLCB1MzIgdmFs KQo+ICB7Cj4gIAlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJmRldl9wcml2LT5ycHMuaHdfbG9j aykpOwo+ICAKPiAtLSAKPiAxLjkuMQoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK