From mboxrd@z Thu Jan 1 00:00:00 1970 From: Evan Quan Subject: [PATCH 05/13] drm/amd/powerplay: retrieve all clock ranges on startup Date: Tue, 19 Jun 2018 15:38:57 +0800 Message-ID: <1529393945-16629-5-git-send-email-evan.quan@amd.com> References: <1529393945-16629-1-git-send-email-evan.quan@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1529393945-16629-1-git-send-email-evan.quan-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Evan Quan U28gdGhhdCB3ZSBkbyBub3QgbmVlZCB0byB1c2UgUFBTTUNfTVNHX0dldE1pbi9NYXhEcG1GcmVx IHRvCmdldCB0aGUgY2xvY2sgcmFuZ2VzIG9uIHJ1bnRpbWUuIFNpbmNlIHRoYXQgY2F1c2VzIHNv bWUgcHJvYmxlbXMuCgpDaGFuZ2UtSWQ6IElhMGQ2MzkwYzk3Njc0OTUzOGIzNWM4ZmZkZTVkMWU2 NjFiNDk0NGMwClNpZ25lZC1vZmYtYnk6IEV2YW4gUXVhbiA8ZXZhbi5xdWFuQGFtZC5jb20+Ci0t LQogZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEyX2h3bWdyLmMgfCA2 OSArKysrKysrKysrKysrKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9o d21nci92ZWdhMTJfaHdtZ3IuaCB8ICA4ICsrKwogMiBmaWxlcyBjaGFuZ2VkLCA2MSBpbnNlcnRp b25zKCspLCAxNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1k L3Bvd2VycGxheS9od21nci92ZWdhMTJfaHdtZ3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93 ZXJwbGF5L2h3bWdyL3ZlZ2ExMl9od21nci5jCmluZGV4IGJjOTc2ZTEuLmVhNTMwYWYgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMl9od21nci5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvcG93ZXJwbGF5L2h3bWdyL3ZlZ2ExMl9od21nci5j CkBAIC04NTYsNiArODU2LDQ4IEBAIHN0YXRpYyBpbnQgdmVnYTEyX3Bvd2VyX2NvbnRyb2xfc2V0 X2xldmVsKHN0cnVjdCBwcF9od21nciAqaHdtZ3IpCiAJcmV0dXJuIHJlc3VsdDsKIH0KIAorc3Rh dGljIGludCB2ZWdhMTJfZ2V0X2FsbF9jbG9ja19yYW5nZXNfaGVscGVyKHN0cnVjdCBwcF9od21n ciAqaHdtZ3IsCisJCVBQQ0xLX2UgY2xraWQsIHN0cnVjdCB2ZWdhMTJfY2xvY2tfcmFuZ2UgKmNs b2NrKQoreworCS8qIEFDIE1heCAqLworCVBQX0FTU0VSVF9XSVRIX0NPREUoCisJCXNtdW1fc2Vu ZF9tc2dfdG9fc21jX3dpdGhfcGFyYW1ldGVyKGh3bWdyLCBQUFNNQ19NU0dfR2V0TWF4RHBtRnJl cSwgKGNsa2lkIDw8IDE2KSkgPT0gMCwKKwkJIltHZXRDbG9ja1Jhbmdlc10gRmFpbGVkIHRvIGdl dCBtYXggYWMgY2xvY2sgZnJvbSBTTUMhIiwKKwkJcmV0dXJuIC0xKTsKKwl2ZWdhMTJfcmVhZF9h cmdfZnJvbV9zbWMoaHdtZ3IsICYoY2xvY2stPkFDTWF4KSk7CisKKwkvKiBBQyBNaW4gKi8KKwlQ UF9BU1NFUlRfV0lUSF9DT0RFKAorCQlzbXVtX3NlbmRfbXNnX3RvX3NtY193aXRoX3BhcmFtZXRl cihod21nciwgUFBTTUNfTVNHX0dldE1pbkRwbUZyZXEsIChjbGtpZCA8PCAxNikpID09IDAsCisJ CSJbR2V0Q2xvY2tSYW5nZXNdIEZhaWxlZCB0byBnZXQgbWluIGFjIGNsb2NrIGZyb20gU01DISIs CisJCXJldHVybiAtMSk7CisJdmVnYTEyX3JlYWRfYXJnX2Zyb21fc21jKGh3bWdyLCAmKGNsb2Nr LT5BQ01pbikpOworCisJLyogREMgTWF4ICovCisJUFBfQVNTRVJUX1dJVEhfQ09ERSgKKwkJc211 bV9zZW5kX21zZ190b19zbWNfd2l0aF9wYXJhbWV0ZXIoaHdtZ3IsIFBQU01DX01TR19HZXREY01v ZGVNYXhEcG1GcmVxLCAoY2xraWQgPDwgMTYpKSA9PSAwLAorCQkiW0dldENsb2NrUmFuZ2VzXSBG YWlsZWQgdG8gZ2V0IG1heCBkYyBjbG9jayBmcm9tIFNNQyEiLAorCQlyZXR1cm4gLTEpOworCXZl Z2ExMl9yZWFkX2FyZ19mcm9tX3NtYyhod21nciwgJihjbG9jay0+RENNYXgpKTsKKworCXJldHVy biAwOworfQorCitzdGF0aWMgaW50IHZlZ2ExMl9nZXRfYWxsX2Nsb2NrX3JhbmdlcyhzdHJ1Y3Qg cHBfaHdtZ3IgKmh3bWdyKQoreworCXN0cnVjdCB2ZWdhMTJfaHdtZ3IgKmRhdGEgPQorCQkJKHN0 cnVjdCB2ZWdhMTJfaHdtZ3IgKikoaHdtZ3ItPmJhY2tlbmQpOworCXVpbnQzMl90IGk7CisKKwlm b3IgKGkgPSAwOyBpIDwgUFBDTEtfQ09VTlQ7IGkrKykKKwkJUFBfQVNTRVJUX1dJVEhfQ09ERSgh dmVnYTEyX2dldF9hbGxfY2xvY2tfcmFuZ2VzX2hlbHBlcihod21nciwKKwkJCQkJaSwgJihkYXRh LT5jbGtfcmFuZ2VbaV0pKSwKKwkJCQkiRmFpbGVkIHRvIGdldCBjbGsgcmFuZ2UgZnJvbSBTTUMh IiwKKwkJCQlyZXR1cm4gLTEpOworCisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgdmVnYTEy X2VuYWJsZV9kcG1fdGFza3Moc3RydWN0IHBwX2h3bWdyICpod21ncikKIHsKIAlpbnQgdG1wX3Jl c3VsdCwgcmVzdWx0ID0gMDsKQEAgLTg4Myw2ICs5MjUsMTEgQEAgc3RhdGljIGludCB2ZWdhMTJf ZW5hYmxlX2RwbV90YXNrcyhzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyKQogCQkJIkZhaWxlZCB0byBw b3dlciBjb250cm9sIHNldCBsZXZlbCEiLAogCQkJcmVzdWx0ID0gdG1wX3Jlc3VsdCk7CiAKKwly ZXN1bHQgPSB2ZWdhMTJfZ2V0X2FsbF9jbG9ja19yYW5nZXMoaHdtZ3IpOworCVBQX0FTU0VSVF9X SVRIX0NPREUoIXJlc3VsdCwKKwkJCSJGYWlsZWQgdG8gZ2V0IGFsbCBjbG9jayByYW5nZXMhIiwK KwkJCXJldHVybiByZXN1bHQpOworCiAJcmVzdWx0ID0gdmVnYTEyX29kbl9pbml0aWFsaXplX2Rl ZmF1bHRfc2V0dGluZ3MoaHdtZ3IpOwogCVBQX0FTU0VSVF9XSVRIX0NPREUoIXJlc3VsdCwKIAkJ CSJGYWlsZWQgdG8gcG93ZXIgY29udHJvbCBzZXQgbGV2ZWwhIiwKQEAgLTE0NzIsMjQgKzE1MTks MTQgQEAgc3RhdGljIGludCB2ZWdhMTJfZ2V0X2Nsb2NrX3JhbmdlcyhzdHJ1Y3QgcHBfaHdtZ3Ig Kmh3bWdyLAogCQlQUENMS19lIGNsb2NrX3NlbGVjdCwKIAkJYm9vbCBtYXgpCiB7Ci0JaW50IHJl c3VsdDsKLQkqY2xvY2sgPSAwOworCXN0cnVjdCB2ZWdhMTJfaHdtZ3IgKmRhdGEgPSAoc3RydWN0 IHZlZ2ExMl9od21nciAqKShod21nci0+YmFja2VuZCk7CiAKLQlpZiAobWF4KSB7Ci0JCSBQUF9B U1NFUlRfV0lUSF9DT0RFKAotCQkJc211bV9zZW5kX21zZ190b19zbWNfd2l0aF9wYXJhbWV0ZXIo aHdtZ3IsIFBQU01DX01TR19HZXRNYXhEcG1GcmVxLCAoY2xvY2tfc2VsZWN0IDw8IDE2KSkgPT0g MCwKLQkJCSJbR2V0Q2xvY2tSYW5nZXNdIEZhaWxlZCB0byBnZXQgbWF4IGNsb2NrIGZyb20gU01D ISIsCi0JCQlyZXR1cm4gLTEpOwotCQlyZXN1bHQgPSB2ZWdhMTJfcmVhZF9hcmdfZnJvbV9zbWMo aHdtZ3IsIGNsb2NrKTsKLQl9IGVsc2UgewotCQlQUF9BU1NFUlRfV0lUSF9DT0RFKAotCQkJc211 bV9zZW5kX21zZ190b19zbWNfd2l0aF9wYXJhbWV0ZXIoaHdtZ3IsIFBQU01DX01TR19HZXRNaW5E cG1GcmVxLCAoY2xvY2tfc2VsZWN0IDw8IDE2KSkgPT0gMCwKLQkJCSJbR2V0Q2xvY2tSYW5nZXNd IEZhaWxlZCB0byBnZXQgbWluIGNsb2NrIGZyb20gU01DISIsCi0JCQlyZXR1cm4gLTEpOwotCQly ZXN1bHQgPSB2ZWdhMTJfcmVhZF9hcmdfZnJvbV9zbWMoaHdtZ3IsIGNsb2NrKTsKLQl9CisJaWYg KG1heCkKKwkJKmNsb2NrID0gZGF0YS0+Y2xrX3JhbmdlW2Nsb2NrX3NlbGVjdF0uQUNNYXg7CisJ ZWxzZQorCQkqY2xvY2sgPSBkYXRhLT5jbGtfcmFuZ2VbY2xvY2tfc2VsZWN0XS5BQ01pbjsKIAot CXJldHVybiByZXN1bHQ7CisJcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyBpbnQgdmVnYTEyX2dldF9z Y2xrcyhzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2FtZC9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEyX2h3bWdyLmggYi9kcml2ZXJzL2dwdS9kcm0vYW1k L3Bvd2VycGxheS9od21nci92ZWdhMTJfaHdtZ3IuaAppbmRleCA0OWIzOGRmLi5lMThjMDgzIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTJfaHdt Z3IuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTJfaHdt Z3IuaApAQCAtMzA0LDYgKzMwNCwxMiBAQCBzdHJ1Y3QgdmVnYTEyX29kbl9mYW5fdGFibGUgewog CWJvb2wJCWZvcmNlX2Zhbl9wd207CiB9OwogCitzdHJ1Y3QgdmVnYTEyX2Nsb2NrX3JhbmdlIHsK Kwl1aW50MzJfdAlBQ01heDsKKwl1aW50MzJfdAlBQ01pbjsKKwl1aW50MzJfdAlEQ01heDsKK307 CisKIHN0cnVjdCB2ZWdhMTJfaHdtZ3IgewogCXN0cnVjdCB2ZWdhMTJfZHBtX3RhYmxlICAgICAg ICAgIGRwbV90YWJsZTsKIAlzdHJ1Y3QgdmVnYTEyX2RwbV90YWJsZSAgICAgICAgICBnb2xkZW5f ZHBtX3RhYmxlOwpAQCAtMzg1LDYgKzM5MSw4IEBAIHN0cnVjdCB2ZWdhMTJfaHdtZ3IgewogCXVp bnQzMl90ICAgICAgICAgICAgICAgICAgICAgICBzbXVfdmVyc2lvbjsKIAlzdHJ1Y3Qgc211X2Zl YXR1cmVzICAgICAgICAgICAgc211X2ZlYXR1cmVzW0dOTERfRkVBVFVSRVNfTUFYXTsKIAlzdHJ1 Y3QgdmVnYTEyX3NtY19zdGF0ZV90YWJsZSAgc21jX3N0YXRlX3RhYmxlOworCisJc3RydWN0IHZl Z2ExMl9jbG9ja19yYW5nZSAgICAgIGNsa19yYW5nZVtQUENMS19DT1VOVF07CiB9OwogCiAjZGVm aW5lIFZFR0ExMl9EUE0yX05FQVJfVERQX0RFQyAgICAgICAgICAgICAgICAgICAgICAxMAotLSAK Mi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFt ZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=