From mboxrd@z Thu Jan 1 00:00:00 1970 From: Huang Rui Subject: [PATCH 08/18] drm/amdgpu: abstract setup vmid config for gfxhub/mmhub Date: Thu, 1 Jun 2017 00:14:43 +0800 Message-ID: <1496247293-16429-9-git-send-email-ray.huang@amd.com> References: <1496247293-16429-1-git-send-email-ray.huang@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1496247293-16429-1-git-send-email-ray.huang-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, Alex Deucher , =?UTF-8?q?Christian=20K=C3=B6nig?= Cc: Ken Wang , Huang Rui , Alvin Huan U2lnbmVkLW9mZi1ieTogSHVhbmcgUnVpIDxyYXkuaHVhbmdAYW1kLmNvbT4KLS0tCiBkcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhodWJfdjFfMC5jIHwgNTUgKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbW1odWJfdjFfMC5jICB8 IDU2ICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDU5 IGluc2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2dmeGh1Yl92MV8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9nZnhodWJfdjFfMC5jCmluZGV4IDVmZGM5YmUuLjdiMzQ0N2EgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeGh1Yl92MV8wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvZ2Z4aHViX3YxXzAuYwpAQCAtMTg3LDMzICsxODcsMTAgQEAgc3RhdGljIHZv aWQgZ2Z4aHViX3YxXzBfZGlzX2lkZW50aXR5X2FwZXJ0dXJlKHN0cnVjdCBhbWRncHVfZGV2aWNl ICphZGV2KQogCiB9CiAKLWludCBnZnhodWJfdjFfMF9nYXJ0X2VuYWJsZShzdHJ1Y3QgYW1kZ3B1 X2RldmljZSAqYWRldikKK3N0YXRpYyB2b2lkIGdmeGh1Yl92MV8wX3NldHVwX3ZtaWRfY29uZmln KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogewotCXUzMiB0bXA7Ci0JdTMyIGk7Ci0KLQlE Uk1fSU5GTygiJXMgLS0gaW5cbiIsIF9fZnVuY19fKTsKLQlpZiAoYW1kZ3B1X3NyaW92X3ZmKGFk ZXYpKSB7Ci0JCS8qCi0JCSAqIE1DX1ZNX0ZCX0xPQ0FUSU9OX0JBU0UvVE9QIGlzIE5VTEwgZm9y IFZGLCBiZWN1YXNlIHRoZXkgYXJlCi0JCSAqIFZGIGNvcHkgcmVnaXN0ZXJzIHNvIHZiaW9zIHBv c3QgZG9lc24ndCBwcm9ncmFtIHRoZW0sIGZvcgotCQkgKiBTUklPViBkcml2ZXIgbmVlZCB0byBw cm9ncmFtIHRoZW0KLQkJICovCi0JCVdSRUczMihTT0MxNV9SRUdfT0ZGU0VUKEdDLCAwLCBtbU1D X1ZNX0ZCX0xPQ0FUSU9OX0JBU0UpLAotCQkJCWFkZXYtPm1jLnZyYW1fc3RhcnQgPj4gMjQpOwot CQlXUkVHMzIoU09DMTVfUkVHX09GRlNFVChHQywgMCwgbW1NQ19WTV9GQl9MT0NBVElPTl9UT1Ap LAotCQkJCWFkZXYtPm1jLnZyYW1fZW5kID4+IDI0KTsKLQl9Ci0KLQkvKiBHQVJUIEVuYWJsZS4g Ki8KLQlnZnhodWJfdjFfMF9pbml0X3B0X3JlZ3MoYWRldik7Ci0JZ2Z4aHViX3YxXzBfaW5pdF9n YXJ0X2FwZXJ0dXJlX3JlZ3MoYWRldik7Ci0JZ2Z4aHViX3YxXzBfaW5pdF9zeXN0ZW1fYXBlcnR1 cmVfcmVncyhhZGV2KTsKLQlnZnhodWJfdjFfMF9pbml0X3RsYl9yZWdzKGFkZXYpOwotCWdmeGh1 Yl92MV8wX2luaXRfY2FjaGVfcmVncyhhZGV2KTsKLQotCWdmeGh1Yl92MV8wX2VuYWJsZV9zeXN0 ZW1fZG9tYWluKGFkZXYpOwotCWdmeGh1Yl92MV8wX2Rpc19pZGVudGl0eV9hcGVydHVyZShhZGV2 KTsKKwlpbnQgaTsKKwl1aW50MzJfdCB0bXA7CiAKIAlmb3IgKGkgPSAwOyBpIDw9IDE0OyBpKysp IHsKIAkJdG1wID0gUlJFRzMyKFNPQzE1X1JFR19PRkZTRVQoR0MsIDAsIG1tVk1fQ09OVEVYVDFf Q05UTCkgKyBpKTsKQEAgLTI0OCw3ICsyMjUsMzMgQEAgaW50IGdmeGh1Yl92MV8wX2dhcnRfZW5h YmxlKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2KQogCQlXUkVHMzIoU09DMTVfUkVHX09GRlNF VChHQywgMCwgbW1WTV9DT05URVhUMV9QQUdFX1RBQkxFX0VORF9BRERSX0hJMzIpICsgaSoyLAog CQkJdXBwZXJfMzJfYml0cyhhZGV2LT52bV9tYW5hZ2VyLm1heF9wZm4gLSAxKSk7CiAJfQorfQor CitpbnQgZ2Z4aHViX3YxXzBfZ2FydF9lbmFibGUoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYp Cit7CisJRFJNX0lORk8oIiVzIC0tIGluXG4iLCBfX2Z1bmNfXyk7CisJaWYgKGFtZGdwdV9zcmlv dl92ZihhZGV2KSkgeworCQkvKgorCQkgKiBNQ19WTV9GQl9MT0NBVElPTl9CQVNFL1RPUCBpcyBO VUxMIGZvciBWRiwgYmVjdWFzZSB0aGV5IGFyZQorCQkgKiBWRiBjb3B5IHJlZ2lzdGVycyBzbyB2 YmlvcyBwb3N0IGRvZXNuJ3QgcHJvZ3JhbSB0aGVtLCBmb3IKKwkJICogU1JJT1YgZHJpdmVyIG5l ZWQgdG8gcHJvZ3JhbSB0aGVtCisJCSAqLworCQlXUkVHMzIoU09DMTVfUkVHX09GRlNFVChHQywg MCwgbW1NQ19WTV9GQl9MT0NBVElPTl9CQVNFKSwKKwkJCQlhZGV2LT5tYy52cmFtX3N0YXJ0ID4+ IDI0KTsKKwkJV1JFRzMyKFNPQzE1X1JFR19PRkZTRVQoR0MsIDAsIG1tTUNfVk1fRkJfTE9DQVRJ T05fVE9QKSwKKwkJCQlhZGV2LT5tYy52cmFtX2VuZCA+PiAyNCk7CisJfQogCisJLyogR0FSVCBF bmFibGUuICovCisJZ2Z4aHViX3YxXzBfaW5pdF9wdF9yZWdzKGFkZXYpOworCWdmeGh1Yl92MV8w X2luaXRfZ2FydF9hcGVydHVyZV9yZWdzKGFkZXYpOworCWdmeGh1Yl92MV8wX2luaXRfc3lzdGVt X2FwZXJ0dXJlX3JlZ3MoYWRldik7CisJZ2Z4aHViX3YxXzBfaW5pdF90bGJfcmVncyhhZGV2KTsK KwlnZnhodWJfdjFfMF9pbml0X2NhY2hlX3JlZ3MoYWRldik7CisKKwlnZnhodWJfdjFfMF9lbmFi bGVfc3lzdGVtX2RvbWFpbihhZGV2KTsKKwlnZnhodWJfdjFfMF9kaXNfaWRlbnRpdHlfYXBlcnR1 cmUoYWRldik7CisJZ2Z4aHViX3YxXzBfc2V0dXBfdm1pZF9jb25maWcoYWRldik7CiAKIAlyZXR1 cm4gMDsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L21taHViX3Yx XzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L21taHViX3YxXzAuYwppbmRleCA4NDE0 ODU3OC4uNTM2YWE4NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvbW1o dWJfdjFfMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L21taHViX3YxXzAuYwpA QCAtMTk5LDMzICsxOTksMTAgQEAgc3RhdGljIHZvaWQgbW1odWJfdjFfMF9kaXNfaWRlbnRpdHlf YXBlcnR1cmUoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCiAJCW1tVk1fTDJfQ09OVEVYVF9J REVOVElUWV9QSFlTSUNBTF9PRkZTRVRfSEkzMiksIDApOwogfQogCi1pbnQgbW1odWJfdjFfMF9n YXJ0X2VuYWJsZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKK3N0YXRpYyB2b2lkIG1taHVi X3YxXzBfc2V0dXBfdm1pZF9jb25maWcoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCiB7Ci0J dTMyIHRtcDsKLQl1MzIgaTsKLQotCURSTV9JTkZPKCIlcyAtLSBpblxuIiwgX19mdW5jX18pOwot CWlmIChhbWRncHVfc3Jpb3ZfdmYoYWRldikpIHsKLQkJLyoKLQkJICogTUNfVk1fRkJfTE9DQVRJ T05fQkFTRS9UT1AgaXMgTlVMTCBmb3IgVkYsIGJlY3Vhc2UgdGhleSBhcmUKLQkJICogVkYgY29w eSByZWdpc3RlcnMgc28gdmJpb3MgcG9zdCBkb2Vzbid0IHByb2dyYW0gdGhlbSwgZm9yCi0JCSAq IFNSSU9WIGRyaXZlciBuZWVkIHRvIHByb2dyYW0gdGhlbQotCQkgKi8KLQkJV1JFRzMyKFNPQzE1 X1JFR19PRkZTRVQoTU1IVUIsIDAsIG1tTUNfVk1fRkJfTE9DQVRJT05fQkFTRSksCi0JCQlhZGV2 LT5tYy52cmFtX3N0YXJ0ID4+IDI0KTsKLQkJV1JFRzMyKFNPQzE1X1JFR19PRkZTRVQoTU1IVUIs IDAsIG1tTUNfVk1fRkJfTE9DQVRJT05fVE9QKSwKLQkJCWFkZXYtPm1jLnZyYW1fZW5kID4+IDI0 KTsKLQl9Ci0KLQkvKiBHQVJUIEVuYWJsZS4gKi8KLQltbWh1Yl92MV8wX2luaXRfcHRfcmVncyhh ZGV2KTsKLQltbWh1Yl92MV8wX2luaXRfZ2FydF9hcGVydHVyZV9yZWdzKGFkZXYpOwotCW1taHVi X3YxXzBfaW5pdF9zeXN0ZW1fYXBlcnR1cmVfcmVncyhhZGV2KTsKLQltbWh1Yl92MV8wX2luaXRf dGxiX3JlZ3MoYWRldik7Ci0JbW1odWJfdjFfMF9pbml0X2NhY2hlX3JlZ3MoYWRldik7Ci0KLQlt bWh1Yl92MV8wX2VuYWJsZV9zeXN0ZW1fZG9tYWluKGFkZXYpOwotCW1taHViX3YxXzBfZGlzX2lk ZW50aXR5X2FwZXJ0dXJlKGFkZXYpOworCWludCBpOworCXVpbnQzMl90IHRtcDsKIAogCWZvciAo aSA9IDA7IGkgPD0gMTQ7IGkrKykgewogCQl0bXAgPSBSUkVHMzIoU09DMTVfUkVHX09GRlNFVChN TUhVQiwgMCwgbW1WTV9DT05URVhUMV9DTlRMKQpAQCAtMjYyLDYgKzIzOSwzMyBAQCBpbnQgbW1o dWJfdjFfMF9nYXJ0X2VuYWJsZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIAkJV1JFRzMy KFNPQzE1X1JFR19PRkZTRVQoTU1IVUIsIDAsIG1tVk1fQ09OVEVYVDFfUEFHRV9UQUJMRV9FTkRf QUREUl9ISTMyKSArIGkqMiwKIAkJCXVwcGVyXzMyX2JpdHMoYWRldi0+dm1fbWFuYWdlci5tYXhf cGZuIC0gMSkpOwogCX0KK30KKworaW50IG1taHViX3YxXzBfZ2FydF9lbmFibGUoc3RydWN0IGFt ZGdwdV9kZXZpY2UgKmFkZXYpCit7CisJRFJNX0lORk8oIiVzIC0tIGluXG4iLCBfX2Z1bmNfXyk7 CisJaWYgKGFtZGdwdV9zcmlvdl92ZihhZGV2KSkgeworCQkvKgorCQkgKiBNQ19WTV9GQl9MT0NB VElPTl9CQVNFL1RPUCBpcyBOVUxMIGZvciBWRiwgYmVjdWFzZSB0aGV5IGFyZQorCQkgKiBWRiBj b3B5IHJlZ2lzdGVycyBzbyB2YmlvcyBwb3N0IGRvZXNuJ3QgcHJvZ3JhbSB0aGVtLCBmb3IKKwkJ ICogU1JJT1YgZHJpdmVyIG5lZWQgdG8gcHJvZ3JhbSB0aGVtCisJCSAqLworCQlXUkVHMzIoU09D MTVfUkVHX09GRlNFVChNTUhVQiwgMCwgbW1NQ19WTV9GQl9MT0NBVElPTl9CQVNFKSwKKwkJCWFk ZXYtPm1jLnZyYW1fc3RhcnQgPj4gMjQpOworCQlXUkVHMzIoU09DMTVfUkVHX09GRlNFVChNTUhV QiwgMCwgbW1NQ19WTV9GQl9MT0NBVElPTl9UT1ApLAorCQkJYWRldi0+bWMudnJhbV9lbmQgPj4g MjQpOworCX0KKworCS8qIEdBUlQgRW5hYmxlLiAqLworCW1taHViX3YxXzBfaW5pdF9wdF9yZWdz KGFkZXYpOworCW1taHViX3YxXzBfaW5pdF9nYXJ0X2FwZXJ0dXJlX3JlZ3MoYWRldik7CisJbW1o dWJfdjFfMF9pbml0X3N5c3RlbV9hcGVydHVyZV9yZWdzKGFkZXYpOworCW1taHViX3YxXzBfaW5p dF90bGJfcmVncyhhZGV2KTsKKwltbWh1Yl92MV8wX2luaXRfY2FjaGVfcmVncyhhZGV2KTsKKwor CW1taHViX3YxXzBfZW5hYmxlX3N5c3RlbV9kb21haW4oYWRldik7CisJbW1odWJfdjFfMF9kaXNf aWRlbnRpdHlfYXBlcnR1cmUoYWRldik7CisJbW1odWJfdjFfMF9zZXR1cF92bWlkX2NvbmZpZyhh ZGV2KTsKIAogCXJldHVybiAwOwogfQotLSAKMi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vYW1kLWdmeAo=