From mboxrd@z Thu Jan 1 00:00:00 1970 From: Evan Quan Subject: [PATCH 2/4] drm/amd/powerplay: support Vega10 retrieving and setting ppfeatures Date: Thu, 24 Jan 2019 15:48:03 +0800 Message-ID: <20190124074805.4169-2-evan.quan@amd.com> References: <20190124074805.4169-1-evan.quan@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190124074805.4169-1-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 RW5hYmxlIHJldHJpZXZpbmcgYW5kIHNldHRpbmcgcHBmZWF0dXJlcyBvbiBWZWdhMTAuCgpDaGFu Z2UtSWQ6IEk0NGVhODc4OWFkM2M1OWNmYjQwYTM2NzY2NWE2MTkwZjQ0MDU2MTBlClNpZ25lZC1v ZmYtYnk6IEV2YW4gUXVhbiA8ZXZhbi5xdWFuQGFtZC5jb20+Ci0tLQogLi4uL2RybS9hbWQvcG93 ZXJwbGF5L2h3bWdyL3ZlZ2ExMF9od21nci5jICAgIHwgMTAxICsrKysrKysrKysrKysrKysrKwog MSBmaWxlIGNoYW5nZWQsIDEwMSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2FtZC9wb3dlcnBsYXkvaHdtZ3IvdmVnYTEwX2h3bWdyLmMgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL3Bvd2VycGxheS9od21nci92ZWdhMTBfaHdtZ3IuYwppbmRleCBhMDhlNGZhM2FlNTku LmYwYmE0MjU0MzYxYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkv aHdtZ3IvdmVnYTEwX2h3bWdyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9wb3dlcnBsYXkv aHdtZ3IvdmVnYTEwX2h3bWdyLmMKQEAgLTQzMjMsNiArNDMyMywxMDUgQEAgc3RhdGljIGludCB2 ZWdhMTBfc2V0X3dhdGVybWFya3NfZm9yX2Nsb2Nrc19yYW5nZXMoc3RydWN0IHBwX2h3bWdyICpo d21nciwKIAlyZXR1cm4gcmVzdWx0OwogfQogCitzdGF0aWMgaW50IHZlZ2ExMF9nZXRfcHBmZWF0 dXJlX3N0YXR1cyhzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLCBjaGFyICpidWYpCit7CisJc3RhdGlj IGNvbnN0IGNoYXIgKnBwZmVhdHVyZV9uYW1lW10gPSB7CisJCQkJIkRQTV9QUkVGRVRDSEVSIiwK KwkJCQkiR0ZYQ0xLX0RQTSIsCisJCQkJIlVDTEtfRFBNIiwKKwkJCQkiU09DQ0xLX0RQTSIsCisJ CQkJIlVWRF9EUE0iLAorCQkJCSJWQ0VfRFBNIiwKKwkJCQkiVUxWIiwKKwkJCQkiTVAwQ0xLX0RQ TSIsCisJCQkJIkxJTktfRFBNIiwKKwkJCQkiRENFRkNMS19EUE0iLAorCQkJCSJBVkZTIiwKKwkJ CQkiR0ZYQ0xLX0RTIiwKKwkJCQkiU09DQ0xLX0RTIiwKKwkJCQkiTENMS19EUyIsCisJCQkJIlBQ VCIsCisJCQkJIlREQyIsCisJCQkJIlRIRVJNQUwiLAorCQkJCSJHRlhfUEVSX0NVX0NHIiwKKwkJ CQkiUk0iLAorCQkJCSJEQ0VGQ0xLX0RTIiwKKwkJCQkiQUNEQyIsCisJCQkJIlZSMEhPVCIsCisJ CQkJIlZSMUhPVCIsCisJCQkJIkZXX0NURiIsCisJCQkJIkxFRF9ESVNQTEFZIiwKKwkJCQkiRkFO X0NPTlRST0wiLAorCQkJCSJGQVNUX1BQVCIsCisJCQkJIkRJRFQiLAorCQkJCSJBQ0ciLAorCQkJ CSJQQ0NfTElNSVQifTsKKwlzdGF0aWMgY29uc3QgY2hhciAqb3V0cHV0X3RpdGxlW10gPSB7CisJ CQkJIkZFQVRVUkVTIiwKKwkJCQkiQklUTUFTSyIsCisJCQkJIkVOQUJMRU1FTlQifTsKKwl1aW50 NjRfdCBmZWF0dXJlc19lbmFibGVkOworCWludCBpOworCWludCByZXQgPSAwOworCWludCBzaXpl ID0gMDsKKworCXJldCA9IHZlZ2ExMF9nZXRfZW5hYmxlZF9zbWNfZmVhdHVyZXMoaHdtZ3IsICZm ZWF0dXJlc19lbmFibGVkKTsKKwlQUF9BU1NFUlRfV0lUSF9DT0RFKCFyZXQsCisJCQkiW0VuYWJs ZUFsbFNtdUZlYXR1cmVzXSBGYWlsZWQgdG8gZ2V0IGVuYWJsZWQgc21jIGZlYXR1cmVzISIsCisJ CQlyZXR1cm4gcmV0KTsKKworCXNpemUgKz0gc3ByaW50ZihidWYgKyBzaXplLCAiQ3VycmVudCBw cGZlYXR1cmVzOiAweCUwMTZsbHhcbiIsIGZlYXR1cmVzX2VuYWJsZWQpOworCXNpemUgKz0gc3By aW50ZihidWYgKyBzaXplLCAiJS0xOXMgJS0yMnMgJXNcbiIsCisJCQkJb3V0cHV0X3RpdGxlWzBd LAorCQkJCW91dHB1dF90aXRsZVsxXSwKKwkJCQlvdXRwdXRfdGl0bGVbMl0pOworCWZvciAoaSA9 IDA7IGkgPCBHTkxEX0ZFQVRVUkVTX01BWDsgaSsrKSB7CisJCXNpemUgKz0gc3ByaW50ZihidWYg KyBzaXplLCAiJS0xOXMgMHglMDE2bGx4ICU2c1xuIiwKKwkJCQkJcHBmZWF0dXJlX25hbWVbaV0s CisJCQkJCTFVTEwgPDwgaSwKKwkJCQkJKGZlYXR1cmVzX2VuYWJsZWQgJiAoMVVMTCA8PCBpKSkg PyAiWSIgOiAiTiIpOworCX0KKworCXJldHVybiBzaXplOworfQorCitzdGF0aWMgaW50IHZlZ2Ex MF9zZXRfcHBmZWF0dXJlX3N0YXR1cyhzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLCB1aW50NjRfdCBu ZXdfcHBmZWF0dXJlX21hc2tzKQoreworCXVpbnQ2NF90IGZlYXR1cmVzX2VuYWJsZWQ7CisJdWlu dDY0X3QgZmVhdHVyZXNfdG9fZW5hYmxlOworCXVpbnQ2NF90IGZlYXR1cmVzX3RvX2Rpc2FibGU7 CisJaW50IHJldCA9IDA7CisKKwlpZiAobmV3X3BwZmVhdHVyZV9tYXNrcyA+PSAoMVVMTCA8PCBH TkxEX0ZFQVRVUkVTX01BWCkpCisJCXJldHVybiAtRUlOVkFMOworCisJcmV0ID0gdmVnYTEwX2dl dF9lbmFibGVkX3NtY19mZWF0dXJlcyhod21nciwgJmZlYXR1cmVzX2VuYWJsZWQpOworCWlmIChy ZXQpCisJCXJldHVybiByZXQ7CisKKwlmZWF0dXJlc190b19kaXNhYmxlID0KKwkJKGZlYXR1cmVz X2VuYWJsZWQgXiBuZXdfcHBmZWF0dXJlX21hc2tzKSAmIGZlYXR1cmVzX2VuYWJsZWQ7CisJZmVh dHVyZXNfdG9fZW5hYmxlID0KKwkJKGZlYXR1cmVzX2VuYWJsZWQgXiBuZXdfcHBmZWF0dXJlX21h c2tzKSBeIGZlYXR1cmVzX3RvX2Rpc2FibGU7CisKKwlwcl9kZWJ1ZygiZmVhdHVyZXNfdG9fZGlz YWJsZSAweCVsbHhcbiIsIGZlYXR1cmVzX3RvX2Rpc2FibGUpOworCXByX2RlYnVnKCJmZWF0dXJl c190b19lbmFibGUgMHglbGx4XG4iLCBmZWF0dXJlc190b19lbmFibGUpOworCisJaWYgKGZlYXR1 cmVzX3RvX2Rpc2FibGUpIHsKKwkJcmV0ID0gdmVnYTEwX2VuYWJsZV9zbWNfZmVhdHVyZXMoaHdt Z3IsIGZhbHNlLCBmZWF0dXJlc190b19kaXNhYmxlKTsKKwkJaWYgKHJldCkKKwkJCXJldHVybiBy ZXQ7CisJfQorCisJaWYgKGZlYXR1cmVzX3RvX2VuYWJsZSkgeworCQlyZXQgPSB2ZWdhMTBfZW5h YmxlX3NtY19mZWF0dXJlcyhod21nciwgdHJ1ZSwgZmVhdHVyZXNfdG9fZW5hYmxlKTsKKwkJaWYg KHJldCkKKwkJCXJldHVybiByZXQ7CisJfQorCisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQg dmVnYTEwX3ByaW50X2Nsb2NrX2xldmVscyhzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyLAogCQllbnVt IHBwX2Nsb2NrX3R5cGUgdHlwZSwgY2hhciAqYnVmKQogewpAQCAtNTA2Nyw2ICs1MTY2LDggQEAg c3RhdGljIGNvbnN0IHN0cnVjdCBwcF9od21ncl9mdW5jIHZlZ2ExMF9od21ncl9mdW5jcyA9IHsK IAkuZ2V0X2FzaWNfYmFjb19jYXBhYmlsaXR5ID0gdmVnYTEwX2JhY29fZ2V0X2NhcGFiaWxpdHks CiAJLmdldF9hc2ljX2JhY29fc3RhdGUgPSB2ZWdhMTBfYmFjb19nZXRfc3RhdGUsCiAJLnNldF9h c2ljX2JhY29fc3RhdGUgPSB2ZWdhMTBfYmFjb19zZXRfc3RhdGUsCisJLmdldF9wcGZlYXR1cmVf c3RhdHVzID0gdmVnYTEwX2dldF9wcGZlYXR1cmVfc3RhdHVzLAorCS5zZXRfcHBmZWF0dXJlX3N0 YXR1cyA9IHZlZ2ExMF9zZXRfcHBmZWF0dXJlX3N0YXR1cywKIH07CiAKIGludCB2ZWdhMTBfaHdt Z3JfaW5pdChzdHJ1Y3QgcHBfaHdtZ3IgKmh3bWdyKQotLSAKMi4yMC4xCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAph bWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK