From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vijay Kilari Subject: Re: [PATCH v2 14/27] ARM: vGICv3: introduce basic ITS emulation bits Date: Mon, 20 Mar 2017 17:47:50 +0530 Message-ID: References: <20170316112030.20419-1-andre.przywara@arm.com> <20170316112030.20419-15-andre.przywara@arm.com> <2002ed1f-af8f-a57f-fc06-42d682918bb1@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cpwG3-0003Rt-D0 for xen-devel@lists.xenproject.org; Mon, 20 Mar 2017 12:17:55 +0000 Received: by mail-ot0-f195.google.com with SMTP id x37so19059052ota.1 for ; Mon, 20 Mar 2017 05:17:51 -0700 (PDT) In-Reply-To: <2002ed1f-af8f-a57f-fc06-42d682918bb1@codeaurora.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Shanker Donthineni Cc: Andre Przywara , Julien Grall , Stefano Stabellini , xen-devel List-Id: xen-devel@lists.xenproject.org T24gVGh1LCBNYXIgMTYsIDIwMTcgYXQgOTo1NSBQTSwgU2hhbmtlciBEb250aGluZW5pCjxzaGFu a2VyZEBjb2RlYXVyb3JhLm9yZz4gd3JvdGU6Cj4gSGkgQW5kcmUsCj4KPgo+IE9uIDAzLzE2LzIw MTcgMDY6MjAgQU0sIEFuZHJlIFByenl3YXJhIHdyb3RlOgo+PiBDcmVhdGUgYSBuZXcgZmlsZSB0 byBob2xkIHRoZSBlbXVsYXRpb24gY29kZSBmb3IgdGhlIElUUyB3aWRnZXQuCj4+IEZvciBub3cg d2UgZW11bGF0ZSB0aGUgbWVtb3J5IG1hcHBlZCBJVFMgcmVnaXN0ZXJzIGFuZCBwcm92aWRlIGEg c3R1Ygo+PiB0byBpbnRyb2R1Y2UgdGhlIElUUyBjb21tYW5kIGhhbmRsaW5nIGZyYW1ld29yayAo YnV0IHdpdGhvdXQgYWN0dWFsbHkKPj4gZW11bGF0aW5nIGFueSBjb21tYW5kcyBhdCB0aGlzIHRp bWUpLgo+Pgo+PiBTaWduZWQtb2ZmLWJ5OiBBbmRyZSBQcnp5d2FyYSA8YW5kcmUucHJ6eXdhcmFA YXJtLmNvbT4KPj4gLS0tCj4+ICB4ZW4vYXJjaC9hcm0vTWFrZWZpbGUgICAgICAgICAgICAgfCAg IDEgKwo+PiAgeGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMgICAgICAgIHwgNDg3ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+ICB4ZW4vYXJjaC9hcm0vdmdpYy12My5j ICAgICAgICAgICAgfCAgIDkgLQo+PiAgeGVuL2luY2x1ZGUvYXNtLWFybS9naWNfdjNfZGVmcy5o IHwgIDE5ICsrCj4+ICA0IGZpbGVzIGNoYW5nZWQsIDUwNyBpbnNlcnRpb25zKCspLCA5IGRlbGV0 aW9ucygtKQo+PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9hcmNoL2FybS92Z2ljLXYzLWl0cy5j Cj4+Cj4+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vTWFrZWZpbGUgYi94ZW4vYXJjaC9hcm0v TWFrZWZpbGUKPj4gaW5kZXggMDJhODczNy4uZTdjZTJjODMgMTAwNjQ0Cj4+IC0tLSBhL3hlbi9h cmNoL2FybS9NYWtlZmlsZQo+PiArKysgYi94ZW4vYXJjaC9hcm0vTWFrZWZpbGUKPj4gQEAgLTQ3 LDYgKzQ3LDcgQEAgb2JqLXkgKz0gdHJhcHMubwo+PiAgb2JqLXkgKz0gdmdpYy5vCj4+ICBvYmot eSArPSB2Z2ljLXYyLm8KPj4gIG9iai0kKENPTkZJR19IQVNfR0lDVjMpICs9IHZnaWMtdjMubwo+ PiArb2JqLSQoQ09ORklHX0hBU19JVFMpICs9IHZnaWMtdjMtaXRzLm8KPj4gIG9iai15ICs9IHZt X2V2ZW50Lm8KPj4gIG9iai15ICs9IHZ0aW1lci5vCj4+ICBvYmoteSArPSB2cHNjaS5vCj4+IGRp ZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vdmdpYy12My1pdHMuYyBiL3hlbi9hcmNoL2FybS92Z2lj LXYzLWl0cy5jCj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4+IGluZGV4IDAwMDAwMDAuLjUzMzc2 MzgKPj4gLS0tIC9kZXYvbnVsbAo+PiArKysgYi94ZW4vYXJjaC9hcm0vdmdpYy12My1pdHMuYwo+ PiBAQCAtMCwwICsxLDQ4NyBAQAo+PiArLyoKPj4gKyAqIHhlbi9hcmNoL2FybS92Z2ljLXYzLWl0 cy5jCj4+ICsgKgo+PiArICogQVJNIEludGVycnVwdCBUcmFuc2xhdGlvbiBTZXJ2aWNlIChJVFMp IGVtdWxhdGlvbgo+PiArICoKPj4gKyAqIEFuZHJlIFByenl3YXJhIDxhbmRyZS5wcnp5d2FyYUBh cm0uY29tPgo+PiArICogQ29weXJpZ2h0IChjKSAyMDE2LDIwMTcgQVJNIEx0ZC4KPj4gKyAqCj4+ ICsgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yIG1vZGlmeQo+PiArICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKPj4gKyAqIHRoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb247IHVuZGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZS4KPj4gKyAqCj4+ ICsgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwKPj4gKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVu IHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4+ICsgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVT UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCj4+ICsgKiBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgo+PiArICoKPj4gKyAqIFlvdSBzaG91bGQg aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCj4+ ICsgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251 Lm9yZy9saWNlbnNlcy8+Lgo+PiArICovCj4+ICsKPj4gKyNpbmNsdWRlIDx4ZW4vYml0b3BzLmg+ Cj4+ICsjaW5jbHVkZSA8eGVuL2NvbmZpZy5oPgo+PiArI2luY2x1ZGUgPHhlbi9kb21haW5fcGFn ZS5oPgo+PiArI2luY2x1ZGUgPHhlbi9saWIuaD4KPj4gKyNpbmNsdWRlIDx4ZW4vaW5pdC5oPgo+ PiArI2luY2x1ZGUgPHhlbi9zb2Z0aXJxLmg+Cj4+ICsjaW5jbHVkZSA8eGVuL2lycS5oPgo+PiAr I2luY2x1ZGUgPHhlbi9zY2hlZC5oPgo+PiArI2luY2x1ZGUgPHhlbi9zaXplcy5oPgo+PiArI2lu Y2x1ZGUgPGFzbS9jdXJyZW50Lmg+Cj4+ICsjaW5jbHVkZSA8YXNtL21taW8uaD4KPj4gKyNpbmNs dWRlIDxhc20vZ2ljX3YzX2RlZnMuaD4KPj4gKyNpbmNsdWRlIDxhc20vZ2ljX3YzX2l0cy5oPgo+ PiArI2luY2x1ZGUgPGFzbS92Z2ljLmg+Cj4+ICsjaW5jbHVkZSA8YXNtL3ZnaWMtZW11bC5oPgo+ PiArCj4+ICsvKiBEYXRhIHN0cnVjdHVyZSB0byBkZXNjcmliZSBhIHZpcnR1YWwgSVRTICovCj4+ ICtzdHJ1Y3QgdmlydF9pdHMgewo+PiArICAgIHN0cnVjdCBkb21haW4gKmQ7Cj4+ICsgICAgc3Bp bmxvY2tfdCB2Y21kX2xvY2s7ICAgICAgIC8qIHByb3RlY3RzIHRoZSB2aXJ0dWFsIGNvbW1hbmQg YnVmZmVyICovCj4+ICsgICAgdWludDY0X3QgY2Jhc2VyOwo+PiArICAgIHVpbnQ2NF90ICpjbWRi dWY7Cj4+ICsgICAgaW50IGN3cml0ZXI7Cj4+ICsgICAgaW50IGNyZWFkcjsKPj4gKyAgICBzcGlu bG9ja190IGl0c19sb2NrOyAgICAgICAgLyogcHJvdGVjdHMgdGhlIGNvbGxlY3Rpb24gYW5kIGRl dmljZSB0YWJsZXMgKi8KPj4gKyAgICB1aW50NjRfdCBiYXNlcjAsIGJhc2VyMTsKPj4gKyAgICB1 aW50MTZfdCAqY29sbF90YWJsZTsKPj4gKyAgICBpbnQgbWF4X2NvbGxlY3Rpb25zOwo+PiArICAg IHVpbnQ2NF90ICpkZXZfdGFibGU7Cj4+ICsgICAgaW50IG1heF9kZXZpY2VzOwo+PiArICAgIGJv b2wgZW5hYmxlZDsKPj4gK307Cj4+ICsKPj4gKy8qCj4+ICsgKiBBbiBJbnRlcnJ1cHQgVHJhbnNs YXRpb24gVGFibGUgRW50cnk6IHRoaXMgaXMgaW5kZXhlZCBieSBhCj4+ICsgKiBEZXZpY2VJRC9F dmVudElEIHBhaXIgYW5kIGlzIGxvY2F0ZWQgaW4gZ3Vlc3QgbWVtb3J5Lgo+PiArICovCj4+ICtz dHJ1Y3Qgdml0c19pdHRlCj4+ICt7Cj4+ICsgICAgdWludDMyX3QgdmxwaTsKPj4gKyAgICB1aW50 MTZfdCBjb2xsZWN0aW9uOwo+PiArfTsKPj4gKwo+PiArLyoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqCj4+ICsgKiBGdW5jdGlvbnMgdGhhdCBoYW5kbGUgSVRTIGNvbW1hbmRz ICoKPj4gKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KPj4gKwo+PiAr c3RhdGljIHVpbnQ2NF90IGl0c19jbWRfbWFza19maWVsZCh1aW50NjRfdCAqaXRzX2NtZCwKPj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHdvcmQsIGludCBzaGlmdCwg aW50IHNpemUpCj4+ICt7Cj4+ICsgICAgcmV0dXJuIChsZTY0X3RvX2NwdShpdHNfY21kW3dvcmRd KSA+PiBzaGlmdCkgJiAoQklUKHNpemUpIC0gMSk7Cj4+ICt9Cj4+ICsKPj4gKyNkZWZpbmUgaXRz X2NtZF9nZXRfY29tbWFuZChjbWQpICAgICAgICBpdHNfY21kX21hc2tfZmllbGQoY21kLCAwLCAg MCwgIDgpCj4+ICsjZGVmaW5lIGl0c19jbWRfZ2V0X2RldmljZWlkKGNtZCkgICAgICAgaXRzX2Nt ZF9tYXNrX2ZpZWxkKGNtZCwgMCwgMzIsIDMyKQo+PiArI2RlZmluZSBpdHNfY21kX2dldF9zaXpl KGNtZCkgICAgICAgICAgIGl0c19jbWRfbWFza19maWVsZChjbWQsIDEsICAwLCAgNSkKPj4gKyNk ZWZpbmUgaXRzX2NtZF9nZXRfaWQoY21kKSAgICAgICAgICAgICBpdHNfY21kX21hc2tfZmllbGQo Y21kLCAxLCAgMCwgMzIpCj4+ICsjZGVmaW5lIGl0c19jbWRfZ2V0X3BoeXNpY2FsX2lkKGNtZCkg ICAgaXRzX2NtZF9tYXNrX2ZpZWxkKGNtZCwgMSwgMzIsIDMyKQo+PiArI2RlZmluZSBpdHNfY21k X2dldF9jb2xsZWN0aW9uKGNtZCkgICAgIGl0c19jbWRfbWFza19maWVsZChjbWQsIDIsICAwLCAx NikKPj4gKyNkZWZpbmUgaXRzX2NtZF9nZXRfdGFyZ2V0X2FkZHIoY21kKSAgICBpdHNfY21kX21h c2tfZmllbGQoY21kLCAyLCAxNiwgMzIpCj4+ICsjZGVmaW5lIGl0c19jbWRfZ2V0X3ZhbGlkYml0 KGNtZCkgICAgICAgaXRzX2NtZF9tYXNrX2ZpZWxkKGNtZCwgMiwgNjMsICAxKQo+PiArCj4+ICsj ZGVmaW5lIElUU19DTURfQlVGRkVSX1NJWkUoYmFzZXIpICAgICAgKCgoKGJhc2VyKSAmIDB4ZmYp ICsgMSkgPDwgMTIpCj4+ICsKPj4gK3N0YXRpYyBpbnQgdmdpY19pdHNfaGFuZGxlX2NtZHMoc3Ry dWN0IGRvbWFpbiAqZCwgc3RydWN0IHZpcnRfaXRzICppdHMsCj4+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVpbnQzMl90IHdyaXRlcikKPj4gK3sKPj4gKyAgICB1aW50NjRfdCAq Y21kcHRyOwo+PiArCj4+ICsgICAgaWYgKCAhaXRzLT5jbWRidWYgKQo+PiArICAgICAgICByZXR1 cm4gLTE7Cj4+ICsKPj4gKyAgICBpZiAoIHdyaXRlciA+PSBJVFNfQ01EX0JVRkZFUl9TSVpFKGl0 cy0+Y2Jhc2VyKSApCj4+ICsgICAgICAgIHJldHVybiAtMTsKPj4gKwo+PiArICAgIHNwaW5fbG9j aygmaXRzLT52Y21kX2xvY2spOwo+PiArCj4+ICsgICAgd2hpbGUgKCBpdHMtPmNyZWFkciAhPSB3 cml0ZXIgKQo+PiArICAgIHsKPj4gKyAgICAgICAgY21kcHRyID0gaXRzLT5jbWRidWYgKyAoaXRz LT5jcmVhZHIgLyBzaXplb2YoKml0cy0+Y21kYnVmKSk7Cj4+ICsgICAgICAgIHN3aXRjaCAoaXRz X2NtZF9nZXRfY29tbWFuZChjbWRwdHIpKQo+PiArICAgICAgICB7Cj4+ICsgICAgICAgIGNhc2Ug R0lUU19DTURfU1lOQzoKPj4gKyAgICAgICAgICAgIC8qIFdlIGhhbmRsZSBJVFMgY29tbWFuZHMg c3luY2hyb25vdXNseSwgc28gd2UgaWdub3JlIFNZTkMuICovCj4+ICsgICAgICAgICBicmVhazsK Pj4gKyAgICAgICAgZGVmYXVsdDoKPj4gKyAgICAgICAgICAgIGdkcHJpbnRrKFhFTkxPR19HX1dB Uk5JTkcsICJJVFM6IHVuaGFuZGxlZCBJVFMgY29tbWFuZCAlbGRcbiIsCj4+ICsgICAgICAgICAg ICAgICAgICAgaXRzX2NtZF9nZXRfY29tbWFuZChjbWRwdHIpKTsKPj4gKyAgICAgICAgICAgIGJy ZWFrOwo+PiArICAgICAgICB9Cj4+ICsKPj4gKyAgICAgICAgaXRzLT5jcmVhZHIgKz0gSVRTX0NN RF9TSVpFOwo+PiArICAgICAgICBpZiAoIGl0cy0+Y3JlYWRyID09IElUU19DTURfQlVGRkVSX1NJ WkUoaXRzLT5jYmFzZXIpICkKPj4gKyAgICAgICAgICAgIGl0cy0+Y3JlYWRyID0gMDsKPj4gKyAg ICB9Cj4+ICsgICAgaXRzLT5jd3JpdGVyID0gd3JpdGVyOwo+PiArCj4+ICsgICAgc3Bpbl91bmxv Y2soJml0cy0+dmNtZF9sb2NrKTsKPj4gKwo+PiArICAgIHJldHVybiAwOwo+PiArfQo+PiArCj4+ ICsvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKPj4gKyAqIElUUyByZWdpc3RlcnMgcmVh ZCBhY2Nlc3MgKgo+PiArICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwo+PiArCj4+ICsv Kgo+PiArICogVGhlIHBoeXNpY2FsIGFkZHJlc3MgaXMgZW5jb2RlZCBzbGlnaHRseSBkaWZmZXJl bnRseSBkZXBlbmRpbmcgb24KPj4gKyAqIHRoZSB1c2VkIHBhZ2Ugc2l6ZTogdGhlIGhpZ2hlc3Qg Zm91ciBiaXRzIGFyZSBzdG9yZWQgaW4gdGhlIGxvd2VzdAo+PiArICogZm91ciBiaXRzIG9mIHRo ZSBmaWVsZCBmb3IgNjRLIHBhZ2VzLgo+PiArICovCj4+ICtzdGF0aWMgcGFkZHJfdCBnZXRfYmFz ZXJfcGh5c19hZGRyKHVpbnQ2NF90IHJlZykKPj4gK3sKPj4gKyAgICBpZiAoIHJlZyAmIEJJVCg5 KSApCj4+ICsgICAgICAgIHJldHVybiAocmVnICYgR0VOTUFTSyg0NywgMTYpKSB8ICgocmVnICYg R0VOTUFTSygxNSwgMTIpKSA8PCAzNik7Cj4+ICsgICAgZWxzZQo+PiArICAgICAgICByZXR1cm4g cmVnICYgR0VOTUFTSyg0NywgMTIpOwo+PiArfQo+PiArCj4+ICtzdGF0aWMgaW50IHZnaWNfdjNf aXRzX21taW9fcmVhZChzdHJ1Y3QgdmNwdSAqdiwgbW1pb19pbmZvX3QgKmluZm8sCj4+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWdpc3Rlcl90ICpyLCB2b2lkICpwcml2KQo+ PiArewo+PiArICAgIHN0cnVjdCB2aXJ0X2l0cyAqaXRzID0gcHJpdjsKPj4gKwo+PiArICAgIHN3 aXRjaCAoIGluZm8tPmdwYSAmIDB4ZmZmZiApCj4+ICsgICAgewo+PiArICAgIGNhc2UgVlJFRzMy KEdJVFNfQ1RMUik6Cj4+ICsgICAgICAgIGlmICggaW5mby0+ZGFidC5zaXplICE9IERBQlRfV09S RCApIGdvdG8gYmFkX3dpZHRoOwo+PiArICAgICAgICAqciA9IHZnaWNfcmVnMzJfZXh0cmFjdChp dHMtPmVuYWJsZWQgfCBCSVQoMzEpLCBpbmZvKTsKPj4gKyAgICAgYnJlYWs7Cj4+ICsgICAgY2Fz ZSBWUkVHMzIoR0lUU19JSURSKToKPj4gKyAgICAgICAgaWYgKCBpbmZvLT5kYWJ0LnNpemUgIT0g REFCVF9XT1JEICkgZ290byBiYWRfd2lkdGg7Cj4+ICsgICAgICAgICpyID0gdmdpY19yZWczMl9l eHRyYWN0KEdJVFNfSUlEUl9WQUxVRSwgaW5mbyk7Cj4+ICsgICAgICAgIGJyZWFrOwo+PiArICAg IGNhc2UgVlJFRzY0KEdJVFNfVFlQRVIpOgo+PiArICAgICAgICBpZiAoIGluZm8tPmRhYnQuc2l6 ZSA8IERBQlRfV09SRCApIGdvdG8gYmFkX3dpZHRoOwo+PiArICAgICAgICAqciA9IHZnaWNfcmVn NjRfZXh0cmFjdCgweDFlZmYxLCBpbmZvKTsKPgo+IFBsZWFzZSBkb24ndCBoYXJkLWNvZGUgRGV2 Yml0cyAoYml0cyAxNy0xMykgdmFsdWUgdG8gMTYgaGVyZS4gRm9yIGRvbTAsIGF0IGxlYXN0IG1h dGNoIHRvIEtjb25maWcgb3B0aW9uLCBvciB1c2UgSVRTIGhhcmR3YXJlIHJlcG9ydGVkIHZhbHVl LiBPbiBRdWFsY29tbSBzZXJ2ZXIgY2hpcHMsIEdJVFNfVFlQRVIuRGV2Yml0IGlzIHNldCB0byAz MmJpdHMuCgpPbiBDYXZpdW0gYWxzbywgdGhlIG51bWJlciBEZXZiaXRzIGlzIG1vcmUgdGhhbiAx Ny4gSVJDIGl0IGlzIDIyCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0 dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK