From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Zhang, Hawking" Subject: RE: [PATCH 4/7] drm/amdgpu: refine si_read_register Date: Wed, 8 Feb 2017 03:28:10 +0000 Message-ID: References: <1486455219-12495-1-git-send-email-Flora.Cui@amd.com> <1486455219-12495-4-git-send-email-Flora.Cui@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1486455219-12495-4-git-send-email-Flora.Cui-5C7GfCeVMHo@public.gmane.org> Content-Language: en-US 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: "Cui, Flora" UmV2aWV3ZWQtYnk6IEhhd2tpbmcgWmhhbmcgPEhhd2tpbmcuWmhhbmdAYW1kLmNvbT4KClJlZ2Fy ZHMsCkhhd2tpbmcKLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KRnJvbTogRmxvcmEgQ3VpIFtt YWlsdG86RmxvcmEuQ3VpQGFtZC5jb21dIApTZW50OiBUdWVzZGF5LCBGZWJydWFyeSAwNywgMjAx NyAxNjoxNApUbzogWmhhbmcsIEhhd2tpbmcgPEhhd2tpbmcuWmhhbmdAYW1kLmNvbT47IGFtZC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCkNjOiBDdWksIEZsb3JhIDxGbG9yYS5DdWlAYW1kLmNv bT4KU3ViamVjdDogW1BBVENIIDQvN10gZHJtL2FtZGdwdTogcmVmaW5lIHNpX3JlYWRfcmVnaXN0 ZXIKCkNoYW5nZS1JZDogSWQzMTdiYzJhN2M1ZGRjZGU3NzdiMmE3NDU4ZGEyNmRiYjVmMGU0YjkK U2lnbmVkLW9mZi1ieTogRmxvcmEgQ3VpIDxGbG9yYS5DdWlAYW1kLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9zaS5jIHwgOTAgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA3MyBpbnNlcnRpb25zKCspLCAxNyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9zaS5jIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvc2kuYyBpbmRleCBkYTQ2OTkyLi5iNzFlM2ZhIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9zaS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L3NpLmMKQEAgLTEwMTAsMjQgKzEwMTAsODEgQEAgc3RhdGljIHN0 cnVjdCBhbWRncHVfYWxsb3dlZF9yZWdpc3Rlcl9lbnRyeSBzaV9hbGxvd2VkX3JlYWRfcmVnaXN0 ZXJzW10gPSB7CiAJe1BBX1NDX1JBU1RFUl9DT05GSUcsIGZhbHNlLCB0cnVlfSwKIH07CiAKLXN0 YXRpYyB1aW50MzJfdCBzaV9yZWFkX2luZGV4ZWRfcmVnaXN0ZXIoc3RydWN0IGFtZGdwdV9kZXZp Y2UgKmFkZXYsCi0JCQkJCSAgdTMyIHNlX251bSwgdTMyIHNoX251bSwKLQkJCQkJICB1MzIgcmVn X29mZnNldCkKK3N0YXRpYyB1aW50MzJfdCBzaV9nZXRfcmVnaXN0ZXJfdmFsdWUoc3RydWN0IGFt ZGdwdV9kZXZpY2UgKmFkZXYsCisJCQkJICAgICAgYm9vbCBpbmRleGVkLCB1MzIgc2VfbnVtLAor CQkJCSAgICAgIHUzMiBzaF9udW0sIHUzMiByZWdfb2Zmc2V0KQogewotCXVpbnQzMl90IHZhbDsK KwlpZiAoaW5kZXhlZCkgeworCQl1aW50MzJfdCB2YWw7CisJCXVuc2lnbmVkIHNlX2lkeCA9IChz ZV9udW0gPT0gMHhmZmZmZmZmZikgPyAwIDogc2VfbnVtOworCQl1bnNpZ25lZCBzaF9pZHggPSAo c2hfbnVtID09IDB4ZmZmZmZmZmYpID8gMCA6IHNoX251bTsKKworCQlzd2l0Y2ggKHJlZ19vZmZz ZXQpIHsKKwkJY2FzZSBtbUNDX1JCX0JBQ0tFTkRfRElTQUJMRToKKwkJCXJldHVybiBhZGV2LT5n ZnguY29uZmlnLnJiX2NvbmZpZ1tzZV9pZHhdW3NoX2lkeF0ucmJfYmFja2VuZF9kaXNhYmxlOwor CQljYXNlIG1tR0NfVVNFUl9SQl9CQUNLRU5EX0RJU0FCTEU6CisJCQlyZXR1cm4gYWRldi0+Z2Z4 LmNvbmZpZy5yYl9jb25maWdbc2VfaWR4XVtzaF9pZHhdLnVzZXJfcmJfYmFja2VuZF9kaXNhYmxl OworCQljYXNlIG1tUEFfU0NfUkFTVEVSX0NPTkZJRzoKKwkJCXJldHVybiBhZGV2LT5nZnguY29u ZmlnLnJiX2NvbmZpZ1tzZV9pZHhdW3NoX2lkeF0ucmFzdGVyX2NvbmZpZzsKKwkJfQogCi0JbXV0 ZXhfbG9jaygmYWRldi0+Z3JibV9pZHhfbXV0ZXgpOwotCWlmIChzZV9udW0gIT0gMHhmZmZmZmZm ZiB8fCBzaF9udW0gIT0gMHhmZmZmZmZmZikKLQkJYW1kZ3B1X2dmeF9zZWxlY3Rfc2Vfc2goYWRl diwgc2VfbnVtLCBzaF9udW0sIDB4ZmZmZmZmZmYpOworCQltdXRleF9sb2NrKCZhZGV2LT5ncmJt X2lkeF9tdXRleCk7CisJCWlmIChzZV9udW0gIT0gMHhmZmZmZmZmZiB8fCBzaF9udW0gIT0gMHhm ZmZmZmZmZikKKwkJCWFtZGdwdV9nZnhfc2VsZWN0X3NlX3NoKGFkZXYsIHNlX251bSwgc2hfbnVt LCAweGZmZmZmZmZmKTsKIAotCXZhbCA9IFJSRUczMihyZWdfb2Zmc2V0KTsKKwkJdmFsID0gUlJF RzMyKHJlZ19vZmZzZXQpOwogCi0JaWYgKHNlX251bSAhPSAweGZmZmZmZmZmIHx8IHNoX251bSAh PSAweGZmZmZmZmZmKQotCQlhbWRncHVfZ2Z4X3NlbGVjdF9zZV9zaChhZGV2LCAweGZmZmZmZmZm LCAweGZmZmZmZmZmLCAweGZmZmZmZmZmKTsKLQltdXRleF91bmxvY2soJmFkZXYtPmdyYm1faWR4 X211dGV4KTsKLQlyZXR1cm4gdmFsOworCQlpZiAoc2VfbnVtICE9IDB4ZmZmZmZmZmYgfHwgc2hf bnVtICE9IDB4ZmZmZmZmZmYpCisJCQlhbWRncHVfZ2Z4X3NlbGVjdF9zZV9zaChhZGV2LCAweGZm ZmZmZmZmLCAweGZmZmZmZmZmLCAweGZmZmZmZmZmKTsKKwkJbXV0ZXhfdW5sb2NrKCZhZGV2LT5n cmJtX2lkeF9tdXRleCk7CisJCXJldHVybiB2YWw7CisJfSBlbHNlIHsKKwkJdW5zaWduZWQgaWR4 OworCisJCXN3aXRjaCAocmVnX29mZnNldCkgeworCQljYXNlIG1tR0JfQUREUl9DT05GSUc6CisJ CQlyZXR1cm4gYWRldi0+Z2Z4LmNvbmZpZy5nYl9hZGRyX2NvbmZpZzsKKwkJY2FzZSBtbU1DX0FS Ql9SQU1DRkc6CisJCQlyZXR1cm4gYWRldi0+Z2Z4LmNvbmZpZy5tY19hcmJfcmFtY2ZnOworCQlj YXNlIG1tR0JfVElMRV9NT0RFMDoKKwkJY2FzZSBtbUdCX1RJTEVfTU9ERTE6CisJCWNhc2UgbW1H Ql9USUxFX01PREUyOgorCQljYXNlIG1tR0JfVElMRV9NT0RFMzoKKwkJY2FzZSBtbUdCX1RJTEVf TU9ERTQ6CisJCWNhc2UgbW1HQl9USUxFX01PREU1OgorCQljYXNlIG1tR0JfVElMRV9NT0RFNjoK KwkJY2FzZSBtbUdCX1RJTEVfTU9ERTc6CisJCWNhc2UgbW1HQl9USUxFX01PREU4OgorCQljYXNl IG1tR0JfVElMRV9NT0RFOToKKwkJY2FzZSBtbUdCX1RJTEVfTU9ERTEwOgorCQljYXNlIG1tR0Jf VElMRV9NT0RFMTE6CisJCWNhc2UgbW1HQl9USUxFX01PREUxMjoKKwkJY2FzZSBtbUdCX1RJTEVf TU9ERTEzOgorCQljYXNlIG1tR0JfVElMRV9NT0RFMTQ6CisJCWNhc2UgbW1HQl9USUxFX01PREUx NToKKwkJY2FzZSBtbUdCX1RJTEVfTU9ERTE2OgorCQljYXNlIG1tR0JfVElMRV9NT0RFMTc6CisJ CWNhc2UgbW1HQl9USUxFX01PREUxODoKKwkJY2FzZSBtbUdCX1RJTEVfTU9ERTE5OgorCQljYXNl IG1tR0JfVElMRV9NT0RFMjA6CisJCWNhc2UgbW1HQl9USUxFX01PREUyMToKKwkJY2FzZSBtbUdC X1RJTEVfTU9ERTIyOgorCQljYXNlIG1tR0JfVElMRV9NT0RFMjM6CisJCWNhc2UgbW1HQl9USUxF X01PREUyNDoKKwkJY2FzZSBtbUdCX1RJTEVfTU9ERTI1OgorCQljYXNlIG1tR0JfVElMRV9NT0RF MjY6CisJCWNhc2UgbW1HQl9USUxFX01PREUyNzoKKwkJY2FzZSBtbUdCX1RJTEVfTU9ERTI4Ogor CQljYXNlIG1tR0JfVElMRV9NT0RFMjk6CisJCWNhc2UgbW1HQl9USUxFX01PREUzMDoKKwkJY2Fz ZSBtbUdCX1RJTEVfTU9ERTMxOgorCQkJaWR4ID0gKHJlZ19vZmZzZXQgLSBtbUdCX1RJTEVfTU9E RTApOworCQkJcmV0dXJuIGFkZXYtPmdmeC5jb25maWcudGlsZV9tb2RlX2FycmF5W2lkeF07CisJ CWRlZmF1bHQ6CisJCQlyZXR1cm4gUlJFRzMyKHJlZ19vZmZzZXQpOworCQl9CisJfQogfQotCiBz dGF0aWMgaW50IHNpX3JlYWRfcmVnaXN0ZXIoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIHUz MiBzZV9udW0sCiAJCQkgICAgIHUzMiBzaF9udW0sIHUzMiByZWdfb2Zmc2V0LCB1MzIgKnZhbHVl KSAgeyBAQCAtMTAzOSwxMCArMTA5Niw5IEBAIHN0YXRpYyBpbnQgc2lfcmVhZF9yZWdpc3Rlcihz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgdTMyIHNlX251bSwKIAkJCWNvbnRpbnVlOwogCiAJ CWlmICghc2lfYWxsb3dlZF9yZWFkX3JlZ2lzdGVyc1tpXS51bnRvdWNoZWQpCi0JCQkqdmFsdWUg PSBzaV9hbGxvd2VkX3JlYWRfcmVnaXN0ZXJzW2ldLmdyYm1faW5kZXhlZCA/Ci0JCQkJIHNpX3Jl YWRfaW5kZXhlZF9yZWdpc3RlcihhZGV2LCBzZV9udW0sCi0JCQkJCQkJICAgc2hfbnVtLCByZWdf b2Zmc2V0KSA6Ci0JCQkJIFJSRUczMihyZWdfb2Zmc2V0KTsKKwkJCSp2YWx1ZSA9IHNpX2dldF9y ZWdpc3Rlcl92YWx1ZShhZGV2LAorCQkJCQkJc2lfYWxsb3dlZF9yZWFkX3JlZ2lzdGVyc1tpXS5n cmJtX2luZGV4ZWQsCisJCQkJCQlzZV9udW0sIHNoX251bSwgcmVnX29mZnNldCk7CiAJCXJldHVy biAwOwogCX0KIAlyZXR1cm4gLUVJTlZBTDsKLS0KMi43LjQKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vYW1kLWdmeAo=