From mboxrd@z Thu Jan 1 00:00:00 1970 From: Karol Herbst Subject: [PATCH] pll/gk104: fix PLL instability due to bad configuration with gddr5 Date: Mon, 12 Oct 2015 22:18:29 +0200 Message-ID: <1444681109-380-2-git-send-email-nouveau@karolherbst.de> References: <1444681109-380-1-git-send-email-nouveau@karolherbst.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1444681109-380-1-git-send-email-nouveau-lIBOoy2+GI7scQ4cX5LuPg@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: nouveau.vger.kernel.org dGhpcyBwYXRjaCB1c2VzIGFuIGFwcHJvYWNoIGNsb3NlciB0byB0aGUgbnZpZGlhIGRyaXZlciB0 byBjb25maWd1cmUgYm90aCBQTExzCmZvciBoaWdoIGdkZHI1IG1lbW9yeSBjbG9ja3MgKHVzdWFs bHkgYWJvdmUgMjQwME1IeikKCnByZXZpb3VzbHkgbm91dmVhdSB1c2VkIHRoZSBvbmUgUExMIGFz IGl0IHdhcyB1c2VkIGZvciB0aGUgbG93ZXIgY2xvY2tzIGFuZCBqdXN0CmFkanVzdGVkIHRoZSBz ZWNvbmQgUExMIHRvIGdldCBhcyBjbG9zZSBhcyBwb3NzaWJsZSB0byB0aGUgcmVxdWVzdGVkIGNs b2NrLgpUaGlzIG1lYW5zIGZvciBteSBjYXJkLCB0aGF0IEkgZ290IGEgNDA1MCBNSHogY2xvY2sg YWxsdGhvdWdoIDQwMDggTUh6IHdhcwpyZXF1ZXN0ZWQuCgpub3cgdGhlIGRyaXZlciBpdGVyYXRl cyBvdmVyIGEgbGlzdCBvZiBQTEwgY29uZmlndXJhdGlvbiBhbHNvIHVzZWQgYnkgdGhlCm52aWRp YSBkcml2ZXIgYW5kIHRoZW4gYWRqdXN0IHRoZSBzZWNvbmQgUExMIHRvIGdldCBuZWFyIHRoZSBy ZXF1ZXN0ZWQgY2xvY2suCkFsc28gaXQgaG9sZCB0byBzb21lIHJlc3RyaWN0aW9uIEkgZm91bmQg d2hpbGUgYW5hbHl6aW5nIHRoZSBQTEwgY29uZmlndXJhdGlvbnMKClRoaXMgd29uJ3QgZml4IGFs bCBnZGRyNSBoaWdoIGNsb2NrIGlzc3VlcyBpdHNlbGYsIGJ1dCBpdCBzaG91bGQgYmUgZmluZSBv bgpoeWJyaWQgZ3B1IHN5c3RlbXMgYXMgZm91bmQgb24gbWFueSBsYXB0b3BzIHRoZXNlIGRheXMu IEFsc28gc3dpdGNoaW5nIHdoaWxlCm5vcm1hbCBkZXNrdG9wIHVzYWdlIHNob3VsZCBiZSBhIGxv dCBtb3JlIHN0YWJsZSB0aGFuIGJlZm9yZS4KClNpZ25lZC1vZmYtYnk6IEthcm9sIEhlcmJzdCA8 bm91dmVhdUBrYXJvbGhlcmJzdC5kZT4KLS0tCiBkcm0vbm91dmVhdS9udmttL3N1YmRldi9jbGsv S2J1aWxkICAgICB8ICAxICsKIGRybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9wbGwuaCAgICAg IHwgIDUgKysrCiBkcm0vbm91dmVhdS9udmttL3N1YmRldi9jbGsvcGxsZ2sxMDQuYyB8IDc3ICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRybS9ub3V2ZWF1L252a20vc3ViZGV2 L2Nsay9wbGxndDIxNS5jIHwgIDYgKysrCiBkcm0vbm91dmVhdS9udmttL3N1YmRldi9mYi9yYW1n azEwNC5jICB8IDM5ICsrKysrKystLS0tLS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDEwNSBpbnNl cnRpb25zKCspLCAyMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcm0vbm91dmVh dS9udmttL3N1YmRldi9jbGsvcGxsZ2sxMDQuYwoKZGlmZiAtLWdpdCBhL2RybS9ub3V2ZWF1L252 a20vc3ViZGV2L2Nsay9LYnVpbGQgYi9kcm0vbm91dmVhdS9udmttL3N1YmRldi9jbGsvS2J1aWxk CmluZGV4IGVkNzcxN2IuLjVhYzIzZmUgMTAwNjQ0Ci0tLSBhL2RybS9ub3V2ZWF1L252a20vc3Vi ZGV2L2Nsay9LYnVpbGQKKysrIGIvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvY2xrL0tidWlsZApA QCAtMTEsMyArMTEsNCBAQCBudmttLXkgKz0gbnZrbS9zdWJkZXYvY2xrL2drMjBhLm8KIAogbnZr bS15ICs9IG52a20vc3ViZGV2L2Nsay9wbGxudjA0Lm8KIG52a20teSArPSBudmttL3N1YmRldi9j bGsvcGxsZ3QyMTUubworbnZrbS15ICs9IG52a20vc3ViZGV2L2Nsay9wbGxnazEwNC5vCmRpZmYg LS1naXQgYS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9jbGsvcGxsLmggYi9kcm0vbm91dmVhdS9u dmttL3N1YmRldi9jbGsvcGxsLmgKaW5kZXggNDQwMjBhMy4uMWY1ZTBhMCAxMDA2NDQKLS0tIGEv ZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvY2xrL3BsbC5oCisrKyBiL2RybS9ub3V2ZWF1L252a20v c3ViZGV2L2Nsay9wbGwuaApAQCAtNCw4ICs0LDEzIEBACiBzdHJ1Y3QgbnZrbV9zdWJkZXY7CiBz dHJ1Y3QgbnZiaW9zX3BsbDsKIAoraW50IGNhbGNfcGxsX2Nsb2NrKGludCBmTiwgaW50IE0sIGlu dCBOLCBpbnQgUCwgaW50IGNsayk7CisKIGludCBudjA0X3BsbF9jYWxjKHN0cnVjdCBudmttX3N1 YmRldiAqLCBzdHJ1Y3QgbnZiaW9zX3BsbCAqLCB1MzIgZnJlcSwKIAkJICBpbnQgKk4xLCBpbnQg Kk0xLCBpbnQgKk4yLCBpbnQgKk0yLCBpbnQgKlApOwogaW50IGd0MjE1X3BsbF9jYWxjKHN0cnVj dCBudmttX3N1YmRldiAqLCBzdHJ1Y3QgbnZiaW9zX3BsbCAqLCB1MzIgZnJlcSwKIAkJICBpbnQg Kk4sIGludCAqZk4sIGludCAqTSwgaW50ICpQKTsKK2ludCBnazEwNF9wbGxfY2FsY19oaWNsayhp bnQgdGFyZ2V0X2toeiwgaW50IGNyeXN0YWwsCisJCWludCAqTjEsIGludCAqZk4xLCBpbnQgKk0x LCBpbnQgKlAxLAorCQlpbnQgKk4yLCBpbnQgKk0yLCBpbnQgKlAyKTsKICNlbmRpZgpkaWZmIC0t Z2l0IGEvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvY2xrL3BsbGdrMTA0LmMgYi9kcm0vbm91dmVh dS9udmttL3N1YmRldi9jbGsvcGxsZ2sxMDQuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi40ODYzZTY0Ci0tLSAvZGV2L251bGwKKysrIGIvZHJtL25vdXZlYXUvbnZrbS9zdWJk ZXYvY2xrL3BsbGdrMTA0LmMKQEAgLTAsMCArMSw3NyBAQAorLyoKKyAqIENvcHlyaWdodCAyMDE1 IEthcm9sIEhlcmJzdAorICoKKyAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUg b2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhCisgKiBjb3B5IG9mIHRoaXMgc29m dHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlICJTb2Z0d2FyZSIp LAorICogdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVk aW5nIHdpdGhvdXQgbGltaXRhdGlvbgorICogdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlm eSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsCisgKiBhbmQvb3Igc2Vs bCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0 aGUKKyAqIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9s bG93aW5nIGNvbmRpdGlvbnM6CisgKgorICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5k IHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KKyAqIGFsbCBjb3Bp ZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgorICoKKyAqIFRIRSBT T0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5E LCBFWFBSRVNTIE9SCisgKiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRI RSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElD VUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuICBJTiBOTyBFVkVOVCBTSEFMTAorICog VEhFIENPUFlSSUdIVCBIT0xERVIoUykgT1IgQVVUSE9SKFMpIEJFIExJQUJMRSBGT1IgQU5ZIENM QUlNLCBEQU1BR0VTIE9SCisgKiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9O IE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwKKyAqIEFSSVNJTkcgRlJPTSwgT1VUIE9G IE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUgorICogT1RI RVIgREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLgorICoKKyAqIEF1dGhvcnM6IEthcm9sIEhlcmJz dAorICovCisjaW5jbHVkZSAicGxsLmgiCisKK2ludAorZ2sxMDRfcGxsX2NhbGNfaGljbGsoaW50 IHRhcmdldF9raHosIGludCBjcnlzdGFsLAorCQlpbnQgKk4xLCBpbnQgKmZOMSwgaW50ICpNMSwg aW50ICpQMSwKKwkJaW50ICpOMiwgaW50ICpNMiwgaW50ICpQMikKK3sKKwlpbnQgYmVzdF9jbGsg PSAwLCBiZXN0X2VyciA9IHRhcmdldF9raHosIHBfcmVmLCBuX3JlZjsKKwlib29sIHVwcGVyID0g ZmFsc2U7CisKKwkqTTEgPSAxOworCS8qIE0gaGFzIHRvIGJlIDEsIG90aGVyd2lzZSBpdCBnZXRz IHVuc3RhYmxlICovCisJKk0yID0gMTsKKwkvKiBjYW4gYmUgMSBvciAyLCBzdGlja2luZyB3aXRo IDEgZm9yIHNpbXBsaWNpdHkgKi8KKwkqUDIgPSAxOworCisJZm9yIChwX3JlZiA9IDB4NzsgcF9y ZWYgPj0gMHg1OyAtLXBfcmVmKSB7CisJCWZvciAobl9yZWYgPSAweDI1OyBuX3JlZiA8PSAweDJi OyArK25fcmVmKSB7CisJCQlpbnQgY3VyX04sIGN1cl9jbGssIGN1cl9lcnI7CisKKwkJCWN1cl9j bGsgPSBjYWxjX3BsbF9jbG9jaygwLCAxLCBuX3JlZiwgcF9yZWYsIGNyeXN0YWwpOworCQkJY3Vy X04gPSB0YXJnZXRfa2h6IC8gY3VyX2NsazsKKwkJCWN1cl9lcnIgPSB0YXJnZXRfa2h6IC0gY2Fs Y19wbGxfY2xvY2soMHhmMDAwLCAxLCBjdXJfTiwgMSwgY3VyX2Nsayk7CisKKwkJCS8qIHdlIGZv dW5kIGEgYmV0dGVyIGNvbWJpbmF0aW9uICovCisJCQlpZiAoY3VyX2VyciA8IGJlc3RfZXJyKSB7 CisJCQkJYmVzdF9lcnIgPSBjdXJfZXJyOworCQkJCWJlc3RfY2xrID0gY3VyX2NsazsKKwkJCQkq TjIgPSBjdXJfTjsKKwkJCQkqTjEgPSBuX3JlZjsKKwkJCQkqUDEgPSBwX3JlZjsKKwkJCQl1cHBl ciA9IGZhbHNlOworCQkJfQorCisJCQljdXJfTiArPSAxOworCQkJY3VyX2VyciA9IGNhbGNfcGxs X2Nsb2NrKDB4ZjAwMCwgMSwgY3VyX04sIDEsIGN1cl9jbGspIC0gdGFyZ2V0X2toejsKKwkJCWlm IChjdXJfZXJyIDwgYmVzdF9lcnIpIHsKKwkJCQliZXN0X2VyciA9IGN1cl9lcnI7CisJCQkJYmVz dF9jbGsgPSBjdXJfY2xrOworCQkJCSpOMiA9IGN1cl9OOworCQkJCSpOMSA9IG5fcmVmOworCQkJ CSpQMSA9IHBfcmVmOworCQkJCXVwcGVyID0gdHJ1ZTsKKwkJCX0KKwkJfQorCX0KKworCS8qIGFk anVzdCBmTiB0byBnZXQgY2xvc2VyIHRvIHRoZSB0YXJnZXQgY2xvY2sgKi8KKwkqZk4xID0gKHUx NikoKCgoYmVzdF9lcnIgLyAqTjIgKiAqUDIpICogKCpQMSAqICpNMSkpIDw8IDEzKSAvIGNyeXN0 YWwpOworCWlmICh1cHBlcikKKwkJKmZOMSA9ICh1MTYpKDEgLSAqZk4xKTsKKworCXJldHVybiBj YWxjX3BsbF9jbG9jaygqZk4xLCAxLCAqTjEsICpQMSwgY3J5c3RhbCk7Cit9CmRpZmYgLS1naXQg YS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9jbGsvcGxsZ3QyMTUuYyBiL2RybS9ub3V2ZWF1L252 a20vc3ViZGV2L2Nsay9wbGxndDIxNS5jCmluZGV4IGM2ZmNjZDYuLmZlOTg4NmMgMTAwNjQ0Ci0t LSBhL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9wbGxndDIxNS5jCisrKyBiL2RybS9ub3V2 ZWF1L252a20vc3ViZGV2L2Nsay9wbGxndDIxNS5jCkBAIC0yNyw2ICsyNywxMiBAQAogI2luY2x1 ZGUgPHN1YmRldi9iaW9zL3BsbC5oPgogCiBpbnQKK2NhbGNfcGxsX2Nsb2NrKGludCBmTiwgaW50 IE0sIGludCBOLCBpbnQgUCwgaW50IGNsaykKK3sKKwlyZXR1cm4gKChjbGsgKiBOKSArICgoKHUx NikoZk4gKyA0MDk2KSAqIGNsaykgPj4gMTMpKSAvIChNICogUCk7Cit9CisKK2ludAogZ3QyMTVf cGxsX2NhbGMoc3RydWN0IG52a21fc3ViZGV2ICpzdWJkZXYsIHN0cnVjdCBudmJpb3NfcGxsICpp bmZvLAogCSAgICAgICB1MzIgZnJlcSwgaW50ICpwTiwgaW50ICpwZk4sIGludCAqcE0sIGludCAq UCkKIHsKZGlmZiAtLWdpdCBhL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2ZiL3JhbWdrMTA0LmMg Yi9kcm0vbm91dmVhdS9udmttL3N1YmRldi9mYi9yYW1nazEwNC5jCmluZGV4IDk4OTM1NTYuLmM0 MzczYmYgMTAwNjQ0Ci0tLSBhL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2ZiL3JhbWdrMTA0LmMK KysrIGIvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYvZmIvcmFtZ2sxMDQuYwpAQCAtOTY4LDMxICs5 NjgsMjQgQEAgZ2sxMDRfcmFtX2NhbGNfeGl0cyhzdHJ1Y3QgZ2sxMDRfcmFtICpyYW0sIHN0cnVj dCBudmttX3JhbV9kYXRhICpuZXh0KQogCSAqIGtlcGxlciBib2FyZHMsIG5vIGlkZWEgaG93L3do eSB0aGV5J3JlIGNob3Nlbi4KIAkgKi8KIAlyZWZjbGsgPSBuZXh0LT5mcmVxOwotCWlmIChyYW0t Pm1vZGUgPT0gMikKLQkJcmVmY2xrID0gZnVjLT5tZW1wbGwucmVmY2xrOwotCi0JLyogY2FsY3Vs YXRlIHJlZnBsbCBjb2VmZmljaWVudHMgKi8KLQlyZXQgPSBndDIxNV9wbGxfY2FsYyhzdWJkZXYs ICZmdWMtPnJlZnBsbCwgcmVmY2xrLCAmcmFtLT5OMSwKLQkJCSAgICAgJnJhbS0+Zk4xLCAmcmFt LT5NMSwgJnJhbS0+UDEpOwotCWZ1Yy0+bWVtcGxsLnJlZmNsayA9IHJldDsKLQlpZiAocmV0IDw9 IDApIHsKLQkJbnZrbV9lcnJvcihzdWJkZXYsICJ1bmFibGUgdG8gY2FsYyByZWZwbGxcbiIpOwot CQlyZXR1cm4gLUVJTlZBTDsKLQl9Ci0KLQkvKiBjYWxjdWxhdGUgbWVtcGxsIGNvZWZmaWNpZW50 cywgaWYgd2UncmUgdXNpbmcgaXQgKi8KIAlpZiAocmFtLT5tb2RlID09IDIpIHsKLQkJLyogcG9z dC1kaXZpZGVyIGRvZXNuJ3Qgd29yay4uLiB0aGUgcmVnIHRha2VzIHRoZSB2YWx1ZXMgYnV0Ci0J CSAqIGFwcGVhcnMgdG8gY29tcGxldGVseSBpZ25vcmUgaXQuICB0aGVyZSAqaXMqIGEgYml0IGF0 Ci0JCSAqIGJpdCAyOCB0aGF0IGFwcGVhcnMgdG8gZGl2aWRlIHRoZSBjbG9jayBieSAyIGlmIHNl dC4KLQkJICovCi0JCWZ1Yy0+bWVtcGxsLm1pbl9wID0gMTsKLQkJZnVjLT5tZW1wbGwubWF4X3Ag PSAyOwotCi0JCXJldCA9IGd0MjE1X3BsbF9jYWxjKHN1YmRldiwgJmZ1Yy0+bWVtcGxsLCBuZXh0 LT5mcmVxLAotCQkJCSAgICAgJnJhbS0+TjIsIE5VTEwsICZyYW0tPk0yLCAmcmFtLT5QMik7CisJ CXJldCA9IGdrMTA0X3BsbF9jYWxjX2hpY2xrKG5leHQtPmZyZXEsIHN1YmRldi0+ZGV2aWNlLT5j cnlzdGFsLAorCQkJCSZyYW0tPk4xLCAmcmFtLT5mTjEsICZyYW0tPk0xLCAmcmFtLT5QMSwKKwkJ CQkmcmFtLT5OMiwgJnJhbS0+TTIsICZyYW0tPlAyKTsKKwkJZnVjLT5tZW1wbGwucmVmY2xrID0g cmV0OworCQlpZiAocmV0IDw9IDApIHsKKwkJCW52a21fZXJyb3Ioc3ViZGV2LCAidW5hYmxlIHRv IGNhbGMgcGxsc1xuIik7CisJCQlyZXR1cm4gLUVJTlZBTDsKKwkJfQorCQludmttX2RlYnVnKHN1 YmRldiwgInN1Y2Vzc2Z1bGx5IGNhbGNlZCBQTExzIGZvciBjbG9jayAlaSBrSHoiCisJCQkJIiAo cmVmY2xvY2s6ICVpIGtIeilcbiIsIG5leHQtPmZyZXEsIHJldCk7CisJfSBlbHNlIHsKKwkJLyog Y2FsY3VsYXRlIHJlZnBsbCBjb2VmZmljaWVudHMgKi8KKwkJcmV0ID0gZ3QyMTVfcGxsX2NhbGMo c3ViZGV2LCAmZnVjLT5yZWZwbGwsIHJlZmNsaywgJnJhbS0+TjEsCisJCQkJICAgICAmcmFtLT5m TjEsICZyYW0tPk0xLCAmcmFtLT5QMSk7CisJCWZ1Yy0+bWVtcGxsLnJlZmNsayA9IHJldDsKIAkJ aWYgKHJldCA8PSAwKSB7Ci0JCQludmttX2Vycm9yKHN1YmRldiwgInVuYWJsZSB0byBjYWxjIG1l bXBsbFxuIik7CisJCQludmttX2Vycm9yKHN1YmRldiwgInVuYWJsZSB0byBjYWxjIHJlZnBsbFxu Iik7CiAJCQlyZXR1cm4gLUVJTlZBTDsKIAkJfQogCX0KLS0gCjIuNi4xCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOb3V2ZWF1IG1haWxpbmcgbGlzdApO b3V2ZWF1QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vbm91dmVhdQo=