From: Sameer Goel Subject: [PATCH] Test code for SMMUv3 setup Date: Fri, 29 Sep 2017 15:02:51 -0600 Message-ID: <1506718971-5250-1-git-send-email-sgoel@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dy2RB-000800-3Z for xen-devel@lists.xenproject.org; Fri, 29 Sep 2017 21:03:09 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Sameer Goel , julien.grall@arm.com List-Id: xen-devel@lists.xenproject.org RE8gTk9UIE1FUkdFCgpUaGlzIHBhdGNoIGNvbnRhaW5zIHRlc3QgY29kZSBmb3IgcHJvZ3JhbW1p bmcgc3RyZWFtIHRhYmxlcyBmb3IgUENJZSBkZXZpY2VzCnNlZW4gYnkgRE9NMC4gVGhpcyBjaGFu Z2UgY2FuIGJlIHVzZWQgb24gdG9wIG9mIFsxXS4KClsxXSBbUkZDIHYyIDAvN10gU01NVXYzIGRy aXZlciBhbmQgdGhlIHN1cHBvcnRpbmcgZnJhbWV3b3JrCi0tLQogeGVuL2FyY2gvYXJtL3BoeXNk ZXYuYyAgICAgICAgICAgICAgICB8IDQxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr Ky0tCiB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS12My5jIHwgMzYgKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCiB4ZW4vaW5jbHVkZS9hc20tYXJtL2RldmljZS5oICAgICAg ICAgIHwgIDUgKysrLS0KIDMgZmlsZXMgY2hhbmdlZCwgNzggaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vcGh5c2Rldi5jIGIveGVuL2FyY2gv YXJtL3BoeXNkZXYuYwppbmRleCBlOTEzNTVmLi4xOGE1Nzg2IDEwMDY0NAotLS0gYS94ZW4vYXJj aC9hcm0vcGh5c2Rldi5jCisrKyBiL3hlbi9hcmNoL2FybS9waHlzZGV2LmMKQEAgLTgsMTMgKzgs NTAgQEAKICNpbmNsdWRlIDx4ZW4vbGliLmg+CiAjaW5jbHVkZSA8eGVuL2Vycm5vLmg+CiAjaW5j bHVkZSA8eGVuL3NjaGVkLmg+CisjaW5jbHVkZSA8eGVuL2d1ZXN0X2FjY2Vzcy5oPgogI2luY2x1 ZGUgPGFzbS9oeXBlcmNhbGwuaD4KIAogCitleHRlcm4gdm9pZCBhY3BpX3NldHVwX3NtbXVfZm9y X3Rlc3Qoc3RydWN0IGRvbWFpbiAqZCwgdTE2IHNlZywgdTggYnVzLCB1OCBkZXZmbik7CisKIGlu dCBkb19waHlzZGV2X29wKGludCBjbWQsIFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYXJn KQogewotICAgIGdkcHJpbnRrKFhFTkxPR19ERUJVRywgIlBIWVNERVZPUCBjbWQ9JWQ6IG5vdCBp bXBsZW1lbnRlZFxuIiwgY21kKTsKLSAgICByZXR1cm4gLUVOT1NZUzsKKyAgICBpbnQgcmV0ID0g MDsKKworICAgIHN3aXRjaCAoY21kICkKKyAgICB7CisgICAgY2FzZSBQSFlTREVWT1BfcGNpX2Rl dmljZV9hZGQ6IHsKKyAgICAgICAgc3RydWN0IHBoeXNkZXZfcGNpX2RldmljZV9hZGQgYWRkOwor ICAgICAgICBzdHJ1Y3QgcGNpX2Rldl9pbmZvIHBkZXZfaW5mbzsKKworICAgICAgICByZXQgPSAt RUZBVUxUOworICAgICAgICBpZiAoIGNvcHlfZnJvbV9ndWVzdCgmYWRkLCBhcmcsIDEpICE9IDAg KQorICAgICAgICAgICAgYnJlYWs7CisKKyAgICAgICAgcGRldl9pbmZvLmlzX2V4dGZuID0gISEo YWRkLmZsYWdzICYgWEVOX1BDSV9ERVZfRVhURk4pOworICAgICAgICBpZiAoIGFkZC5mbGFncyAm IFhFTl9QQ0lfREVWX1ZJUlRGTiApCisgICAgICAgIHsKKyAgICAgICAgICAgIHBkZXZfaW5mby5p c192aXJ0Zm4gPSAxOworICAgICAgICAgICAgcGRldl9pbmZvLnBoeXNmbi5idXMgPSBhZGQucGh5 c2ZuLmJ1czsKKyAgICAgICAgICAgIHBkZXZfaW5mby5waHlzZm4uZGV2Zm4gPSBhZGQucGh5c2Zu LmRldmZuOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHBkZXZfaW5mby5p c192aXJ0Zm4gPSAwOworCisgICAgICAgIGdkcHJpbnRrKFhFTkxPR19ERUJVRywgIlBIWVNERVZP UCBjbWQ9JWQ6IGRvbWFpbjolZCBzZWc6JWQgYnVzOiVkIFwKKyAgICAgICAgICAgICAgICBkZXZm bjolZFxuIiwgY21kLCBoYXJkd2FyZV9kb21haW4tPmRvbWFpbl9pZCwgYWRkLnNlZywgXAorCQlh ZGQuYnVzLCBhZGQuZGV2Zm4pOworICAgICAgICBhY3BpX3NldHVwX3NtbXVfZm9yX3Rlc3QoaGFy ZHdhcmVfZG9tYWluLCBhZGQuc2VnLCBhZGQuYnVzLCBhZGQuZGV2Zm4pOworICAgICAgICBicmVh azsKKyAgICB9CisKKyAgICBkZWZhdWx0OgorICAgICAgICBnZHByaW50ayhYRU5MT0dfREVCVUcs ICJQSFlTREVWT1AgY21kPSVkOiBub3QgaW1wbGVtZW50ZWRcbiIsIGNtZCk7CisgICAgICAgIHJl dCA9IC1FTk9TWVM7CisJYnJlYWs7CisgICAgfQorCisgICAgcmV0dXJuIHJldDsKIH0KIAogLyoK ZGlmZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LXYzLmMgYi94ZW4v ZHJpdmVycy9wYXNzdGhyb3VnaC9hcm0vc21tdS12My5jCmluZGV4IDBiYmYwY2QuLmY1YjVkNzcg MTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2FybS9zbW11LXYzLmMKKysrIGIv eGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvYXJtL3NtbXUtdjMuYwpAQCAtNDYsNiArNDYsNyBAQAog I2luY2x1ZGUgPGFzbS9pby5oPgogI2luY2x1ZGUgPGFzbS9wbGF0Zm9ybS5oPgogI2luY2x1ZGUg PHhlbi9hY3BpLmg+CisjaW5jbHVkZSA8YWNwaS9hY3BpX2lvcnQuaD4KIAogdHlwZWRlZiBwYWRk cl90IHBoeXNfYWRkcl90OwogdHlwZWRlZiBwYWRkcl90IGRtYV9hZGRyX3Q7CkBAIC0zNDEwLDMg KzM0MTEsMzggQEAgQUNQSV9ERVZJQ0VfU1RBUlQoYXNtbXV2MywgIkFSTSBTTU1VIFYzIiwgREVW SUNFX0lPTU1VKQogQUNQSV9ERVZJQ0VfRU5ECiAKICNlbmRpZgorCit2b2lkIGFjcGlfc2V0dXBf c21tdV9mb3JfdGVzdChzdHJ1Y3QgZG9tYWluICpkLCB1MTYgc2VnLCB1OCBidXMsIHU4IGRldmZu KQoreworCXN0cnVjdCBwY2lfZGV2IHBjaV9kZXZpY2U7CisJc3RydWN0IGRldmljZSAqZGV2aWNl OworCXN0cnVjdCBhcm1fc21tdV9kZXZpY2UgKnNtbXU7CisKKwlhcm1fc21tdV9pb21tdV9kb21h aW5faW5pdChkKTsKKwltZW1zZXQoJnBjaV9kZXZpY2UsIDAsIHNpemVvZihzdHJ1Y3QgcGNpX2Rl dikpOworCWRldmljZSA9ICYocGNpX2RldmljZS5kZXYpOworCisJcGNpX2RldmljZS5kb21haW4g PSBkOworCSoodTE2KikgJnBjaV9kZXZpY2Uuc2VnID0gc2VnOworCSoodTgqKSAmcGNpX2Rldmlj ZS5idXMgPSBidXM7CisJKih1OCopICZwY2lfZGV2aWNlLmRldmZuID0gZGV2Zm47CisKKwlwY2lf ZGV2aWNlLmRldi50eXBlID0gREVWX1BDSTsKKwlwcmludGsoIiVkICVkICVkIFxuIixwY2lfZGV2 aWNlLnNlZyxwY2lfZGV2aWNlLmJ1cyxwY2lfZGV2aWNlLmRldmZuKTsKKworCWlvcnRfaW9tbXVf Y29uZmlndXJlKGRldmljZSk7CisKKwlpZiAoZGV2aWNlLT5pb21tdV9md3NwZWMpIHsKKwkJcHJp bnRrKCJudW0taWRzOiAlZFxuIiwgZGV2aWNlLT5pb21tdV9md3NwZWMtPm51bV9pZHMpOworCQlw cmludGsoImZ3bm9kZTogMHglcFxuIiwgZGV2aWNlLT5pb21tdV9md3NwZWMtPmlvbW11X2Z3bm9k ZSk7CisJCXNtbXUgPSBhcm1fc21tdV9nZXRfYnlfZndub2RlKCBkZXZpY2UtPmlvbW11X2Z3c3Bl Yy0+aW9tbXVfZndub2RlKTsKKwkJcHJpbnRrKCJzbW11LWRldmljZS1ub2RlOiAweCVwXG4iLHNt bXUpOworCQlhcm1fc21tdV9hc3NpZ25fZGV2KGQsIDAsIGRldmljZSwgMCk7CisJfSBlbHNlIHsK KwkJcHJpbnRrKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBmd19zcGVjXG4iKTsKKwl9CisKKworCXBy aW50aygiJXMgY2FsbGVkICVkXG4iLCBfX2Z1bmNfXywgX19MSU5FX18pOworfQorCmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL2RldmljZS5oIGIveGVuL2luY2x1ZGUvYXNtLWFybS9k ZXZpY2UuaAppbmRleCA0ZWVmOWNlLi41N2MxMTRiIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9h c20tYXJtL2RldmljZS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vZGV2aWNlLmgKQEAgLTgs NiArOCw3IEBAIGVudW0gZGV2aWNlX3R5cGUKIHsKICAgICBERVZfRFQsCiAgICAgREVWX0FDUEks CisgICAgREVWX1BDSSwKIH07CiAKIHN0cnVjdCBkZXZfYXJjaGRhdGEgewpAQCAtMzIsOCArMzMs OCBAQCB0eXBlZGVmIHN0cnVjdCBkZXZpY2UgZGV2aWNlX3Q7CiAjaW5jbHVkZSA8eGVuL2Rldmlj ZV90cmVlLmg+CiAKIC8qIFRPRE86IENvcnJlY3RseSBpbXBsZW1lbnQgZGV2X2lzX3BjaSB3aGVu IFBDSSBpcyBzdXBwb3J0ZWQgb24gQVJNICovCi0jZGVmaW5lIGRldl9pc19wY2koZGV2KSAoKHZv aWQpKGRldiksIDApCi0jZGVmaW5lIGRldl9pc19kdChkZXYpICAoKGRldi0+dHlwZSA9PSBERVZf RFQpCisjZGVmaW5lIGRldl9pc19wY2koZGV2KSAoZGV2LT50eXBlID09IERFVl9QQ0kpCisjZGVm aW5lIGRldl9pc19kdChkZXYpICAoZGV2LT50eXBlID09IERFVl9EVCkKIAogZW51bSBkZXZpY2Vf Y2xhc3MKIHsKLS0gClF1YWxjb21tIERhdGFjZW50ZXIgVGVjaG5vbG9naWVzIGFzIGFuIGFmZmls aWF0ZSBvZiBRdWFsY29tbSBUZWNobm9sb2dpZXMsIEluYy4gUXVhbGNvbW0gVGVjaG5vbG9naWVz LCBJbmMuIGlzIGEgbWVtYmVyIG9mIHRoZSBDb2RlIEF1cm9yYSBGb3J1bSwgYSBMaW51eCBGb3Vu ZGF0aW9uIENvbGxhYm9yYXRpdmUgUHJvamVjdC4KCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK