From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: Re: [PATCH v3 10/16] xen/arm: cpufeature: Provide an helper to check if a capability is supported Date: Wed, 22 Jun 2016 10:59:31 +0100 (BST) Message-ID: References: <1465315583-1278-1-git-send-email-julien.grall@arm.com> <1465315583-1278-11-git-send-email-julien.grall@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1465315583-1278-11-git-send-email-julien.grall@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Julien Grall Cc: andre.przywara@arm.com, sstabellini@kernel.org, steve.capper@arm.com, wei.chen@arm.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gVHVlLCA3IEp1biAyMDE2LCBKdWxpZW4gR3JhbGwgd3JvdGU6Cj4gVGhlIENQVSBjYXBhYmls aXRpZXMgd2lsbCBiZSBzZXQgZGVwZW5kaW5nIG9uIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgQ1BV Cj4gcmVnaXN0ZXJzLiBUaGlzIHBhdGNoIHByb3ZpZGVzIGEgZ2VuZXJpYyB0byBnbyB0aHJvdWdo IGEgc2V0IG9mIGNhcGFiaWxpdGllcwo+IGFuZCBmaW5kIHdoaWNoIG9uZSBzaG91bGQgYmUgZW5h YmxlZC4KPiAKPiBUaGUgcGFyYW1ldGVyICJpbmZvIiBpcyB1c2VkIHRvIGRpc3BsYXkgdGhlIGtp bmQgb2YgY2FwYWJpbGl0eSB1cGRhdGVkIChlLmcKPiB3b3JrYXJvdW5kLCBmZWF0dXJlLi4uKS4K PiAKPiBTaWduZWQtb2ZmLWJ5OiBKdWxpZW4gR3JhbGwgPGp1bGllbi5ncmFsbEBhcm0uY29tPgo+ IAo+IC0tLQo+ICAgICBDaGFuZ2VzIGluIHYzOgo+ICAgICAgICAgIC0gUGF0Y2ggYWRkZWQuIFRo ZSBjb2RlIHdhcyBwcmV2aW91c2x5IHBhcnQgb2YgIkRldGVjdAo+ICAgICAgICAgIHNpbGljb24u Li4iLgo+IC0tLQo+ICB4ZW4vYXJjaC9hcm0vY3B1ZmVhdHVyZS5jICAgICAgICB8IDE2ICsrKysr KysrKysrKysrKysKPiAgeGVuL2luY2x1ZGUvYXNtLWFybS9jcHVmZWF0dXJlLmggfCAgOSArKysr KysrKysKPiAgMiBmaWxlcyBjaGFuZ2VkLCAyNSBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdp dCBhL3hlbi9hcmNoL2FybS9jcHVmZWF0dXJlLmMgYi94ZW4vYXJjaC9hcm0vY3B1ZmVhdHVyZS5j Cj4gaW5kZXggN2ExYjU2Yi4uMDg4NjI1YiAxMDA2NDQKPiAtLS0gYS94ZW4vYXJjaC9hcm0vY3B1 ZmVhdHVyZS5jCj4gKysrIGIveGVuL2FyY2gvYXJtL2NwdWZlYXR1cmUuYwo+IEBAIC0yNCw2ICsy NCwyMiBAQAo+ICAKPiAgREVDTEFSRV9CSVRNQVAoY3B1X2h3Y2FwcywgQVJNX05DQVBTKTsKPiAg Cj4gK3ZvaWQgdXBkYXRlX2NwdV9jYXBhYmlsaXRpZXMoY29uc3Qgc3RydWN0IGFybV9jcHVfY2Fw YWJpbGl0aWVzICpjYXBzLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmluZm8pCj4gK3sKPiArICAgIGludCBpOwo+ICsKPiArICAgIGZvciAoIGkgPSAwOyBjYXBz W2ldLm1hdGNoZXM7IGkrKyApCj4gKyAgICB7Cj4gKyAgICAgICAgaWYgKCAhY2Fwc1tpXS5tYXRj aGVzKCZjYXBzW2ldKSApCj4gKyAgICAgICAgICAgIGNvbnRpbnVlOwo+ICsKPiArICAgICAgICBp ZiAoICFjcHVzX2hhdmVfY2FwKGNhcHNbaV0uY2FwYWJpbGl0eSkgJiYgY2Fwc1tpXS5kZXNjICkK PiArICAgICAgICAgICAgcHJpbnRrKFhFTkxPR19JTkZPICIlczogJXNcbiIsIGluZm8sIGNhcHNb aV0uZGVzYyk7CgpUaGUgcGF0Y2ggaXMgT0suIEkgc3RpbGwgaGF2ZSB0aGUgc2FtZSBjb21tZW50 IGFzIGJlZm9yZTogaWYgYW4gaW5mbwpwYXJhbWV0ZXIgaXMgcGFzc2VkIHRvIHRoaXMgZnVuY3Rp b24gd2l0aCBhIHN0cmluZywgdGhlbiBJIHRoaW5rIHRoZQpzdHJpbmcgc2hvdWxkIGNvbnRhaW4g c29tZSB1c2VmdWwgaW5mb3JtYXRpb24uIE5vdCBhIGdlbmVyaWMgbWVzc2FnZS4KSSB3b3VsZCBq dXN0IGRvOgoKICAgIHByaW50ayhYRU5MT0dfSU5GTyAiZW5hYmxlIHdvcmthcm91bmQgZm9yOiAl c1xuIiwgY2Fwc1tpXS5kZXNjKTsKCklmIG9uZSBkYXkgd2UgbmVlZCB0byBjaGFuZ2UgdGhlIG1l c3NhZ2UgZGVwZW5kaW5nIG9uIHRoZSBjYWxsZXIsIHRoZW4KdGhhdCBkYXkgd2UnbGwgYWRkIGEg cGFyYW1ldGVyIHRvIHVwZGF0ZV9jcHVfY2FwYWJpbGl0aWVzLgoKCj4gKyAgICAgICAgY3B1c19z ZXRfY2FwKGNhcHNbaV0uY2FwYWJpbGl0eSk7Cj4gKyAgICB9Cj4gK30KPiArCj4gIC8qCj4gICAq IExvY2FsIHZhcmlhYmxlczoKPiAgICogbW9kZTogQwo+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVk ZS9hc20tYXJtL2NwdWZlYXR1cmUuaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vY3B1ZmVhdHVyZS5o Cj4gaW5kZXggMmJlYmFkMS4uYmUyNDE0YyAxMDA2NDQKPiAtLS0gYS94ZW4vaW5jbHVkZS9hc20t YXJtL2NwdWZlYXR1cmUuaAo+ICsrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vY3B1ZmVhdHVyZS5o Cj4gQEAgLTYyLDYgKzYyLDE1IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBjcHVzX3NldF9jYXAodW5z aWduZWQgaW50IG51bSkKPiAgICAgICAgICBfX3NldF9iaXQobnVtLCBjcHVfaHdjYXBzKTsKPiAg fQo+ICAKPiArc3RydWN0IGFybV9jcHVfY2FwYWJpbGl0aWVzIHsKPiArICAgIGNvbnN0IGNoYXIg KmRlc2M7Cj4gKyAgICB1MTYgY2FwYWJpbGl0eTsKPiArICAgIGJvb2xfdCAoKm1hdGNoZXMpKGNv bnN0IHN0cnVjdCBhcm1fY3B1X2NhcGFiaWxpdGllcyAqKTsKPiArfTsKPiArCj4gK3ZvaWQgdXBk YXRlX2NwdV9jYXBhYmlsaXRpZXMoY29uc3Qgc3RydWN0IGFybV9jcHVfY2FwYWJpbGl0aWVzICpj YXBzLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmluZm8pOwo+ ICsKPiAgI2VuZGlmIC8qIF9fQVNTRU1CTFlfXyAqLwo+ICAKPiAgI2VuZGlmCj4gLS0gCj4gMS45 LjEKPiAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhl bi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3Rz Lnhlbi5vcmcveGVuLWRldmVsCg==