From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v2 03/27] ARM: GICv3 ITS: allocate device and collection table Date: Wed, 22 Mar 2017 13:52:19 +0000 Message-ID: <4716d9df-73de-675b-8a49-3717dc031aaf@arm.com> References: <20170316112030.20419-1-andre.przywara@arm.com> <20170316112030.20419-4-andre.przywara@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" 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 1cqggd-0004OL-NR for xen-devel@lists.xenproject.org; Wed, 22 Mar 2017 13:52:27 +0000 In-Reply-To: <20170316112030.20419-4-andre.przywara@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Andre Przywara , Stefano Stabellini Cc: xen-devel@lists.xenproject.org, Shanker Donthineni , Vijay Kilari List-Id: xen-devel@lists.xenproject.org SGkgQW5kcmUsCgpPbiAwMy8xNi8yMDE3IDExOjIwIEFNLCBBbmRyZSBQcnp5d2FyYSB3cm90ZToK PiBFYWNoIElUUyBtYXBzIGEgcGFpciBvZiBhIERldmljZUlEIChmb3IgaW5zdGFuY2UgZGVyaXZl ZCBmcm9tIGEgUENJCj4gYi9kL2YgdHJpcGxldCkgYW5kIGFuIEV2ZW50SUQgKHRoZSBNU0kgcGF5 bG9hZCBvciBpbnRlcnJ1cHQgSUQpIHRvIGEKPiBwYWlyIG9mIExQSSBudW1iZXIgYW5kIGNvbGxl Y3Rpb24gSUQsIHdoaWNoIHBvaW50cyB0byB0aGUgdGFyZ2V0IENQVS4KPiBUaGlzIG1hcHBpbmcg aXMgc3RvcmVkIGluIHRoZSBkZXZpY2UgYW5kIGNvbGxlY3Rpb24gdGFibGVzLCB3aGljaCBzb2Z0 d2FyZQo+IGhhcyB0byBwcm92aWRlIGZvciB0aGUgSVRTIHRvIHVzZS4KPiBBbGxvY2F0ZSB0aGUg cmVxdWlyZWQgbWVtb3J5IGFuZCBoYW5kIGl0IHRvIHRoZSBJVFMuCj4gVGhlIG1heGltdW0gbnVt YmVyIG9mIGRldmljZXMgaXMgbGltaXRlZCB0byBhIGNvbXBpbGUtdGltZSBjb25zdGFudAo+IGV4 cG9zZWQgaW4gS2NvbmZpZy4KPgo+IFNpZ25lZC1vZmYtYnk6IEFuZHJlIFByenl3YXJhIDxhbmRy ZS5wcnp5d2FyYUBhcm0uY29tPgo+IC0tLQo+ICBkb2NzL21pc2MveGVuLWNvbW1hbmQtbGluZS5t YXJrZG93biB8ICAgOCArKwo+ICB4ZW4vYXJjaC9hcm0vS2NvbmZpZyAgICAgICAgICAgICAgICB8 ICAxNCArKysrCj4gIHhlbi9hcmNoL2FybS9naWMtdjMtaXRzLmMgICAgICAgICAgIHwgMTYzICsr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICB4ZW4vYXJjaC9hcm0vZ2ljLXYz LmMgICAgICAgICAgICAgICB8ICAgMyArCj4gIHhlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0 cy5oICAgIHwgIDYzICsrKysrKysrKysrKystCj4gIDUgZmlsZXMgY2hhbmdlZCwgMjUwIGluc2Vy dGlvbnMoKyksIDEgZGVsZXRpb24oLSkKPgo+IGRpZmYgLS1naXQgYS9kb2NzL21pc2MveGVuLWNv bW1hbmQtbGluZS5tYXJrZG93biBiL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1saW5lLm1hcmtkb3du Cj4gaW5kZXggNjE5MDE2ZC4uMDY4ZDExNiAxMDA2NDQKPiAtLS0gYS9kb2NzL21pc2MveGVuLWNv bW1hbmQtbGluZS5tYXJrZG93bgo+ICsrKyBiL2RvY3MvbWlzYy94ZW4tY29tbWFuZC1saW5lLm1h cmtkb3duCj4gQEAgLTExNTgsNiArMTE1OCwxNCBAQCBiYXNlZCBpbnRlcnJ1cHRzLiBBbnkgaGln aGVyIElSUXMgd2lsbCBiZSBhdmFpbGFibGUgZm9yIHVzZSB2aWEgUENJIE1TSS4KPiAgIyMjIG1h eGNwdXMKPiAgPiBgPSA8aW50ZWdlcj5gCj4KPiArIyMjIG1heFxfaXRzXF9kZXZpY2VcX2JpdHMK PiArPiBgPSA8aW50ZWdlcj5gCj4gKwo+ICtTcGVjaWZpZXMgdGhlIG1heGltdW0gbnVtYmVyIG9m IGRldmljZXMgdXNpbmcgTVNJcyBvbiB0aGUgQVJNIEdJQ3YzIElUUwo+ICtjb250cm9sbGVyIHRv IGFsbG9jYXRlIHRhYmxlIGVudHJpZXMgZm9yLiBFYWNoIHRhYmxlIGVudHJ5IHVzZXMgYSBoYXJk d2FyZQo+ICtzcGVjaWZpYyBzaXplLCB0eXBpY2FsbHkgOCBvciAxNiBieXRlcy4KPiArRGVmYXVs dHMgdG8gMTAgYml0cyAodG8gY292ZXIgYXQgbW9zdCAxMDI0IGRldmljZXMpLgoKVGhlIGRlc2Ny aXB0aW9uIGlzIG1pc2xlYWRpbmcuIEV2ZW4gaWYgdGhlIHBsYXRmb3JtIGhhcyBsZXNzIHRoYW4g MTAyNApkZXZpY2VzLCAxMCBtYXkgbm90IGJlIGVub3VnaCBpZiB0aGUgRGV2aWNlIElEIGFyZSBu b3QgY29udGlndW91cy4KCkhvd2V2ZXIsIEkgZG9uJ3QgdGhpbmsgdGhpcyBpcyB1c2VmdWwuIEEg dXNlciBtYXkgbm90IGtub3cgdGhlIERldklEcyBpbgp1c2Ugb2YgdGhlIHBsYXRmb3JtIGFuZCBo ZW5jZSB3aWxsIG5vdCBiZSBhYmxlIHRvIGNob29zZSBhIHNlbnNpYmxlIHZhbHVlLgoKSSBzdGls bCB0aGluayB0aGF0IHdlIHNob3VsZCBhbGxvY2F0ZSB3aGF0IHRoZSBoYXJkd2FyZSBhc2tlZCB1 cyBhbmQgaWYKaXQgaXMgbmVjZXNzYXJ5IHRvIGxpbWl0IHRoaXMgc2hvdWxkIGJlIGRvbmUgcGVy LXBsYXRmb3JtLgoKPiArCj4gICMjIyBtYXhcX2xwaVxfYml0cwo+ICA+IGA9IDxpbnRlZ2VyPmAK Pgo+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vS2NvbmZpZyBiL3hlbi9hcmNoL2FybS9LY29u ZmlnCj4gaW5kZXggODZmN2I1My4uMGQ1MDE1NiAxMDA2NDQKPiAtLS0gYS94ZW4vYXJjaC9hcm0v S2NvbmZpZwo+ICsrKyBiL3hlbi9hcmNoL2FybS9LY29uZmlnCj4gQEAgLTY0LDYgKzY0LDIwIEBA IGNvbmZpZyBNQVhfUEhZU19MUElfQklUUwo+ICAgICAgICAgICAgVGhpcyBjYW4gYmUgb3ZlcnJp ZGRlbiBvbiB0aGUgY29tbWFuZCBsaW5lIHdpdGggdGhlIG1heF9scGlfYml0cwo+ICAgICAgICAg ICAgcGFyYW1ldGVyLgo+Cj4gK2NvbmZpZyBNQVhfUEhZU19JVFNfREVWSUNFX0JJVFMKPiArICAg ICAgICBkZXBlbmRzIG9uIEhBU19JVFMKPiArICAgICAgICBpbnQgIk51bWJlciBvZiBkZXZpY2Ug Yml0cyB0aGUgSVRTIHN1cHBvcnRzIgo+ICsgICAgICAgIHJhbmdlIDEgMzIKPiArICAgICAgICBk ZWZhdWx0ICIxMCIKPiArICAgICAgICBoZWxwCj4gKyAgICAgICAgICBTcGVjaWZpZXMgdGhlIG1h eGltdW0gbnVtYmVyIG9mIGRldmljZXMgd2hpY2ggd2FudCB0byB1c2UgdGhlIElUUy4KPiArICAg ICAgICAgIFhlbiBuZWVkcyB0byBhbGxvY2F0ZXMgbWVtb3J5IGZvciB0aGUgd2hvbGUgcmFuZ2Ug dmVyeSBlYXJseS4KPiArICAgICAgICAgIFRoZSBhbGxvY2F0aW9uIHNjaGVtZSBtYXkgYmUgc3Bh cnNlLCBzbyBhIG11Y2ggbGFyZ2VyIG51bWJlciBtdXN0Cj4gKyAgICAgICAgICBiZSBzdXBwb3J0 ZWQgdG8gY292ZXIgZGV2aWNlcyB3aXRoIGEgaGlnaCBidXMgbnVtYmVyIG9yIHRob3NlIG9uCj4g KyAgICAgICAgICBzZXBhcmF0ZSBidXMgc2VnbWVudHMuCj4gKyAgICAgICAgICBUaGlzIGNhbiBi ZSBvdmVycmlkZGVuIG9uIHRoZSBjb21tYW5kIGxpbmUgd2l0aCB0aGUKPiArICAgICAgICAgIG1h eF9pdHNfZGV2aWNlX2JpdHMgcGFyYW1ldGVyLgoKIEZyb20gd2hhdCBJIHVuZGVyc3RhbmQgdGhl IGRlZmF1bHQgeW91IHN1Z2dlc3RlZCBmaXQgbmVpdGhlciBDYXZpdW0gbm9yClF1YWxjb21tIHBs YXRmb3JtLiBJdCBpcyBhbHNvIGhhcmQgdG8gc2VlIGhvdyBhIERpc3RyaWJ1dGlvbiB3aWxsIGJl CmFibGUgdG8gY2hvb3NlIGEgc2Vuc2libGUgdmFsdWUgaGVyZS4KCj4gKwo+ICBlbmRtZW51Cj4K PiAgbWVudSAiQVJNIGVycmF0YSB3b3JrYXJvdW5kIHZpYSB0aGUgYWx0ZXJuYXRpdmUgZnJhbWV3 b3JrIgo+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vZ2ljLXYzLWl0cy5jIGIveGVuL2FyY2gv YXJtL2dpYy12My1pdHMuYwo+IGluZGV4IDQwNTZlNWIuLjk5ODJmZTkgMTAwNjQ0Cj4gLS0tIGEv eGVuL2FyY2gvYXJtL2dpYy12My1pdHMuYwo+ICsrKyBiL3hlbi9hcmNoL2FybS9naWMtdjMtaXRz LmMKClsuLi5dCgo+ICtzdGF0aWMgaW50IGl0c19tYXBfYmFzZXIodm9pZCBfX2lvbWVtICpiYXNl cmVnLCB1aW50NjRfdCByZWdjLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg aW50IG5yX2l0ZW1zKQo+ICt7Cj4gKyAgICB1aW50NjRfdCBhdHRyLCByZWc7Cj4gKyAgICB1bnNp Z25lZCBpbnQgZW50cnlfc2l6ZSA9IEdJVFNfQkFTRVJfRU5UUllfU0laRShyZWdjKTsKPiArICAg IHVuc2lnbmVkIGludCBwYWdlc3ogPSAyLCBvcmRlciwgdGFibGVfc2l6ZTsKClBsZWFzZSBkb2N1 bWVudCB3aGF0IG1lYW4gMi4KCj4gKyAgICB2b2lkICpidWZmZXI7Cj4gKwo+ICsgICAgYXR0ciAg PSBHSUNfQkFTRVJfSW5uZXJTaGFyZWFibGUgPDwgR0lUU19CQVNFUl9TSEFSRUFCSUxJVFlfU0hJ RlQ7Cj4gKyAgICBhdHRyIHw9IEdJQ19CQVNFUl9DQUNIRV9TYW1lQXNJbm5lciA8PCBHSVRTX0JB U0VSX09VVEVSX0NBQ0hFQUJJTElUWV9TSElGVDsKPiArICAgIGF0dHIgfD0gR0lDX0JBU0VSX0NB Q0hFX1JhV2FXYiA8PCBHSVRTX0JBU0VSX0lOTkVSX0NBQ0hFQUJJTElUWV9TSElGVDsKPiArCj4g KyAgICAvKgo+ICsgICAgICogU2V0dXAgdGhlIEJBU0UgcmVnaXN0ZXIgd2l0aCB0aGUgYXR0cmli dXRlcyB0aGF0IHdlIGxpa2UuIFRoZW4gcmVhZAo+ICsgICAgICogaXQgYmFjayBhbmQgc2VlIHdo YXQgc3RpY2tzIChwYWdlIHNpemUsIGNhY2hlYWJpbGl0eSBhbmQgc2hhcmVhYmlsaXR5Cj4gKyAg ICAgKiBhdHRyaWJ1dGVzKSwgcmV0cnlpbmcgaWYgbmVjZXNzYXJ5Lgo+ICsgICAgICovCj4gK3Jl dHJ5Ogo+ICsgICAgdGFibGVfc2l6ZSA9IFJPVU5EVVAobnJfaXRlbXMgKiBlbnRyeV9zaXplLCBC SVQoQkFTRVJfUEFHRV9CSVRTKHBhZ2VzeikpKTsKPiArICAgIC8qIFRoZSBCQVNFIHJlZ2lzdGVy cyBzdXBwb3J0IGF0IG1vc3QgMjU2IHBhZ2VzLiAqLwo+ICsgICAgdGFibGVfc2l6ZSA9IG1pbih0 YWJsZV9zaXplLCAyNTZVIDw8IEJBU0VSX1BBR0VfQklUUyhwYWdlc3opKTsKPiArICAgIC8qIFRo ZSBtZW1vcnkgYmxvY2sgbXVzdCBiZSBhbGlnbmVkIHRvIHRoZSByZXF1ZXN0ZWQgcGFnZSBzaXpl LiAqLwo+ICsgICAgb3JkZXIgPSBtYXgoZ2V0X29yZGVyX2Zyb21fYnl0ZXModGFibGVfc2l6ZSks IHBhZ2VzeiAqIDIpOwo+ICsKPiArICAgIGJ1ZmZlciA9IGFsbG9jX3hlbmhlYXBfcGFnZXMob3Jk ZXIsIDApOwoKV2h5IGRvbid0IHlvdSB1c2UgX3phbGxvYyguLi4pPyBUaGlzIHdvdWxkIGF2b2lk IHRvIGNvbXB1dGUgdGhlIG9yZGVyCmFuZCBkcm9wIGZldyBsaW5lcy4KCj4gKyAgICBpZiAoICFi dWZmZXIgKQo+ICsgICAgICAgIHJldHVybiAtRU5PTUVNOwo+ICsKPiArICAgIGlmICggIWNoZWNr X3Byb3BiYXNlcl9waHlzX2FkZHIoYnVmZmVyLCBCQVNFUl9QQUdFX0JJVFMocGFnZXN6KSkgKQoK VGhlIG5hbWUgb2YgdGhlIGZ1bmN0aW9uIGRvZXMgbm90IG1ha2Ugc2Vuc2UuIFlvdSBjaGVjayBh biBhZGRyZXNzIGZvcgp0aGUgcmVnaXN0ZXIgQkFTRVIgYW5kIG5vdCBQUk9QQkFTRVIuCgo+ICsg ICAgewo+ICsgICAgICAgIGZyZWVfeGVuaGVhcF9wYWdlcyhidWZmZXIsIDApOwo+ICsgICAgICAg IHJldHVybiAtRVJBTkdFOwo+ICsgICAgfQo+ICsgICAgbWVtc2V0KGJ1ZmZlciwgMCwgdGFibGVf c2l6ZSk7CgpbLi4uXQoKPiAraW50IGdpY3YzX2l0c19pbml0KHZvaWQpCj4gK3sKPiArICAgIHN0 cnVjdCBob3N0X2l0cyAqaHdfaXRzOwo+ICsgICAgaW50IHJldDsKPiArCj4gKyAgICBsaXN0X2Zv cl9lYWNoX2VudHJ5KGh3X2l0cywgJmhvc3RfaXRzX2xpc3QsIGVudHJ5KSB7CgpDb2Rpbmcgc3R5 bGU6CgpsaXN0X2Zvcl9lYWNoX2VudHJ5KC4uLi4pCnsKCj4gKyAgICAgICAgcmV0ID0gZ2ljdjNf aXRzX2luaXRfc2luZ2xlX2l0cyhod19pdHMpOwo+ICsgICAgICAgIGlmICggcmV0ICkKPiArICAg ICAgICAgICAgcmV0dXJuIHJldDsKPiArICAgIH0KPiArCj4gKyAgICByZXR1cm4gMDsKPiArfQo+ ICsKPiAgLyogU2NhbiB0aGUgRFQgZm9yIGFueSBJVFMgbm9kZXMgYW5kIGNyZWF0ZSBhIGxpc3Qg b2YgaG9zdCBJVFNlcyBvdXQgb2YgaXQuICovCj4gIHZvaWQgZ2ljdjNfaXRzX2R0X2luaXQoY29u c3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpub2RlKQo+ICB7Cj4gZGlmZiAtLWdpdCBhL3hlbi9h cmNoL2FybS9naWMtdjMuYyBiL3hlbi9hcmNoL2FybS9naWMtdjMuYwo+IGluZGV4IGVkNzgzNjMu LmNjMWUyMTkgMTAwNjQ0Cj4gLS0tIGEveGVuL2FyY2gvYXJtL2dpYy12My5jCj4gKysrIGIveGVu L2FyY2gvYXJtL2dpYy12My5jCj4gQEAgLTE1OTAsNiArMTU5MCw5IEBAIHN0YXRpYyBpbnQgX19p bml0IGdpY3YzX2luaXQodm9pZCkKPiAgICAgIHNwaW5fbG9jaygmZ2ljdjMubG9jayk7Cj4KPiAg ICAgIGdpY3YzX2Rpc3RfaW5pdCgpOwo+ICsgICAgcmVzID0gZ2ljdjNfaXRzX2luaXQoKTsKPiAr ICAgIGlmICggcmVzICkKPiArICAgICAgICBwcmludGsoWEVOTE9HX1dBUk5JTkcgIkdJQ3YzOiBJ VFM6IGluaXRpYWxpemF0aW9uIGZhaWxlZDogJWRcbiIsIHJlcyk7CgpJIHdvdWxkIGhhdmUgZXhw ZWN0IGEgcGFuaWMgaGVyZSBiZWNhdXNlIHRoZSBJVFMgc3Vic3lzdGVtIGNvdWxkIGJlIGhhbGYK aW5pdGlhbGl6ZWQgYW5kIGl0IGlzIG5vdCBzYWZlIHRvIGNvbnRpbnVlLgoKPiAgICAgIHJlcyA9 IGdpY3YzX2NwdV9pbml0KCk7Cj4gICAgICBnaWN2M19oeXBfaW5pdCgpOwo+CgpDaGVlcnMsCgot LQpKdWxpZW4gR3JhbGwKSU1QT1JUQU5UIE5PVElDRTogVGhlIGNvbnRlbnRzIG9mIHRoaXMgZW1h aWwgYW5kIGFueSBhdHRhY2htZW50cyBhcmUgY29uZmlkZW50aWFsIGFuZCBtYXkgYWxzbyBiZSBw cml2aWxlZ2VkLiBJZiB5b3UgYXJlIG5vdCB0aGUgaW50ZW5kZWQgcmVjaXBpZW50LCBwbGVhc2Ug bm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgYW5kIGRvIG5vdCBkaXNjbG9zZSB0aGUgY29u dGVudHMgdG8gYW55IG90aGVyIHBlcnNvbiwgdXNlIGl0IGZvciBhbnkgcHVycG9zZSwgb3Igc3Rv cmUgb3IgY29weSB0aGUgaW5mb3JtYXRpb24gaW4gYW55IG1lZGl1bS4gVGhhbmsgeW91LgoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1h aWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==