From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH v3 13/14] drm/i915: Replace the .modeset_commit_cdclk() hook with a more direct .set_cdclk() hook Date: Fri, 20 Jan 2017 20:22:04 +0200 Message-ID: <20170120182205.8141-14-ville.syrjala@linux.intel.com> References: <20170120182205.8141-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 mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id EFBB06EC5D for ; Fri, 20 Jan 2017 18:22:51 +0000 (UTC) In-Reply-To: <20170120182205.8141-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: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCldp dGggdGhlIGNkY2xrIHN0YXRlLCBhbGwgdGhlIC5tb2Rlc2V0X2NvbW1pdF9jZGNsaygpIGhvb2tz IGFyZQpub3cgcG9pbnRsZXNzIHdyYXBwZXJzLiBMZXQncyByZXBsYWNlIHRoZW0gd2l0aCBqdXN0 IGEgLnNldF9jZGNsaygpCmZ1bmN0aW9uIHBvaW50ZXIuIEhvd2V2ZXIgbGV0J3Mgd3JhcCB0aGF0 IGluIGEgc21hbGwgaGVscGVyIHRoYXQKZG9lcyB0aGUgc3RhdGUgY29tcGFyaXNvbiBhbmQgcHJp bnRzIGEgdW5pZmllZCBkZWJ1ZyBtZXNzYWdlIGFjcm9zcwphbGwgcGxhdGZvcm1zLiBXZSBkaWRu J3QgZXZlbiBoYXZlIHRoZSBkZWJ1ZyBwcmludCBvbiBhbGwgcGxhdGZvcm1zCnByZXZpb3VzbHku IFRoaXMgcmVkdWNlcyB0aGUgY2x1dHRlciBpbiBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoKSBh CmxpdHRsZSBiaXQuCgp2MjogV3JhcCAuc2V0X2NkY2xrKCkgaW4gaW50ZWxfc2V0X2NkY2xrKCkK djM6IEFkZCBrZXJuZWwtZG9jcwoKU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxs ZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IEFuZGVyIENvbnNlbHZhbiBk ZSBPbGl2ZWlyYSA8Y29uc2VsdmFuMkBnbWFpbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCAgICAgIHwgIDMgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Nk Y2xrLmMgICB8IDc5ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgIDUgKy0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgMiArCiA0IGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlv bnMoKyksIDUxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDQxYmRl ODBkNTgyMi4uOWNlNzk3YjcwOGY5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTYwNSw2 ICs2MDUsOCBAQCBzdHJ1Y3QgaW50ZWxfY2RjbGtfc3RhdGU7CiBzdHJ1Y3QgZHJtX2k5MTVfZGlz cGxheV9mdW5jcyB7CiAJdm9pZCAoKmdldF9jZGNsaykoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LAogCQkJICBzdHJ1Y3QgaW50ZWxfY2RjbGtfc3RhdGUgKmNkY2xrX3N0YXRlKTsK Kwl2b2lkICgqc2V0X2NkY2xrKShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJ CQkgIGNvbnN0IHN0cnVjdCBpbnRlbF9jZGNsa19zdGF0ZSAqY2RjbGtfc3RhdGUpOwogCWludCAo KmdldF9maWZvX3NpemUpKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgaW50IHBs YW5lKTsKIAlpbnQgKCpjb21wdXRlX3BpcGVfd20pKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpj c3RhdGUpOwogCWludCAoKmNvbXB1dGVfaW50ZXJtZWRpYXRlX3dtKShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LApAQCAtNjE5LDcgKzYyMSw2IEBAIHN0cnVjdCBkcm1faTkxNV9kaXNwbGF5X2Z1bmNz IHsKIAlpbnQgKCpjb21wdXRlX2dsb2JhbF93YXRlcm1hcmtzKShzdHJ1Y3QgZHJtX2F0b21pY19z dGF0ZSAqc3RhdGUpOwogCXZvaWQgKCp1cGRhdGVfd20pKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRj KTsKIAlpbnQgKCptb2Rlc2V0X2NhbGNfY2RjbGspKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpz dGF0ZSk7Ci0Jdm9pZCAoKm1vZGVzZXRfY29tbWl0X2NkY2xrKShzdHJ1Y3QgZHJtX2F0b21pY19z dGF0ZSAqc3RhdGUpOwogCS8qIFJldHVybnMgdGhlIGFjdGl2ZSBzdGF0ZSBvZiB0aGUgY3J0Yywg YW5kIGlmIHRoZSBjcnRjIGlzIGFjdGl2ZSwKIAkgKiBmaWxscyBvdXQgdGhlIHBpcGUtY29uZmln IHdpdGggdGhlIGh3IHN0YXRlLiAqLwogCWJvb2wgKCpnZXRfcGlwZV9jb25maWcpKHN0cnVjdCBp bnRlbF9jcnRjICosCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jZGNs ay5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY2RjbGsuYwppbmRleCA5MDFiNzJlYWU2 MjQuLjk0OTg1ZGI2ZTRlOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf Y2RjbGsuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jZGNsay5jCkBAIC04ODMs OSArODgzLDYgQEAgc3RhdGljIHZvaWQgc2tsX3NldF9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCiAKIAlXQVJOX09OKChjZGNsayA9PSAyNDAwMCkgIT0gKHZjbyA9PSAw KSk7CiAKLQlEUk1fREVCVUdfRFJJVkVSKCJDaGFuZ2luZyBDRENMSyB0byAlZCBrSHogKFZDTyAl ZCBrSHopXG4iLAotCQkJIGNkY2xrLCB2Y28pOwotCiAJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPnJw cy5od19sb2NrKTsKIAlyZXQgPSBza2xfcGNvZGVfcmVxdWVzdChkZXZfcHJpdiwgU0tMX1BDT0RF X0NEQ0xLX0NPTlRST0wsCiAJCQkJU0tMX0NEQ0xLX1BSRVBBUkVfRk9SX0NIQU5HRSwKQEAgLTEy MDIsOSArMTE5OSw2IEBAIHN0YXRpYyB2b2lkIGJ4dF9zZXRfY2RjbGsoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAogCXUzMiB2YWwsIGRpdmlkZXI7CiAJaW50IHJldDsKIAotCURS TV9ERUJVR19EUklWRVIoIkNoYW5naW5nIENEQ0xLIHRvICVkIGtIeiAoVkNPICVkIGtIeilcbiIs Ci0JCQkgY2RjbGssIHZjbyk7Ci0KIAkvKiBjZGNsayA9IHZjbyAvIDIgLyBkaXZ7MSwxLjUsMiw0 fSAqLwogCXN3aXRjaCAoRElWX1JPVU5EX0NMT1NFU1QodmNvLCBjZGNsaykpIHsKIAljYXNlIDg6 CkBAIC0xMzkwLDYgKzEzODQsMzAgQEAgYm9vbCBpbnRlbF9jZGNsa19zdGF0ZV9jb21wYXJlKGNv bnN0IHN0cnVjdCBpbnRlbF9jZGNsa19zdGF0ZSAqYSwKIAlyZXR1cm4gbWVtY21wKGEsIGIsIHNp emVvZigqYSkpID09IDA7CiB9CiAKKy8qKgorICogaW50ZWxfc2V0X2NkY2xrIC0gUHVzaCB0aGUg Q0RDTEsgc3RhdGUgdG8gdGhlIGhhcmR3YXJlCisgKiBAZGV2X3ByaXY6IGk5MTUgZGV2aWNlCisg KiBAY2RjbGtfc3RhdGU6IG5ldyBDRENMSyBzdGF0ZQorICoKKyAqIFByb2dyYW0gdGhlIGhhcmR3 YXJlIGJhc2VkIG9uIHRoZSBwYXNzZWQgaW4gQ0RDTEsgc3RhdGUsCisgKiBpZiBuZWNlc3Nhcnku CisgKi8KK3ZvaWQgaW50ZWxfc2V0X2NkY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwKKwkJICAgICBjb25zdCBzdHJ1Y3QgaW50ZWxfY2RjbGtfc3RhdGUgKmNkY2xrX3N0YXRl KQoreworCWlmIChpbnRlbF9jZGNsa19zdGF0ZV9jb21wYXJlKCZkZXZfcHJpdi0+Y2RjbGsuaHcs IGNkY2xrX3N0YXRlKSkKKwkJcmV0dXJuOworCisJaWYgKFdBUk5fT05fT05DRSghZGV2X3ByaXYt PmRpc3BsYXkuc2V0X2NkY2xrKSkKKwkJcmV0dXJuOworCisJRFJNX0RFQlVHX0RSSVZFUigiQ2hh bmdpbmcgQ0RDTEsgdG8gJWQga0h6LCBWQ08gJWQga0h6LCByZWYgJWQga0h6XG4iLAorCQkJIGNk Y2xrX3N0YXRlLT5jZGNsaywgY2RjbGtfc3RhdGUtPnZjbywKKwkJCSBjZGNsa19zdGF0ZS0+cmVm KTsKKworCWRldl9wcml2LT5kaXNwbGF5LnNldF9jZGNsayhkZXZfcHJpdiwgY2RjbGtfc3RhdGUp OworfQorCiBzdGF0aWMgaW50IGJkd19hZGp1c3RfbWluX3BpcGVfcGl4ZWxfcmF0ZShzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKIAkJCQkJICBpbnQgcGl4ZWxfcmF0ZSkKIHsK QEAgLTE0ODQsMTYgKzE1MDIsNiBAQCBzdGF0aWMgaW50IHZsdl9tb2Rlc2V0X2NhbGNfY2RjbGso c3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQogCXJldHVybiAwOwogfQogCi1zdGF0aWMg dm9pZCB2bHZfbW9kZXNldF9jb21taXRfY2RjbGsoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKm9s ZF9zdGF0ZSkKLXsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1 KG9sZF9zdGF0ZS0+ZGV2KTsKLQotCWlmIChJU19DSEVSUllWSUVXKGRldl9wcml2KSkKLQkJY2h2 X3NldF9jZGNsayhkZXZfcHJpdiwgJmRldl9wcml2LT5jZGNsay5hY3R1YWwpOwotCWVsc2UKLQkJ dmx2X3NldF9jZGNsayhkZXZfcHJpdiwgJmRldl9wcml2LT5jZGNsay5hY3R1YWwpOwotfQotCiBz dGF0aWMgaW50IGJkd19tb2Rlc2V0X2NhbGNfY2RjbGsoc3RydWN0IGRybV9hdG9taWNfc3RhdGUg KnN0YXRlKQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUo c3RhdGUtPmRldik7CkBAIC0xNTI3LDEzICsxNTM1LDYgQEAgc3RhdGljIGludCBiZHdfbW9kZXNl dF9jYWxjX2NkY2xrKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKIAlyZXR1cm4gMDsK IH0KIAotc3RhdGljIHZvaWQgYmR3X21vZGVzZXRfY29tbWl0X2NkY2xrKHN0cnVjdCBkcm1fYXRv bWljX3N0YXRlICpvbGRfc3RhdGUpCi17Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShvbGRfc3RhdGUtPmRldik7Ci0KLQliZHdfc2V0X2NkY2xrKGRldl9wcml2 LCAmZGV2X3ByaXYtPmNkY2xrLmFjdHVhbCk7Ci19Ci0KIHN0YXRpYyBpbnQgc2tsX21vZGVzZXRf Y2FsY19jZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiB7CiAJc3RydWN0IGlu dGVsX2F0b21pY19zdGF0ZSAqaW50ZWxfc3RhdGUgPSB0b19pbnRlbF9hdG9taWNfc3RhdGUoc3Rh dGUpOwpAQCAtMTU3MywxMyArMTU3NCw2IEBAIHN0YXRpYyBpbnQgc2tsX21vZGVzZXRfY2FsY19j ZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAJcmV0dXJuIDA7CiB9CiAKLXN0 YXRpYyB2b2lkIHNrbF9tb2Rlc2V0X2NvbW1pdF9jZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0 ZSAqb2xkX3N0YXRlKQotewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUob2xkX3N0YXRlLT5kZXYpOwotCi0Jc2tsX3NldF9jZGNsayhkZXZfcHJpdiwgJmRldl9w cml2LT5jZGNsay5hY3R1YWwpOwotfQotCiBzdGF0aWMgaW50IGJ4dF9tb2Rlc2V0X2NhbGNfY2Rj bGsoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQogewogCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoc3RhdGUtPmRldik7CkBAIC0xNjI0LDEzICsxNjE4 LDYgQEAgc3RhdGljIGludCBieHRfbW9kZXNldF9jYWxjX2NkY2xrKHN0cnVjdCBkcm1fYXRvbWlj X3N0YXRlICpzdGF0ZSkKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIHZvaWQgYnh0X21vZGVzZXRf Y29tbWl0X2NkY2xrKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpCi17Ci0Jc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShvbGRfc3RhdGUtPmRldik7 Ci0KLQlieHRfc2V0X2NkY2xrKGRldl9wcml2LCAmZGV2X3ByaXYtPmNkY2xrLmFjdHVhbCk7Ci19 Ci0KIHN0YXRpYyBpbnQgaW50ZWxfY29tcHV0ZV9tYXhfZG90Y2xrKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKIHsKIAlpbnQgbWF4X2NkY2xrX2ZyZXEgPSBkZXZfcHJpdi0+bWF4 X2NkY2xrX2ZyZXE7CkBAIC0xODEwLDI0ICsxNzk3LDI0IEBAIHZvaWQgaW50ZWxfdXBkYXRlX3Jh d2NsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAgKi8KIHZvaWQgaW50ZWxf aW5pdF9jZGNsa19ob29rcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7Ci0J aWYgKElTX1ZBTExFWVZJRVcoZGV2X3ByaXYpIHx8IElTX0NIRVJSWVZJRVcoZGV2X3ByaXYpKSB7 Ci0JCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY29tbWl0X2NkY2xrID0KLQkJCXZsdl9tb2Rl c2V0X2NvbW1pdF9jZGNsazsKKwlpZiAoSVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpIHsKKwkJZGV2 X3ByaXYtPmRpc3BsYXkuc2V0X2NkY2xrID0gY2h2X3NldF9jZGNsazsKKwkJZGV2X3ByaXYtPmRp c3BsYXkubW9kZXNldF9jYWxjX2NkY2xrID0KKwkJCXZsdl9tb2Rlc2V0X2NhbGNfY2RjbGs7CisJ fSBlbHNlIGlmIChJU19WQUxMRVlWSUVXKGRldl9wcml2KSkgeworCQlkZXZfcHJpdi0+ZGlzcGxh eS5zZXRfY2RjbGsgPSB2bHZfc2V0X2NkY2xrOwogCQlkZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0 X2NhbGNfY2RjbGsgPQogCQkJdmx2X21vZGVzZXRfY2FsY19jZGNsazsKIAl9IGVsc2UgaWYgKElT X0JST0FEV0VMTChkZXZfcHJpdikpIHsKLQkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jb21t aXRfY2RjbGsgPQotCQkJYmR3X21vZGVzZXRfY29tbWl0X2NkY2xrOworCQlkZXZfcHJpdi0+ZGlz cGxheS5zZXRfY2RjbGsgPSBiZHdfc2V0X2NkY2xrOwogCQlkZXZfcHJpdi0+ZGlzcGxheS5tb2Rl c2V0X2NhbGNfY2RjbGsgPQogCQkJYmR3X21vZGVzZXRfY2FsY19jZGNsazsKIAl9IGVsc2UgaWYg KElTX0dFTjlfTFAoZGV2X3ByaXYpKSB7Ci0JCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY29t bWl0X2NkY2xrID0KLQkJCWJ4dF9tb2Rlc2V0X2NvbW1pdF9jZGNsazsKKwkJZGV2X3ByaXYtPmRp c3BsYXkuc2V0X2NkY2xrID0gYnh0X3NldF9jZGNsazsKIAkJZGV2X3ByaXYtPmRpc3BsYXkubW9k ZXNldF9jYWxjX2NkY2xrID0KIAkJCWJ4dF9tb2Rlc2V0X2NhbGNfY2RjbGs7CiAJfSBlbHNlIGlm IChJU19TS1lMQUtFKGRldl9wcml2KSB8fCBJU19LQUJZTEFLRShkZXZfcHJpdikpIHsKLQkJZGV2 X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jb21taXRfY2RjbGsgPQotCQkJc2tsX21vZGVzZXRfY29t bWl0X2NkY2xrOworCQlkZXZfcHJpdi0+ZGlzcGxheS5zZXRfY2RjbGsgPSBza2xfc2V0X2NkY2xr OwogCQlkZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2RjbGsgPQogCQkJc2tsX21vZGVz ZXRfY2FsY19jZGNsazsKIAl9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXgg NjMzM2YxYTc0MTY2Li5kNGM3MmQxOTExOGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKQEAgLTEyODI2LDEwICsxMjgyNiw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2F0b21pY19j b21taXRfdGFpbChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAJaWYgKGludGVsX3N0 YXRlLT5tb2Rlc2V0KSB7CiAJCWRybV9hdG9taWNfaGVscGVyX3VwZGF0ZV9sZWdhY3lfbW9kZXNl dF9zdGF0ZShzdGF0ZS0+ZGV2LCBzdGF0ZSk7CiAKLQkJaWYgKGRldl9wcml2LT5kaXNwbGF5Lm1v ZGVzZXRfY29tbWl0X2NkY2xrICYmCi0JCSAgICAhaW50ZWxfY2RjbGtfc3RhdGVfY29tcGFyZSgm ZGV2X3ByaXYtPmNkY2xrLmh3LAotCQkJCQkgICAgICAgJmRldl9wcml2LT5jZGNsay5hY3R1YWwp KQotCQkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jb21taXRfY2RjbGsoc3RhdGUpOworCQlp bnRlbF9zZXRfY2RjbGsoZGV2X3ByaXYsICZkZXZfcHJpdi0+Y2RjbGsuYWN0dWFsKTsKIAogCQkv KgogCQkgKiBTS0wgd29ya2Fyb3VuZDogYnNwZWMgcmVjb21tZW5kcyB3ZSBkaXNhYmxlIHRoZSBT QUdWIHdoZW4gd2UKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5o IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggYThmMDFkNDRiYmZlLi4z ZjQxMWQ0MGQxZWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCkBAIC0xMjQzLDYgKzEyNDMs OCBAQCB2b2lkIGludGVsX3VwZGF0ZV9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpOwogdm9pZCBpbnRlbF91cGRhdGVfcmF3Y2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdik7CiBib29sIGludGVsX2NkY2xrX3N0YXRlX2NvbXBhcmUoY29uc3Qgc3RydWN0 IGludGVsX2NkY2xrX3N0YXRlICphLAogCQkJICAgICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9jZGNs a19zdGF0ZSAqYik7Cit2b2lkIGludGVsX3NldF9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCisJCSAgICAgY29uc3Qgc3RydWN0IGludGVsX2NkY2xrX3N0YXRlICpjZGNs a19zdGF0ZSk7CiAKIC8qIGludGVsX2Rpc3BsYXkuYyAqLwogZW51bSB0cmFuc2NvZGVyIGludGVs X2NydGNfcGNoX3RyYW5zY29kZXIoc3RydWN0IGludGVsX2NydGMgKmNydGMpOwotLSAKMi4xMC4y CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK