From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rex Zhu Subject: [PATCH 1/3] drm/amdgpu: split ip hw_init into 2 phases Date: Wed, 10 Oct 2018 21:28:13 +0800 Message-ID: <1539178095-24356-1-git-send-email-Rex.Zhu@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: 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: Rex Zhu V2UgbmVlZCB0byBkbyBzb21lIElQcyBlYXJsaWVyIHRvIGRlYWwgd2l0aCBvcmRlcmluZyBpc3N1 ZXMKc2ltaWxhciB0byBob3cgcmVzdW1lIGlzIHNwbGl0IGludG8gdHdvIHBoYXNlcy4KCkRvIGZ3 IGxvYWRpbmcgdmlhIHNtdS9wc3AgYmV0d2VlbiB0aGUgdHdvIHBoYXNlcy4KClNpZ25lZC1vZmYt Ynk6IFJleCBaaHUgPFJleC5aaHVAYW1kLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfZGV2aWNlLmMgfCA2NiArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0K IDEgZmlsZSBjaGFuZ2VkLCA1MyBpbnNlcnRpb25zKCspLCAxMyBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMgYi9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMKaW5kZXggNjgwZGYwNS4uMzcy NTc0YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2Rldmlj ZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYwpAQCAt MTUyNSw2ICsxNTI1LDUxIEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2RldmljZV9pcF9lYXJseV9pbml0 KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50 IGFtZGdwdV9kZXZpY2VfaXBfaHdfaW5pdF9waGFzZTEoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFk ZXYpCit7CisJaW50IGksIHI7CisKKwlmb3IgKGkgPSAwOyBpIDwgYWRldi0+bnVtX2lwX2Jsb2Nr czsgaSsrKSB7CisJCWlmICghYWRldi0+aXBfYmxvY2tzW2ldLnN0YXR1cy5zdykKKwkJCWNvbnRp bnVlOworCQlpZiAoYWRldi0+aXBfYmxvY2tzW2ldLnN0YXR1cy5odykKKwkJCWNvbnRpbnVlOwor CQlpZiAoYWRldi0+aXBfYmxvY2tzW2ldLnZlcnNpb24tPnR5cGUgPT0gQU1EX0lQX0JMT0NLX1RZ UEVfQ09NTU9OIHx8CisJCSAgICBhZGV2LT5pcF9ibG9ja3NbaV0udmVyc2lvbi0+dHlwZSA9PSBB TURfSVBfQkxPQ0tfVFlQRV9JSCkgeworCQkJciA9IGFkZXYtPmlwX2Jsb2Nrc1tpXS52ZXJzaW9u LT5mdW5jcy0+aHdfaW5pdChhZGV2KTsKKwkJCWlmIChyKSB7CisJCQkJRFJNX0VSUk9SKCJod19p bml0IG9mIElQIGJsb2NrIDwlcz4gZmFpbGVkICVkXG4iLAorCQkJCQkgIGFkZXYtPmlwX2Jsb2Nr c1tpXS52ZXJzaW9uLT5mdW5jcy0+bmFtZSwgcik7CisJCQkJcmV0dXJuIHI7CisJCQl9CisJCQlh ZGV2LT5pcF9ibG9ja3NbaV0uc3RhdHVzLmh3ID0gdHJ1ZTsKKwkJfQorCX0KKworCXJldHVybiAw OworfQorCitzdGF0aWMgaW50IGFtZGdwdV9kZXZpY2VfaXBfaHdfaW5pdF9waGFzZTIoc3RydWN0 IGFtZGdwdV9kZXZpY2UgKmFkZXYpCit7CisJaW50IGksIHI7CisKKwlmb3IgKGkgPSAwOyBpIDwg YWRldi0+bnVtX2lwX2Jsb2NrczsgaSsrKSB7CisJCWlmICghYWRldi0+aXBfYmxvY2tzW2ldLnN0 YXR1cy5zdykKKwkJCWNvbnRpbnVlOworCQlpZiAoYWRldi0+aXBfYmxvY2tzW2ldLnN0YXR1cy5o dykKKwkJCWNvbnRpbnVlOworCQlyID0gYWRldi0+aXBfYmxvY2tzW2ldLnZlcnNpb24tPmZ1bmNz LT5od19pbml0KGFkZXYpOworCQlpZiAocikgeworCQkJRFJNX0VSUk9SKCJod19pbml0IG9mIElQ IGJsb2NrIDwlcz4gZmFpbGVkICVkXG4iLAorCQkJCSAgYWRldi0+aXBfYmxvY2tzW2ldLnZlcnNp b24tPmZ1bmNzLT5uYW1lLCByKTsKKwkJCXJldHVybiByOworCQl9CisJCWFkZXYtPmlwX2Jsb2Nr c1tpXS5zdGF0dXMuaHcgPSB0cnVlOworCX0KKworCXJldHVybiAwOworfQorCiAvKioKICAqIGFt ZGdwdV9kZXZpY2VfaXBfaW5pdCAtIHJ1biBpbml0IGZvciBoYXJkd2FyZSBJUHMKICAqCkBAIC0x NTg0LDE5ICsxNjI5LDE0IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2RldmljZV9pcF9pbml0KHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2KQogCXIgPSBhbWRncHVfdWNvZGVfY3JlYXRlX2JvKGFkZXYp OyAvKiBjcmVhdGUgdWNvZGUgYm8gd2hlbiBzd19pbml0IGNvbXBsZXRlKi8KIAlpZiAocikKIAkJ cmV0dXJuIHI7Ci0JZm9yIChpID0gMDsgaSA8IGFkZXYtPm51bV9pcF9ibG9ja3M7IGkrKykgewot CQlpZiAoIWFkZXYtPmlwX2Jsb2Nrc1tpXS5zdGF0dXMuc3cpCi0JCQljb250aW51ZTsKLQkJaWYg KGFkZXYtPmlwX2Jsb2Nrc1tpXS5zdGF0dXMuaHcpCi0JCQljb250aW51ZTsKLQkJciA9IGFkZXYt PmlwX2Jsb2Nrc1tpXS52ZXJzaW9uLT5mdW5jcy0+aHdfaW5pdCgodm9pZCAqKWFkZXYpOwotCQlp ZiAocikgewotCQkJRFJNX0VSUk9SKCJod19pbml0IG9mIElQIGJsb2NrIDwlcz4gZmFpbGVkICVk XG4iLAotCQkJCSAgYWRldi0+aXBfYmxvY2tzW2ldLnZlcnNpb24tPmZ1bmNzLT5uYW1lLCByKTsK LQkJCXJldHVybiByOwotCQl9Ci0JCWFkZXYtPmlwX2Jsb2Nrc1tpXS5zdGF0dXMuaHcgPSB0cnVl OwotCX0KKworCXIgPSBhbWRncHVfZGV2aWNlX2lwX2h3X2luaXRfcGhhc2UxKGFkZXYpOworCWlm IChyKQorCQlyZXR1cm4gcjsKKworCXIgPSBhbWRncHVfZGV2aWNlX2lwX2h3X2luaXRfcGhhc2Uy KGFkZXYpOworCWlmIChyKQorCQlyZXR1cm4gcjsKIAogCWFtZGdwdV94Z21pX2FkZF9kZXZpY2Uo YWRldik7CiAJYW1kZ3B1X2FtZGtmZF9kZXZpY2VfaW5pdChhZGV2KTsKLS0gCjEuOS4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxp bmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK