From mboxrd@z Thu Jan 1 00:00:00 1970 From: clinton.a.taylor@intel.com Subject: [PATCH V7] drm/i915/skl: SKL CDCLK change on modeset tracking VCO Date: Tue, 16 Feb 2016 09:44:55 -0800 Message-ID: <1455644695-25174-1-git-send-email-clinton.a.taylor@intel.com> References: <1449620105-32754-1-git-send-email-clinton.a.taylor@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 6F2106E803 for ; Tue, 16 Feb 2016 17:48:27 +0000 (UTC) In-Reply-To: <1449620105-32754-1-git-send-email-clinton.a.taylor@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 RnJvbTogQ2xpbnQgVGF5bG9yIDxjbGludG9uLmEudGF5bG9yQGludGVsLmNvbT4KClNldCBjZGNs ayBiYXNlZCBvbiB0aGUgbWF4IHJlcXVpcmVkIHBpeGVsIGNsb2NrIGJhc2VkIG9uIFZDTwpzZWxl Y3RlZC4gVHJhY2sgYm9vdCB2Y28gaW5zdGVhZCBvZiBib290IGNkY2xrLgoKVGhlIHZjbyBpcyBu b3cgdHJhY2tlZCBhdCB0aGUgYXRvbWljIGxldmVsIGFuZCBhbGwgQ1JUQ3MgdXBkYXRlZCBpZgp0 aGUgcmVxdWlyZWQgdmNvIGlzIGNoYW5nZWQuIE5vdCB0ZXN0ZWQgd2l0aCBlRFAgdjEuNCBwYW5l bHMgdGhhdApyZXF1aXJlIDg2NDAgdmNvIGR1ZSB0byBhdmFpbGFiaWxpdHkuCgpWMTogaW5pdGlh bCB2ZXJzaW9uClYyOiBhZGQgdmNvIHRyYWNraW5nIGluIGludGVsX2RwX2NvbXB1dGVfY29uZmln KCksIHJlbmFtZQpza2xfYm9vdF9jZGNsay4KVjM6IHJlYmFzZSwgVjIgZmVlZGJhY2sgbm90IHBv c3NpYmxlIGFzIGVuY29kZXJzIGFyZSBub3QgYXdhcmUgb2YKYXRvbWljLgpWNDogdHJhY2sgdGFy Z2V0IHZjbyBpcyBhdG9taWMgc3RhdGUuIG1vZGVzZXQgYWxsIENSVENzIGlmIHZjbyBjaGFuZ2Vz ClY1OiByZW5hbWUgYXRvbWljIHZhcmlhYmxlLCBjbGVhbmVyIGlmL2Vsc2UgbG9naWMsIHVzZSBl eGlzdGluZyB2Y28gaWYKICAgIGVuY29kZXIgZG9lcyBub3QgcmV0dXJuIGEgbmV3IHZjbyB2YWx1 ZS4gY2hlY2tfcGF0Y2gucGwgY2xlYW51cApWNjogc2ltcGxpZnkgbG9naWMgaW4gaW50ZWxfbW9k ZXNldF9jaGVja3MuClY3OiByZW9yZGVyIGFuIElGIGZvciByZWFkYWJpbGl0eSBhbmQgd2hpdGVz cGFjZSBmaXguCgpTaWduZWQtb2ZmLWJ5OiBDbGludCBUYXlsb3IgPGNsaW50b24uYS50YXlsb3JA aW50ZWwuY29tPgpDYzogVmlsbGUgPT9pc28tODg1OS0xP1E/U3lyaj1FNGw9RTQ/PSA8dmlsbGUu c3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCAgICAgIHwgICAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMgICAg IHwgICAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIHwgIDEwMiAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcC5jICAgICAgfCAgICA2ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aCAgICAgfCAgICA0ICsrCiA1IGZpbGVzIGNoYW5nZWQsIDk5IGluc2VydGlvbnMoKyksIDE3IGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDgyMTY2NjUuLmY2NWRkMWEg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTgyMiw3ICsxODIyLDcgQEAgc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgewogCWludCBudW1fZmVuY2VfcmVnczsgLyogOCBvbiBwcmUtOTY1LCAx NiBvdGhlcndpc2UgKi8KIAogCXVuc2lnbmVkIGludCBmc2JfZnJlcSwgbWVtX2ZyZXEsIGlzX2Rk cjM7Ci0JdW5zaWduZWQgaW50IHNrbF9ib290X2NkY2xrOworCXVuc2lnbmVkIGludCBza2xfdmNv X2ZyZXE7CiAJdW5zaWduZWQgaW50IGNkY2xrX2ZyZXEsIG1heF9jZGNsa19mcmVxLCBhdG9taWNf Y2RjbGtfZnJlcTsKIAl1bnNpZ25lZCBpbnQgbWF4X2RvdGNsa19mcmVxOwogCXVuc2lnbmVkIGlu dCBocGxsX2ZyZXE7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kZGku YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCmluZGV4IDZkNWIwOWYuLjI4NWFk YWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCkBAIC0yOTU4LDcgKzI5NTgsNyBAQCB2b2lk IGludGVsX2RkaV9wbGxfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQlpbnQgY2RjbGtf ZnJlcTsKIAogCQljZGNsa19mcmVxID0gZGV2X3ByaXYtPmRpc3BsYXkuZ2V0X2Rpc3BsYXlfY2xv Y2tfc3BlZWQoZGV2KTsKLQkJZGV2X3ByaXYtPnNrbF9ib290X2NkY2xrID0gY2RjbGtfZnJlcTsK KwkJZGV2X3ByaXYtPnNrbF92Y29fZnJlcSA9IHNrbF9jZGNsa19nZXRfdmNvKGNkY2xrX2ZyZXEp OwogCQlpZiAoc2tsX3Nhbml0aXplX2NkY2xrKGRldl9wcml2KSkKIAkJCURSTV9ERUJVR19LTVMo IlNhbml0aXplZCBjZGNsayBwcm9ncmFtbWVkIGJ5IHByZS1vc1xuIik7CiAJCWlmICghKEk5MTVf UkVBRChMQ1BMTDFfQ1RMKSAmIExDUExMX1BMTF9FTkFCTEUpKQpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfZGlzcGxheS5jCmluZGV4IDllMjI3M2IuLmUxMThjZTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMKQEAgLTU2NjMsNyArNTY2Myw3IEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQg c2tsX2NkY2xrX2RlY2ltYWwodW5zaWduZWQgaW50IGZyZXEpCiAJcmV0dXJuIChmcmVxIC0gMTAw MCkgLyA1MDA7CiB9CiAKLXN0YXRpYyB1bnNpZ25lZCBpbnQgc2tsX2NkY2xrX2dldF92Y28odW5z aWduZWQgaW50IGZyZXEpCit1bnNpZ25lZCBpbnQgc2tsX2NkY2xrX2dldF92Y28odW5zaWduZWQg aW50IGZyZXEpCiB7CiAJdW5zaWduZWQgaW50IGk7CiAKQEAgLTU4MjEsMTcgKzU4MjEsMjEgQEAg dm9pZCBza2xfdW5pbml0X2NkY2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK IAogdm9pZCBza2xfaW5pdF9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYp CiB7Ci0JdW5zaWduZWQgaW50IHJlcXVpcmVkX3ZjbzsKKwl1bnNpZ25lZCBpbnQgY2RjbGs7CiAK IAkvKiBEUExMMCBub3QgZW5hYmxlZCAoaGFwcGVucyBvbiBlYXJseSBCSU9TIHZlcnNpb25zKSAq LwogCWlmICghKEk5MTVfUkVBRChMQ1BMTDFfQ1RMKSAmIExDUExMX1BMTF9FTkFCTEUpKSB7CiAJ CS8qIGVuYWJsZSBEUExMMCAqLwotCQlyZXF1aXJlZF92Y28gPSBza2xfY2RjbGtfZ2V0X3Zjbyhk ZXZfcHJpdi0+c2tsX2Jvb3RfY2RjbGspOwotCQlza2xfZHBsbDBfZW5hYmxlKGRldl9wcml2LCBy ZXF1aXJlZF92Y28pOworCQlpZiAoZGV2X3ByaXYtPnNrbF92Y29fZnJlcSAhPSA4NjQwKQorCQkJ ZGV2X3ByaXYtPnNrbF92Y29fZnJlcSA9IDgxMDA7CisJCXNrbF9kcGxsMF9lbmFibGUoZGV2X3By aXYsIGRldl9wcml2LT5za2xfdmNvX2ZyZXEpOworCQljZGNsayA9ICgoZGV2X3ByaXYtPnNrbF92 Y29fZnJlcSA9PSA4MTAwKSA/IDMzNzUwMCA6IDMwODU3MCk7CisJfSBlbHNlIHsKKwkJY2RjbGsg PSBkZXZfcHJpdi0+Y2RjbGtfZnJlcTsKIAl9CiAKLQkvKiBzZXQgQ0RDTEsgdG8gdGhlIGZyZXF1 ZW5jeSB0aGUgQklPUyBjaG9zZSAqLwotCXNrbF9zZXRfY2RjbGsoZGV2X3ByaXYsIGRldl9wcml2 LT5za2xfYm9vdF9jZGNsayk7CisJLyogc2V0IENEQ0xLIHRvIHRoZSBsb3dlc3QgZnJlcXVlbmN5 LCBNb2Rlc2V0IGZvbGxvd3MgKi8KKwlza2xfc2V0X2NkY2xrKGRldl9wcml2LCBjZGNsayk7CiAK IAkvKiBlbmFibGUgREJVRiBwb3dlciAqLwogCUk5MTVfV1JJVEUoREJVRl9DVEwsIEk5MTVfUkVB RChEQlVGX0NUTCkgfCBEQlVGX1BPV0VSX1JFUVVFU1QpOwpAQCAtNTg0Nyw3ICs1ODUxLDcgQEAg aW50IHNrbF9zYW5pdGl6ZV9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYp CiB7CiAJdWludDMyX3QgbGNwbGwxID0gSTkxNV9SRUFEKExDUExMMV9DVEwpOwogCXVpbnQzMl90 IGNkY3RsID0gSTkxNV9SRUFEKENEQ0xLX0NUTCk7Ci0JaW50IGZyZXEgPSBkZXZfcHJpdi0+c2ts X2Jvb3RfY2RjbGs7CisJaW50IGZyZXEgPSBkZXZfcHJpdi0+Y2RjbGtfZnJlcTsKIAogCS8qCiAJ ICogY2hlY2sgaWYgdGhlIHByZS1vcyBpbnRpYWxpemVkIHRoZSBkaXNwbGF5CkBAIC01ODcxLDEx ICs1ODc1LDcgQEAgaW50IHNrbF9zYW5pdGl6ZV9jZGNsayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiAJCS8qIEFsbCB3ZWxsOyBub3RoaW5nIHRvIHNhbml0aXplICovCiAJCXJl dHVybiBmYWxzZTsKIHNhbml0aXplOgotCS8qCi0JICogQXMgb2Ygbm93IGluaXRpYWxpemUgd2l0 aCBtYXggY2RjbGsgdGlsbAotCSAqIHdlIGdldCBkeW5hbWljIGNkY2xrIHN1cHBvcnQKLQkgKiAq LwotCWRldl9wcml2LT5za2xfYm9vdF9jZGNsayA9IGRldl9wcml2LT5tYXhfY2RjbGtfZnJlcTsK KwogCXNrbF9pbml0X2NkY2xrKGRldl9wcml2KTsKIAogCS8qIHdlIGRpZCBoYXZlIHRvIHNhbml0 aXplICovCkBAIC05ODQ1LDYgKzk4NDUsNjggQEAgc3RhdGljIHZvaWQgYnJvYWR3ZWxsX21vZGVz ZXRfY29tbWl0X2NkY2xrKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpCiAJYnJv YWR3ZWxsX3NldF9jZGNsayhkZXYsIHJlcV9jZGNsayk7CiB9CiAKK3N0YXRpYyBpbnQgc2tsX21v ZGVzZXRfY2FsY19jZGNsayhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCit7CisJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShzdGF0ZS0+ZGV2KTsKKwlj b25zdCBpbnQgbWF4X3BpeGNsayA9IGlsa19tYXhfcGl4ZWxfcmF0ZShzdGF0ZSk7CisJaW50IGNk Y2xrOworCisJLyoKKwkgKiBGSVhNRSBzaG91bGQgYWxzbyBhY2NvdW50IGZvciBwbGFuZSByYXRp bworCSAqIG9uY2UgNjRicHAgcGl4ZWwgZm9ybWF0cyBhcmUgc3VwcG9ydGVkLgorCSAqLworCisJ aWYgKHRvX2ludGVsX2F0b21pY19zdGF0ZShzdGF0ZSktPmNkY2xrX3BsbF92Y28gPT0gODY0MCkg eworCQkvKiB2Y28gODY0MCAqLworCQlpZiAobWF4X3BpeGNsayA+IDU0MDAwMCkKKwkJCWNkY2xr ID0gNjE3MTQwOworCQllbHNlIGlmIChtYXhfcGl4Y2xrID4gNDMyMDAwKQorCQkJY2RjbGsgPSA1 NDAwMDA7CisJCWVsc2UgaWYgKG1heF9waXhjbGsgPiAzMDg1NzApCisJCQljZGNsayA9IDQzMjAw MDsKKwkJZWxzZQorCQkJY2RjbGsgPSAzMDg1NzA7CisJfSBlbHNlIHsKKwkJLyogVkNPIDgxMDAg Ki8KKwkJaWYgKG1heF9waXhjbGsgPiA1NDAwMDApCisJCQljZGNsayA9IDY3NTAwMDsKKwkJZWxz ZSBpZiAobWF4X3BpeGNsayA+IDQ1MDAwMCkKKwkJCWNkY2xrID0gNTQwMDAwOworCQllbHNlIGlm IChtYXhfcGl4Y2xrID4gMzM3NTAwKQorCQkJY2RjbGsgPSA0NTAwMDA7CisJCWVsc2UKKwkJCWNk Y2xrID0gMzM3NTAwOworCX0KKworCS8qCisJICogRklYTUUgbW92ZSB0aGUgY2RjbGsgY2FjbHVs YXRpb24gdG8KKwkgKiBjb21wdXRlX2NvbmZpZygpIHNvIHdlIGNhbiBmYWlsIGdyYWNlZ3VsbHku CisJICovCisJaWYgKGNkY2xrID4gZGV2X3ByaXYtPm1heF9jZGNsa19mcmVxKSB7CisJCURSTV9F UlJPUigicmVxdWVzdGVkIGNkY2xrICglZCBrSHopIGV4Y2VlZHMgbWF4ICglZCBrSHopXG4iLAor CQkJICBjZGNsaywgZGV2X3ByaXYtPm1heF9jZGNsa19mcmVxKTsKKwkJY2RjbGsgPSBkZXZfcHJp di0+bWF4X2NkY2xrX2ZyZXE7CisJfQorCisJdG9faW50ZWxfYXRvbWljX3N0YXRlKHN0YXRlKS0+ Y2RjbGsgPSBjZGNsazsKKworCXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBza2xfbW9kZXNl dF9jb21taXRfY2RjbGsoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKm9sZF9zdGF0ZSkKK3sKKwlz dHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gb2xkX3N0YXRlLT5kZXY7CisJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKwl1bnNpZ25lZCBpbnQgcmVx X2NkY2xrID0gdG9faW50ZWxfYXRvbWljX3N0YXRlKG9sZF9zdGF0ZSktPmNkY2xrOworCisJLyoK KwkgKiBGSVhNRSBkaXNhYmxlL2VuYWJsZSBQTEwgc2hvdWxkIHdyYXAgc2V0X2NkY2xrKCkKKwkg Ki8KKwlza2xfc2V0X2NkY2xrKGRldl9wcml2LCByZXFfY2RjbGspOworCisJZGV2X3ByaXYtPnNr bF92Y29fZnJlcSA9IHRvX2ludGVsX2F0b21pY19zdGF0ZShvbGRfc3RhdGUpLT5jZGNsa19wbGxf dmNvOworfQorCiBzdGF0aWMgaW50IGhhc3dlbGxfY3J0Y19jb21wdXRlX2Nsb2NrKHN0cnVjdCBp bnRlbF9jcnRjICpjcnRjLAogCQkJCSAgICAgIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRj X3N0YXRlKQogewpAQCAtMTMyNDgsOSArMTMzMTAsMTUgQEAgc3RhdGljIGludCBpbnRlbF9tb2Rl c2V0X2NoZWNrcyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCiAJICogYWRqdXN0ZWRf bW9kZSBiaXRzIGluIHRoZSBjcnRjIGRpcmVjdGx5LgogCSAqLwogCWlmIChkZXZfcHJpdi0+ZGlz cGxheS5tb2Rlc2V0X2NhbGNfY2RjbGspIHsKKwkJaWYgKCFpbnRlbF9zdGF0ZS0+Y2RjbGtfcGxs X3ZjbykKKwkJCWludGVsX3N0YXRlLT5jZGNsa19wbGxfdmNvID0gZGV2X3ByaXYtPnNrbF92Y29f ZnJlcTsKKwogCQlyZXQgPSBkZXZfcHJpdi0+ZGlzcGxheS5tb2Rlc2V0X2NhbGNfY2RjbGsoc3Rh dGUpOworCQlpZiAocmV0IDwgMCkKKwkJCXJldHVybiByZXQ7CiAKLQkJaWYgKCFyZXQgJiYgaW50 ZWxfc3RhdGUtPmRldl9jZGNsayAhPSBkZXZfcHJpdi0+Y2RjbGtfZnJlcSkKKwkJaWYgKGludGVs X3N0YXRlLT5kZXZfY2RjbGsgIT0gZGV2X3ByaXYtPmNkY2xrX2ZyZXEgfHwKKwkJICAgIGludGVs X3N0YXRlLT5jZGNsa19wbGxfdmNvICE9IGRldl9wcml2LT5za2xfdmNvX2ZyZXEpCiAJCQlyZXQg PSBpbnRlbF9tb2Rlc2V0X2FsbF9waXBlcyhzdGF0ZSk7CiAKIAkJaWYgKHJldCA8IDApCkBAIC0x NTAwMiw2ICsxNTA3MCwxMSBAQCBzdGF0aWMgdm9pZCBpbnRlbF9pbml0X2Rpc3BsYXkoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKIAkJCWJyb3h0b25fbW9kZXNldF9jb21taXRfY2RjbGs7CiAJCWRl dl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY2FsY19jZGNsayA9CiAJCQlicm94dG9uX21vZGVzZXRf Y2FsY19jZGNsazsKKwl9IGVsc2UgaWYgKElTX1NLWUxBS0UoZGV2KSB8fCBJU19LQUJZTEFLRShk ZXYpKSB7CisJCWRldl9wcml2LT5kaXNwbGF5Lm1vZGVzZXRfY29tbWl0X2NkY2xrID0KKwkJCXNr bF9tb2Rlc2V0X2NvbW1pdF9jZGNsazsKKwkJZGV2X3ByaXYtPmRpc3BsYXkubW9kZXNldF9jYWxj X2NkY2xrID0KKwkJCXNrbF9tb2Rlc2V0X2NhbGNfY2RjbGs7CiAJfQogCiAJc3dpdGNoIChJTlRF TF9JTkZPKGRldiktPmdlbikgewpAQCAtMTU3MjUsNyArMTU3OTgsOCBAQCBzdGF0aWMgdm9pZCBp bnRlbF9tb2Rlc2V0X3JlYWRvdXRfaHdfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJ aWYgKGNydGNfc3RhdGUtPmJhc2UuYWN0aXZlKSB7CiAJCQlkZXZfcHJpdi0+YWN0aXZlX2NydGNz IHw9IDEgPDwgY3J0Yy0+cGlwZTsKIAotCQkJaWYgKElTX0JST0FEV0VMTChkZXZfcHJpdikpIHsK KwkJCWlmIChJU19CUk9BRFdFTEwoZGV2X3ByaXYpIHx8IElTX1NLWUxBS0UoZGV2X3ByaXYpIHx8 CisJCQkgICAgSVNfS0FCWUxBS0UoZGV2X3ByaXYpKSB7CiAJCQkJcGl4Y2xrID0gaWxrX3BpcGVf cGl4ZWxfcmF0ZShjcnRjX3N0YXRlKTsKIAogCQkJCS8qIHBpeGVsIHJhdGUgbXVzdG4ndCBleGNl ZWQgOTUlIG9mIGNkY2xrIHdpdGggSVBTIG9uIEJEVyAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RwLmMK aW5kZXggYTA3M2YwNC4uYWZhMjFiNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcC5jCkBAIC0xMjQ1 LDYgKzEyNDUsNyBAQCBzdGF0aWMgdm9pZAogc2tsX2VkcF9zZXRfcGxsX2NvbmZpZyhzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqcGlwZV9jb25maWcpCiB7CiAJdTMyIGN0cmwxOworCXUzMiB2Y28g PSA4MTAwOwogCiAJbWVtc2V0KCZwaXBlX2NvbmZpZy0+ZHBsbF9od19zdGF0ZSwgMCwKIAkgICAg ICAgc2l6ZW9mKHBpcGVfY29uZmlnLT5kcGxsX2h3X3N0YXRlKSk7CkBAIC0xMjc3LDEzICsxMjc4 LDE2IEBAIHNrbF9lZHBfc2V0X3BsbF9jb25maWcoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBp cGVfY29uZmlnKQogCWNhc2UgMTA4MDAwOgogCQljdHJsMSB8PSBEUExMX0NUUkwxX0xJTktfUkFU RShEUExMX0NUUkwxX0xJTktfUkFURV8xMDgwLAogCQkJCQkgICAgICBTS0xfRFBMTDApOworCQl2 Y28gPSA4NjQwOwogCQlicmVhazsKIAljYXNlIDIxNjAwMDoKIAkJY3RybDEgfD0gRFBMTF9DVFJM MV9MSU5LX1JBVEUoRFBMTF9DVFJMMV9MSU5LX1JBVEVfMjE2MCwKIAkJCQkJICAgICAgU0tMX0RQ TEwwKTsKKwkJdmNvID0gODY0MDsKIAkJYnJlYWs7Ci0KIAl9CisKKwl0b19pbnRlbF9hdG9taWNf c3RhdGUocGlwZV9jb25maWctPmJhc2Uuc3RhdGUpLT5jZGNsa19wbGxfdmNvID0gdmNvOwogCXBp cGVfY29uZmlnLT5kcGxsX2h3X3N0YXRlLmN0cmwxID0gY3RybDE7CiB9CiAKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmgKaW5kZXggODc4MTcyYS4uNDc5MzZkNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKQEAgLTI2MCw2ICsyNjAsOSBAQCBzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlIHsKIAog CXN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbF9jb25maWcgc2hhcmVkX2RwbGxbSTkxNV9OVU1fUExM U107CiAJc3RydWN0IGludGVsX3dtX2NvbmZpZyB3bV9jb25maWc7CisKKwkvKiBTS0wvS0JMIE9u bHkgKi8KKwl1bnNpZ25lZCBpbnQgY2RjbGtfcGxsX3ZjbzsKIH07CiAKIHN0cnVjdCBpbnRlbF9w bGFuZV9zdGF0ZSB7CkBAIC0xMTkxLDYgKzExOTQsNyBAQCB2b2lkIGJ4dF9kaXNhYmxlX2RjOShz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBza2xfaW5pdF9jZGNsayhz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogaW50IHNrbF9zYW5pdGl6ZV9jZGNs ayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBza2xfdW5pbml0X2Nk Y2xrKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Cit1bnNpZ25lZCBpbnQgc2ts X2NkY2xrX2dldF92Y28odW5zaWduZWQgaW50IGZyZXEpOwogdm9pZCBza2xfZW5hYmxlX2RjNihz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBza2xfZGlzYWJsZV9kYzYo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIHZvaWQgaW50ZWxfZHBfZ2V0X21f bihzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YywKLS0gCjEuNy45LjUKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=