From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Przywara Subject: [PATCH v3 24/26] ARM: vITS: create and initialize virtual ITSes for Dom0 Date: Fri, 31 Mar 2017 19:05:23 +0100 Message-ID: <20170331180525.30038-25-andre.przywara@arm.com> References: <20170331180525.30038-1-andre.przywara@arm.com> 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 1cu0u1-0005z5-Jd for xen-devel@lists.xenproject.org; Fri, 31 Mar 2017 18:04:01 +0000 In-Reply-To: <20170331180525.30038-1-andre.przywara@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Julien Grall , Stefano Stabellini Cc: xen-devel@lists.xenproject.org, Shanker Donthineni , Vijay Kilari List-Id: xen-devel@lists.xenproject.org Rm9yIGVhY2ggaGFyZHdhcmUgSVRTIGNyZWF0ZSBhbmQgaW5pdGlhbGl6ZSBhIHZpcnR1YWwgSVRT IGZvciBEb20wLgpXZSB1c2UgdGhlIHNhbWUgbWVtb3J5IG1hcHBlZCBhZGRyZXNzIHRvIGtlZXAg dGhlIGRvb3JiZWxsIHdvcmtpbmcuCgpTaWduZWQtb2ZmLWJ5OiBBbmRyZSBQcnp5d2FyYSA8YW5k cmUucHJ6eXdhcmFAYXJtLmNvbT4KLS0tCiB4ZW4vYXJjaC9hcm0vdmdpYy12My1pdHMuYyAgICAg ICB8IDMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB4ZW4vYXJjaC9hcm0vdmdp Yy12My5jICAgICAgICAgICB8IDE3ICsrKysrKysrKysrKysrKysrCiB4ZW4vaW5jbHVkZS9hc20t YXJtL2RvbWFpbi5oICAgICB8ICAxICsKIHhlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5o IHwgMTYgKysrKysrKysrKysrKysrKwogNCBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCsp CgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMgYi94ZW4vYXJjaC9hcm0v dmdpYy12My1pdHMuYwppbmRleCAyNGU3ZDE3Li5jNWNmMjQ5IDEwMDY0NAotLS0gYS94ZW4vYXJj aC9hcm0vdmdpYy12My1pdHMuYworKysgYi94ZW4vYXJjaC9hcm0vdmdpYy12My1pdHMuYwpAQCAt MTA3NCw2ICsxMDc0LDM4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbW1pb19oYW5kbGVyX29wcyB2 Z2ljX2l0c19tbWlvX2hhbmRsZXIgPSB7CiAgICAgLndyaXRlID0gdmdpY192M19pdHNfbW1pb193 cml0ZSwKIH07CiAKK2ludCB2Z2ljX3YzX2l0c19pbml0X3ZpcnR1YWwoc3RydWN0IGRvbWFpbiAq ZCwgcGFkZHJfdCBndWVzdF9hZGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBpbnQgZGV2aWRfYml0cywgdW5zaWduZWQgaW50IGludGlkX2JpdHMpCit7CisgICAgc3Ry dWN0IHZpcnRfaXRzICppdHM7CisgICAgdWludDY0X3QgYmFzZV9hdHRyOworCisgICAgaXRzID0g eHphbGxvYyhzdHJ1Y3QgdmlydF9pdHMpOworICAgIGlmICggISBpdHMgKQorICAgICAgICByZXR1 cm4gLUVOT01FTTsKKworICAgIGJhc2VfYXR0ciAgPSBHSUNfQkFTRVJfSW5uZXJTaGFyZWFibGUg PDwgR0lUU19CQVNFUl9TSEFSRUFCSUxJVFlfU0hJRlQ7CisgICAgYmFzZV9hdHRyIHw9IEdJQ19C QVNFUl9DQUNIRV9TYW1lQXNJbm5lciA8PCBHSVRTX0JBU0VSX09VVEVSX0NBQ0hFQUJJTElUWV9T SElGVDsKKyAgICBiYXNlX2F0dHIgfD0gR0lDX0JBU0VSX0NBQ0hFX1JhV2FXYiA8PCBHSVRTX0JB U0VSX0lOTkVSX0NBQ0hFQUJJTElUWV9TSElGVDsKKworICAgIGl0cy0+Y2Jhc2VyICA9IGJhc2Vf YXR0cjsKKyAgICBiYXNlX2F0dHIgfD0gMFVMTCA8PCBHSVRTX0JBU0VSX1BBR0VfU0laRV9TSElG VDsKKyAgICBpdHMtPmJhc2VyX2RldiAgPSBHSVRTX0JBU0VSX1RZUEVfREVWSUNFIDw8IEdJVFNf QkFTRVJfVFlQRV9TSElGVDsKKyAgICBpdHMtPmJhc2VyX2RldiB8PSAoN1VMTCA8PCBHSVRTX0JB U0VSX0VOVFJZX1NJWkVfU0hJRlQpIHwgYmFzZV9hdHRyOworICAgIGl0cy0+YmFzZXJfY29sbCAg PSBHSVRTX0JBU0VSX1RZUEVfQ09MTEVDVElPTiA8PCBHSVRTX0JBU0VSX1RZUEVfU0hJRlQ7Cisg ICAgaXRzLT5iYXNlcl9jb2xsIHw9ICgxVUxMIDw8IEdJVFNfQkFTRVJfRU5UUllfU0laRV9TSElG VCkgfCBiYXNlX2F0dHI7CisgICAgaXRzLT5kID0gZDsKKyAgICBpdHMtPmRvb3JiZWxsX2FkZHJl c3MgPSBndWVzdF9hZGRyICsgSVRTX0RPT1JCRUxMX09GRlNFVDsKKyAgICBpdHMtPmRldmlkX2Jp dHMgPSBkZXZpZF9iaXRzOworICAgIGl0cy0+aW50aWRfYml0cyA9IGludGlkX2JpdHM7CisgICAg c3Bpbl9sb2NrX2luaXQoJml0cy0+dmNtZF9sb2NrKTsKKyAgICBzcGluX2xvY2tfaW5pdCgmaXRz LT5pdHNfbG9jayk7CisKKyAgICByZWdpc3Rlcl9tbWlvX2hhbmRsZXIoZCwgJnZnaWNfaXRzX21t aW9faGFuZGxlciwgZ3Vlc3RfYWRkciwgU1pfNjRLLCBpdHMpOworCisgICAgcmV0dXJuIDA7Cit9 CisKIC8qCiAgKiBMb2NhbCB2YXJpYWJsZXM6CiAgKiBtb2RlOiBDCmRpZmYgLS1naXQgYS94ZW4v YXJjaC9hcm0vdmdpYy12My5jIGIveGVuL2FyY2gvYXJtL3ZnaWMtdjMuYwppbmRleCA0MTU5ZmI4 Li4yMmE3YjFiIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vdmdpYy12My5jCisrKyBiL3hlbi9h cmNoL2FybS92Z2ljLXYzLmMKQEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlIDxhc20vY3VycmVu dC5oPgogI2luY2x1ZGUgPGFzbS9tbWlvLmg+CiAjaW5jbHVkZSA8YXNtL2dpY192M19kZWZzLmg+ CisjaW5jbHVkZSA8YXNtL2dpY192M19pdHMuaD4KICNpbmNsdWRlIDxhc20vdmdpYy5oPgogI2lu Y2x1ZGUgPGFzbS92Z2ljLWVtdWwuaD4KICNpbmNsdWRlIDxhc20vdnJlZy5oPgpAQCAtMTU4Myw2 ICsxNTg0LDcgQEAgc3RhdGljIGludCB2Z2ljX3YzX2RvbWFpbl9pbml0KHN0cnVjdCBkb21haW4g KmQpCiAgICAgICovCiAgICAgaWYgKCBpc19oYXJkd2FyZV9kb21haW4oZCkgKQogICAgIHsKKyAg ICAgICAgc3RydWN0IGhvc3RfaXRzICpod19pdHM7CiAgICAgICAgIHVuc2lnbmVkIGludCBmaXJz dF9jcHUgPSAwOwogCiAgICAgICAgIGQtPmFyY2gudmdpYy5kYmFzZSA9IHZnaWNfdjNfaHcuZGJh c2U7CkBAIC0xNjA4LDYgKzE2MTAsMjEgQEAgc3RhdGljIGludCB2Z2ljX3YzX2RvbWFpbl9pbml0 KHN0cnVjdCBkb21haW4gKmQpCiAKICAgICAgICAgICAgIGZpcnN0X2NwdSArPSBzaXplIC8gZC0+ YXJjaC52Z2ljLnJkaXN0X3N0cmlkZTsKICAgICAgICAgfQorICAgICAgICBkLT5hcmNoLnZnaWMu bnJfcmVnaW9ucyA9IHZnaWNfdjNfaHcubnJfcmRpc3RfcmVnaW9uczsKKworICAgICAgICBsaXN0 X2Zvcl9lYWNoX2VudHJ5KGh3X2l0cywgJmhvc3RfaXRzX2xpc3QsIGVudHJ5KQorICAgICAgICB7 CisgICAgICAgICAgICAvKgorCSAgICAgKiBGb3IgZWFjaCBob3N0IElUUyBjcmVhdGUgYSB2aXJ0 dWFsIElUUyB1c2luZyB0aGUgc2FtZQorCSAgICAgKiBiYXNlIGFuZCB0aHVzIGRvb3JiZWxsIGFk ZHJlc3MuCisJICAgICAqIFVzZSB0aGUgc2FtZSBudW1iZXIgb2YgZGV2aWNlIElEIGJpdHMgYXMg dGhlIGhvc3QsIGFuZAorCSAgICAgKiBhbGxvdyAyMCBiaXRzIGZvciB0aGUgaW50ZXJydXB0IElE LgorCSAgICAgKi8KKyAgICAgICAgICAgIHZnaWNfdjNfaXRzX2luaXRfdmlydHVhbChkLCBod19p dHMtPmFkZHIsIGh3X2l0cy0+ZGV2aWRfYml0cywgMjApOworCisgICAgICAgICAgICBkLT5hcmNo LnZnaWMuaGFzX2l0cyA9IHRydWU7CisgICAgICAgIH0KKwogICAgIH0KICAgICBlbHNlCiAgICAg ewpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLWFybS9kb21haW4uaCBiL3hlbi9pbmNsdWRl L2FzbS1hcm0vZG9tYWluLmgKaW5kZXggYWQ0ZGZkYy4uZmEyMjdjYSAxMDA2NDQKLS0tIGEveGVu L2luY2x1ZGUvYXNtLWFybS9kb21haW4uaAorKysgYi94ZW4vaW5jbHVkZS9hc20tYXJtL2RvbWFp bi5oCkBAIC0xMTYsNiArMTE2LDcgQEAgc3RydWN0IGFyY2hfZG9tYWluCiAgICAgICAgIHNwaW5s b2NrX3QgaXRzX2RldmljZXNfbG9jazsgICAgICAgIC8qIFByb3RlY3RzIHRoZSBpdHNfZGV2aWNl cyB0cmVlICovCiAgICAgICAgIHN0cnVjdCByYWRpeF90cmVlX3Jvb3QgcGVuZF9scGlfdHJlZTsg LyogU3RvcmVzIHN0cnVjdCBwZW5kaW5nX2lycSdzICovCiAgICAgICAgIHJ3bG9ja190IHBlbmRf bHBpX3RyZWVfbG9jazsgICAgICAgIC8qIFByb3RlY3RzIHRoZSBwZW5kX2xwaV90cmVlICovCisg ICAgICAgIGJvb2wgaGFzX2l0czsKICNlbmRpZgogICAgIH0gdmdpYzsKIApkaWZmIC0tZ2l0IGEv eGVuL2luY2x1ZGUvYXNtLWFybS9naWNfdjNfaXRzLmggYi94ZW4vaW5jbHVkZS9hc20tYXJtL2dp Y192M19pdHMuaAppbmRleCA0NTc0MDBiLi5lMDU1NzM1IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVk ZS9hc20tYXJtL2dpY192M19pdHMuaAorKysgYi94ZW4vaW5jbHVkZS9hc20tYXJtL2dpY192M19p dHMuaApAQCAtMTQ5LDYgKzE0OSwxNCBAQCB1aW50NjRfdCBnaWN2M19nZXRfcmVkaXN0X2FkZHJl c3ModW5zaWduZWQgaW50IGNwdSwgYm9vbCB1c2VfcHRhKTsKIGludCBnaWN2M19pdHNfc2V0dXBf Y29sbGVjdGlvbih1bnNpZ25lZCBpbnQgY3B1KTsKIAogLyoKKyAqIENyZWF0ZSBhbmQgcmVnaXN0 ZXIgYSB2aXJ0dWFsIElUUyBhdCB0aGUgZ2l2ZW4gZ3Vlc3QgYWRkcmVzcy4KKyAqIElmIGEgaG9z dCBJVFMgaXMgc3BlY2lmaWVkLCBhIGhhcmR3YXJlIGRvbWFpbiBjYW4gcmVhY2ggb3V0IHRvIHRo YXQgaG9zdAorICogSVRTIHRvIGRlYWwgd2l0aCBkZXZpY2VzIGFuZCBMUEkgbWFwcGluZ3MgYW5k IGNhbiBlbmFibGUvZGlzYWJsZSBMUElzLgorICovCitpbnQgdmdpY192M19pdHNfaW5pdF92aXJ0 dWFsKHN0cnVjdCBkb21haW4gKmQsIHBhZGRyX3QgZ3Vlc3RfYWRkciwKKwkJCSAgICAgdW5zaWdu ZWQgaW50IGRldmlkX2JpdHMsIHVuc2lnbmVkIGludCBpbnRpZF9iaXRzKTsKKworLyoKICAqIE1h cCBhIGRldmljZSBvbiB0aGUgaG9zdCBieSBhbGxvY2F0aW5nIGFuIElUVCBvbiB0aGUgaG9zdCAo SVRTKS4KICAqICJucl9ldmVudCIgc3BlY2lmaWVzIGhvdyBtYW55IGV2ZW50cyAoaW50ZXJydXB0 cykgdGhpcyBkZXZpY2Ugd2lsbCBuZWVkLgogICogU2V0dGluZyAidmFsaWQiIHRvIGZhbHNlIGRl YWxsb2NhdGVzIHRoZSBkZXZpY2UuCkBAIC0yMTMsNiArMjIxLDE0IEBAIHN0YXRpYyBpbmxpbmUg dm9pZCBnaWN2M19pdHNfdW5tYXBfYWxsX2RldmljZXMoc3RydWN0IGRvbWFpbiAqZCkKIHsKIH0K IAorc3RhdGljIGlubGluZSBpbnQgdmdpY192M19pdHNfaW5pdF92aXJ0dWFsKHN0cnVjdCBkb21h aW4gKmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZHJf dCBndWVzdF9hZGRyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHVuc2lnbmVkIGludCBkZXZpZF9iaXRzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBpbnRpZF9iaXRzKQoreworICAgIHJldHVybiAwOwor fQorCiAjZW5kaWYgLyogQ09ORklHX0hBU19JVFMgKi8KIAogI2VuZGlmCi0tIAoyLjkuMAoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3Jn L3hlbi1kZXZlbAo=