From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shanker Donthineni Subject: Re: [PATCH 3/8] arm/gic-v3: Parse per-cpu redistributor entry in GICC subtable Date: Tue, 21 Jun 2016 08:52:49 -0500 Message-ID: <576946B1.3000303@codeaurora.org> References: <1466293521-32746-1-git-send-email-shankerd@codeaurora.org> <1466293521-32746-4-git-send-email-shankerd@codeaurora.org> <576913F6.3020100@arm.com> Reply-To: shankerd@codeaurora.org Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <576913F6.3020100@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Julien Grall , xen-devel , Stefano Stabellini Cc: Philip Elcan , Vikram Sethi List-Id: xen-devel@lists.xenproject.org CgpPbiAwNi8yMS8yMDE2IDA1OjE2IEFNLCBKdWxpZW4gR3JhbGwgd3JvdGU6Cj4gSGVsbG8gU2hh bmtlciwKPgo+IE9uIDE5LzA2LzE2IDAwOjQ1LCBTaGFua2VyIERvbnRoaW5lbmkgd3JvdGU6Cj4+ IFRoZSByZWRpc3RyaWJ1dG9yIGFkZHJlc3MgY2FuIGJlIHNwZWNpZmllZCBlaXRoZXIgYXMgcGFy dCBvZiBHSUNDIG9yCj4+IEdJQ1Igc3VidGFibGUgZGVwZW5kaW5nIG9uIHRoZSBwb3dlciBkb21h aW4uIFRoZSBjdXJyZW50IGRyaXZlcgo+PiBkb2Vzbid0IHN1cHBvcnQgcGFyc2luZyByZWRpc3Ry aWJ1dG9yIGVudHJ5IHRoYXQgaXMgZGVmaW5lZCBpbiBHSUNDCj4+IHN1YnRhYmxlLiBUaGUgR0lD IENQVSBzdWJ0YWJsZSBlbnRyeSBob2xkcyB0aGUgYXNzb2NpYXRlZCBSZWRpc3RyaWJ1dG9yCj4+ IGJhc2UgYWRkcmVzcyBpZiBpdCBpcyBub3Qgb24gYWx3YXlzLW9uIHBvd2VyIGRvbWFpbi4KPj4K Pj4gVGhpcyBwYXRjaCBhZGRzIG5lY2Vzc2FyeSBjb2RlIHRvIGhhbmRsZSBib3RoIHR5cGVzIG9m IFJlZGlzdHJpYnV0b3JzCj4+IGJhc2UgYWRkcmVzc2VzLgo+Pgo+PiBTaWduZWQtb2ZmLWJ5OiBT aGFua2VyIERvbnRoaW5lbmkgPHNoYW5rZXJkQGNvZGVhdXJvcmEub3JnPgo+PiAtLS0KPj4gICB4 ZW4vYXJjaC9hcm0vZ2ljLXYzLmMgICAgICAgICAgICAgfCA5Nwo+ICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLQo+PiAgIHhlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljLmggICAg ICAgICB8ICAyICsKPj4gICB4ZW4vaW5jbHVkZS9hc20tYXJtL2dpY192M19kZWZzLmggfCAgMSAr Cj4+ICAgMyBmaWxlcyBjaGFuZ2VkLCA4MyBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkK Pj4KPj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9naWMtdjMuYyBiL3hlbi9hcmNoL2FybS9n aWMtdjMuYwo+PiBpbmRleCBhZjEyZWJjLi40MmNmODQ4IDEwMDY0NAo+PiAtLS0gYS94ZW4vYXJj aC9hcm0vZ2ljLXYzLmMKPj4gKysrIGIveGVuL2FyY2gvYXJtL2dpYy12My5jCj4+IEBAIC02NTks NiArNjU5LDEwIEBAIHN0YXRpYyBpbnQgX19pbml0IGdpY3YzX3BvcHVsYXRlX3JkaXN0KHZvaWQp Cj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgc21wX3Byb2Nlc3Nvcl9pZCgpLCBpLCBwdHIp Owo+PiAgICAgICAgICAgICAgICAgICByZXR1cm4gMDsKPj4gICAgICAgICAgICAgICB9Cj4+ICsK Pj4gKyAgICAgICAgICAgIGlmICggZ2ljdjMucmRpc3RfcmVnaW9uc1tpXS5zaW5nbGVfcmRpc3Qg KQo+PiArICAgICAgICAgICAgICAgIGJyZWFrOwo+PiArCj4+ICAgICAgICAgICAgICAgaWYgKCBn aWN2My5yZGlzdF9zdHJpZGUgKQo+PiAgICAgICAgICAgICAgICAgICBwdHIgKz0gZ2ljdjMucmRp c3Rfc3RyaWRlOwo+PiAgICAgICAgICAgICAgIGVsc2UKPj4gQEAgLTEyODIsNiArMTI4NiwxMSBA QCBzdGF0aWMgaW50IGdpY3YzX2lvbWVtX2RlbnlfYWNjZXNzKGNvbnN0IHN0cnVjdAo+IGRvbWFp biAqZCkKPj4gICB9Cj4+Cj4+ICAgI2lmZGVmIENPTkZJR19BQ1BJCj4+ICtzdGF0aWMgYm9vbCBn aWNfZGlzdF9zdXBwb3J0c19kdmlzKHZvaWQpCj4KPiBzdGF0aWMgaW5saW5lIGFuZCBwbGVhc2Ug dXNlIGJvb2xfdCBoZXJlLgo+ClN0aWxsIGxlYXJuaW5nIFhFTiBjb2Rpbmcgc3R5bGUsIEknbGwg Zml4IGl0Lgo+PiArewo+PiArICAgIHJldHVybiAhIShyZWFkbF9yZWxheGVkKEdJQ0QgKyBHSUNE X1RZUEVSKSAmIEdJQ0RfVFlQRVJfRFZJUyk7Cj4+ICt9Cj4+ICsKPj4gICBzdGF0aWMgaW50IGdp Y3YzX21ha2VfaHdkb21fbWFkdChjb25zdCBzdHJ1Y3QgZG9tYWluICpkLCB1MzIgb2Zmc2V0KQo+ PiAgIHsKPj4gICAgICAgc3RydWN0IGFjcGlfc3VidGFibGVfaGVhZGVyICpoZWFkZXI7Cj4+IEBA IC0xMzkzLDE4ICsxNDAyLDM5IEBAIGdpY19hY3BpX3BhcnNlX21hZHRfcmVkaXN0cmlidXRvcihz dHJ1Y3QKPiBhY3BpX3N1YnRhYmxlX2hlYWRlciAqaGVhZGVyLAo+PiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBsb25nIGVuZCkKPj4gICB7Cj4+ICAg ICAgIHN0cnVjdCBhY3BpX21hZHRfZ2VuZXJpY19yZWRpc3RyaWJ1dG9yICpyZGlzdDsKPj4gKyAg ICBzdHJ1Y3QgYWNwaV9tYWR0X2dlbmVyaWNfaW50ZXJydXB0ICpwcm9jZXNzb3I7Cj4+ICAgICAg IHN0cnVjdCByZGlzdF9yZWdpb24gKnJlZ2lvbjsKPj4KPj4gICAgICAgcmVnaW9uID0gZ2ljdjMu cmRpc3RfcmVnaW9ucyArIGdpY3YzLnJkaXN0X2NvdW50Owo+PiAtICAgIHJkaXN0ID0gKHN0cnVj dCBhY3BpX21hZHRfZ2VuZXJpY19yZWRpc3RyaWJ1dG9yICopaGVhZGVyOwo+PiAtICAgIGlmICgg QkFEX01BRFRfRU5UUlkocmRpc3QsIGVuZCkgKQo+PiAtICAgICAgICByZXR1cm4gLUVJTlZBTDsK Pj4gKyAgICBpZiAoIGhlYWRlci0+dHlwZSA9PSBBQ1BJX01BRFRfVFlQRV9HRU5FUklDX1JFRElT VFJJQlVUT1IgKQo+PiArICAgIHsKPj4gKyAgICAgICAgcmRpc3QgPSAoc3RydWN0IGFjcGlfbWFk dF9nZW5lcmljX3JlZGlzdHJpYnV0b3IgKiloZWFkZXI7Cj4+ICsgICAgICAgIGlmICggQkFEX01B RFRfRU5UUlkocmRpc3QsIGVuZCkgKQo+PiArICAgICAgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4+ Cj4+IC0gICAgaWYgKCAhcmRpc3QtPmJhc2VfYWRkcmVzcyB8fCAhcmRpc3QtPmxlbmd0aCApCj4+ IC0gICAgICAgIHJldHVybiAtRUlOVkFMOwo+PiArICAgICAgICBpZiAoICFyZGlzdC0+YmFzZV9h ZGRyZXNzIHx8ICFyZGlzdC0+bGVuZ3RoICkKPj4gKyAgICAgICAgICAgIHJldHVybiAtRUlOVkFM Owo+PiArCj4+ICsgICAgICAgIHJlZ2lvbi0+YmFzZSA9IHJkaXN0LT5iYXNlX2FkZHJlc3M7Cj4+ ICsgICAgICAgIHJlZ2lvbi0+c2l6ZSA9IHJkaXN0LT5sZW5ndGg7Cj4+ICsgICAgfQo+PiArICAg IGVsc2UgaWYgKCBoZWFkZXItPnR5cGUgPT0gQUNQSV9NQURUX1RZUEVfR0VORVJJQ19JTlRFUlJV UFQgKQo+PiArICAgIHsKPgo+IFBhcnNpbmcgdGhlIEdJQ0MgYW5kIHRoZSByZWRpc3RyaWJ1dG9y IGlzIHF1aXRlIGRpZmZlcmVudC4gSSB3b3VsZCAKPiBtdWNoIHByZWZlciBhIGZ1bmN0aW9uIGZv ciBwYXJzaW5nIGVhY2ggdGFibGUgYW5kIGFuIGhlbHBlciB0byBhZGQgYSAKPiBuZXcgcmVkaXN0 cmlidXRvci4KPgogIEknbGwgZG8uCj4+ICsgICAgICAgIHByb2Nlc3NvciA9IChzdHJ1Y3QgYWNw aV9tYWR0X2dlbmVyaWNfaW50ZXJydXB0ICopaGVhZGVyOwo+PiArICAgICAgICBpZiAoIEJBRF9N QURUX0VOVFJZKHByb2Nlc3NvciwgZW5kKSApCj4+ICsgICAgICAgICAgICByZXR1cm4gLUVJTlZB TDsKPj4gKwo+PiArICAgICAgICBpZiAoICEocHJvY2Vzc29yLT5mbGFncyAmIEFDUElfTUFEVF9F TkFCTEVEKSApCj4+ICsgICAgICAgICAgICByZXR1cm4gMDsKPj4gKwo+PiArICAgICAgICBpZiAo ICFwcm9jZXNzb3ItPmdpY3JfYmFzZV9hZGRyZXNzICkKPj4gKyAgICAgICAgICAgIHJldHVybiAt RUlOVkFMOwo+PiArCj4+ICsgICAgICAgIHJlZ2lvbi0+YmFzZSA9IHByb2Nlc3Nvci0+Z2ljcl9i YXNlX2FkZHJlc3M7Cj4+ICsgICAgICAgIHJlZ2lvbi0+c2l6ZSA9IGdpY19kaXN0X3N1cHBvcnRz X2R2aXMoKSA/IFNaXzI1NksgOiBTWl8xMjhLOwo+Cj4gUGxlYXNlIGV4cGxhaW4gaW4gdGhlIGNv bW1pdCBtZXNzYWdlIGhvdyB5b3UgZmluZCB0aGUgc2l6ZS4gSSB3b3VsZCAKPiBhbHNvIHByZWZl ciBpZiB5b3UgdXNlICg0IHggU1pfNjRLKSBhbmQgKDIgKiBTWl82NEspIGFzIHdlIGRvIGluCj4g cG9wdWxhdGVfcmRpc3QuCj4KPj4gKyAgICByZWdpb24tPnNpbmdsZV9yZGlzdCA9IHRydWU7Cj4K PiBUaGUgaW5kZW50YXRpb24gbG9va3Mgd3JvbmcuCj4KPj4gKyAgIH0KPgo+Cj4+Cj4+IC0gICAg cmVnaW9uLT5iYXNlID0gcmRpc3QtPmJhc2VfYWRkcmVzczsKPj4gLSAgICByZWdpb24tPnNpemUg PSByZGlzdC0+bGVuZ3RoOwo+Pgo+PiAgICAgICByZWdpb24tPm1hcF9iYXNlID0gaW9yZW1hcF9u b2NhY2hlKHJlZ2lvbi0+YmFzZSwgcmVnaW9uLT5zaXplKTsKPj4gICAgICAgaWYgKCAhcmVnaW9u LT5tYXBfYmFzZSApCj4+IEBAIC0xNDEyLDYgKzE0NDIsNyBAQCBnaWNfYWNwaV9wYXJzZV9tYWR0 X3JlZGlzdHJpYnV0b3Ioc3RydWN0Cj4gYWNwaV9zdWJ0YWJsZV9oZWFkZXIgKmhlYWRlciwKPj4g ICAgICAgICAgIHByaW50aygiVW5hYmxlIHRvIG1hcCBHSUNSIHJlZ2lzdGVyc1xuIik7Cj4+ICAg ICAgICAgICByZXR1cm4gLUVOT01FTTsKPj4gICAgICAgfQo+PiArCj4KPiBTcHVyaW91cyBjaGFu Z2UuCj4KPj4gICAgICAgZ2ljdjMucmRpc3RfY291bnQrKzsKPj4KPj4gICAgICAgcmV0dXJuIDA7 Cj4+IEBAIC0xNDIxLDkgKzE0NTIsMjIgQEAgc3RhdGljIGludCBfX2luaXQKPj4gICBnaWNfYWNw aV9nZXRfbWFkdF9yZWRpc3RyaWJ1dG9yX251bShzdHJ1Y3QgYWNwaV9zdWJ0YWJsZV9oZWFkZXIK PiAqaGVhZGVyLAo+PiBjb25zdCB1bnNpZ25lZCBsb25nIGVuZCkKPj4gICB7Cj4+IC0gICAgLyog Tm90aGluZyB0byBkbyBoZXJlIHNpbmNlIGl0IG9ubHkgd2FudHMgdG8gZ2V0IHRoZSBudW1iZXIg b2YgR0lDCj4+IC0gICAgICogcmVkaXN0cmlidXRvcnMuCj4+IC0gICAgICovCj4+ICsgICAgc3Ry dWN0IGFjcGlfbWFkdF9nZW5lcmljX3JlZGlzdHJpYnV0b3IgKnJkaXN0Owo+PiArICAgIHN0cnVj dCBhY3BpX21hZHRfZ2VuZXJpY19pbnRlcnJ1cHQgKmNwdWlmOwo+PiArCj4+ICsgICAgaWYgKCBo ZWFkZXItPnR5cGUgPT0gQUNQSV9NQURUX1RZUEVfR0VORVJJQ19SRURJU1RSSUJVVE9SICkKPj4g KyAgICB7Cj4+ICsgICAgIHJkaXN0ID0gKHN0cnVjdCBhY3BpX21hZHRfZ2VuZXJpY19yZWRpc3Ry aWJ1dG9yICopaGVhZGVyOwo+PiArICAgICBpZiAoIEJBRF9NQURUX0VOVFJZKHJkaXN0LCBlbmQp IHx8ICFyZGlzdC0+YmFzZV9hZGRyZXNzICkKPj4gKyAgICAgICAgIHJldHVybiAtRUlOVkFMOwo+ PiArICAgIH0KPj4gKyAgICBlbHNlIGlmICggaGVhZGVyLT50eXBlID09IEFDUElfTUFEVF9UWVBF X0dFTkVSSUNfSU5URVJSVVBUICkKPj4gKyAgICB7Cj4+ICsgICAgIGNwdWlmID0gKHN0cnVjdCBh Y3BpX21hZHRfZ2VuZXJpY19pbnRlcnJ1cHQgKiloZWFkZXI7Cj4+ICsgICAgIGlmICggQkFEX01B RFRfRU5UUlkoY3B1aWYsIGVuZCkgfHwgIWNwdWlmLT5naWNyX2Jhc2VfYWRkcmVzcyApCj4+ICsg ICAgICAgICByZXR1cm4gLUVJTlZBTDsKPj4gKyAgICB9Cj4+ICsKPgo+IERpdHRvIGZvciB0aGUg cGFyc2luZy4KPgo+PiAgICAgICByZXR1cm4gMDsKPj4gICB9Cj4+Cj4KPiBbLi4uXQo+Cj4+IGRp ZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL2dpYy5oIGIveGVuL2luY2x1ZGUvYXNtLWFy bS9naWMuaAo+PiBpbmRleCA0NGI5ZWY2Li43ZjlhZDg2IDEwMDY0NAo+PiAtLS0gYS94ZW4vaW5j bHVkZS9hc20tYXJtL2dpYy5oCj4+ICsrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljLmgKPj4g QEAgLTEwMSw2ICsxMDEsOCBAQAo+PiAgICNkZWZpbmUgR0lDRF9UWVBFX0NQVVNfU0hJRlQgNQo+ PiAgICNkZWZpbmUgR0lDRF9UWVBFX0NQVVMgIDB4MGUwCj4+ICAgI2RlZmluZSBHSUNEX1RZUEVf U0VDICAgMHg0MDAKPj4gKyNkZWZpbmUgR0lDRF9UWVBFUl9MUElTICgxVSA8PCAxNykKPgo+IFRo aXMgaXMgbm90IHVzZWQgYnkgdGhpcyBwYXRjaC4gU28gcGxlYXNlIGRyb3AgaXQuCj4KSSdsbCBk cm9wIGl0Lgo+PiArI2RlZmluZSBHSUNEX1RZUEVSX0RWSVMgKDFVIDw8IDE4KQo+Pgo+PiAgICNk ZWZpbmUgR0lDQ19DVExfRU5BQkxFIDB4MQo+PiAgICNkZWZpbmUgR0lDQ19DVExfRU9JICAgICgw eDEgPDwgOSkKPj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2RlZnMu aAo+IGIveGVuL2luY2x1ZGUvYXNtLWFybS9naWNfdjNfZGVmcy5oCj4+IGluZGV4IDZkOTg0OTEu LjZiZDI1YTUgMTAwNjQ0Cj4+IC0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2RlZnMu aAo+PiArKysgYi94ZW4vaW5jbHVkZS9hc20tYXJtL2dpY192M19kZWZzLmgKPj4gQEAgLTE0MSw2 ICsxNDEsNyBAQCBzdHJ1Y3QgcmRpc3RfcmVnaW9uIHsKPj4gICAgICAgcGFkZHJfdCBiYXNlOwo+ PiAgICAgICBwYWRkcl90IHNpemU7Cj4+ICAgICAgIHZvaWQgX19pb21lbSAqbWFwX2Jhc2U7Cj4+ ICsgICAgYm9vbCBzaW5nbGVfcmRpc3Q7Cj4+ICAgfTsKPj4KPj4gICAjZW5kaWYgLyogX19BU01f QVJNX0dJQ19WM19ERUZTX0hfXyAqLwo+Pgo+Cj4gUmVnYXJkcywKPgoKLS0gClNoYW5rZXIgRG9u dGhpbmVuaQpRdWFsY29tbSBUZWNobm9sb2dpZXMsIEluYy4gb24gYmVoYWxmIG9mIFF1YWxjb21t IElubm92YXRpb24gQ2VudGVyLCBJbmMuClF1YWxjb21tIElubm92YXRpb24gQ2VudGVyLCBJbmMu IGlzIGEgbWVtYmVyIG9mIENvZGUgQXVyb3JhIEZvcnVtLCBhIExpbnV4IEZvdW5kYXRpb24gQ29s bGFib3JhdGl2ZSBQcm9qZWN0CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9y ZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK