From mboxrd@z Thu Jan 1 00:00:00 1970 From: vijay.kilari@gmail.com Subject: [RFC PATCH v1 15/21] ARM: NUMA: Extract MPIDR from MADT table Date: Thu, 9 Feb 2017 21:27:07 +0530 Message-ID: <1486655834-9708-16-git-send-email-vijay.kilari@gmail.com> References: <1486655834-9708-1-git-send-email-vijay.kilari@gmail.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 1cbr8P-0008Mx-Uu for xen-devel@lists.xenproject.org; Thu, 09 Feb 2017 15:59:50 +0000 Received: by mail-pg0-f66.google.com with SMTP id 194so629886pgd.0 for ; Thu, 09 Feb 2017 07:59:47 -0800 (PST) In-Reply-To: <1486655834-9708-1-git-send-email-vijay.kilari@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: julien.grall@arm.com, sstabellini@kernel.org, andre.przywara@arm.com, dario.faggioli@citrix.com Cc: xen-devel@lists.xenproject.org, Vijaya Kumar K List-Id: xen-devel@lists.xenproject.org RnJvbTogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgoKUGFyc2UgTUFE VCB0YWJsZSBhbmQgZXh0cmFjdCBNUElEUiBmb3IgYWxsCkNQVSBJRHMgaW4gTUFEVCBBQ1BJX01B RFRfVFlQRV9HRU5FUklDX0lOVEVSUlVQVCBlbnRyaWVzCmFuZCBzdG9yZSBpbiBjcHVfdWlkX3Rv X2h3aWRbXS4KClRoaXMgbWFwcGluZyBpcyB1c2VkIGJ5IFNSQVQgdGFibGUgcGFyc2luZyB0bwpl eHRyYWN0IE1QSURSIG9mIHRoZSBDUFUgSUQuCgpTaWduZWQtb2ZmLWJ5OiBWaWpheWEgS3VtYXIg PFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgotLS0KIHhlbi9hcmNoL2FybS9NYWtlZmlsZSAgICAg IHwgICAxICsKIHhlbi9hcmNoL2FybS9hY3BpX251bWEuYyAgIHwgMTIyICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2FyY2gvYXJtL251bWEuYyAgICAg ICAgfCAgIDEgKwogeGVuL2luY2x1ZGUvYXNtLWFybS9hY3BpLmggfCAgIDIgKwogNCBmaWxlcyBj aGFuZ2VkLCAxMjYgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9NYWtl ZmlsZSBiL3hlbi9hcmNoL2FybS9NYWtlZmlsZQppbmRleCA3Njk0NDg1Li44YzVlNjdiIDEwMDY0 NAotLS0gYS94ZW4vYXJjaC9hcm0vTWFrZWZpbGUKKysrIGIveGVuL2FyY2gvYXJtL01ha2VmaWxl CkBAIC01MSw2ICs1MSw3IEBAIG9iai15ICs9IHZwc2NpLm8KIG9iai15ICs9IHZ1YXJ0Lm8KIG9i ai0kKENPTkZJR19OVU1BKSArPSBudW1hLm8KIG9iai0kKENPTkZJR19OVU1BKSArPSBkdF9udW1h Lm8KK29iai0kKENPTkZJR19BQ1BJX05VTUEpICs9IGFjcGlfbnVtYS5vCiAKICNvYmotYmluLXkg Kz0gLi4uLm8KIApkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2FjcGlfbnVtYS5jIGIveGVuL2Fy Y2gvYXJtL2FjcGlfbnVtYS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNl ZTg3ZjIKLS0tIC9kZXYvbnVsbAorKysgYi94ZW4vYXJjaC9hcm0vYWNwaV9udW1hLmMKQEAgLTAs MCArMSwxMjIgQEAKKy8qCisgKiBBQ1BJIGJhc2VkIE5VTUEgc2V0dXAKKyAqCisgKiBDb3B5cmln aHQgKEMpIDIwMTYgLSBDYXZpdW0gSW5jLgorICogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1h ckBjYXZpdW0uY29tPgorICoKKyAqIFJlYWRzIHRoZSBBQ1BJIE1BRFQgYW5kIFNSQVQgdGFibGUg dG8gc2V0dXAgTlVNQSBpbmZvcm1hdGlvbi4KKyAqCisgKiBDb250YWlucyBFeGNlcnB0cyBmcm9t IHg4NiBpbXBsZW1lbnRhdGlvbgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQor ICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUg TGljZW5zZSwgb3IKKyAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgor ICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqLworCisjaW5jbHVkZSA8eGVuL2luaXQuaD4KKyNpbmNs dWRlIDx4ZW4vbW0uaD4KKyNpbmNsdWRlIDx4ZW4vaW50dHlwZXMuaD4KKyNpbmNsdWRlIDx4ZW4v bm9kZW1hc2suaD4KKyNpbmNsdWRlIDx4ZW4vYWNwaS5oPgorI2luY2x1ZGUgPHhlbi9udW1hLmg+ CisjaW5jbHVkZSA8eGVuL3Bmbi5oPgorI2luY2x1ZGUgPHhlbi9zcmF0Lmg+CisjaW5jbHVkZSA8 YXNtL3BhZ2UuaD4KKyNpbmNsdWRlIDxhc20vYWNwaS5oPgorCitleHRlcm4gbm9kZW1hc2tfdCBu dW1hX25vZGVzX3BhcnNlZDsKK3N0cnVjdCB1aWRfdG9fbXBpZHIgeworICAgIHUzMiB1aWQ7Cisg ICAgdTY0IG1waWRyOworfTsKKworLyogSG9sZHMgbWFwcGluZyBvZiBDUFUgaWQgdG8gTVBJRFIg cmVhZCBmcm9tIE1BRFQgKi8KK3N0YXRpYyBzdHJ1Y3QgdWlkX3RvX21waWRyIGNwdV91aWRfdG9f aHdpZFtOUl9DUFVTXSBfX3JlYWRfbW9zdGx5OworCitzdGF0aWMgX19pbml0IHZvaWQgYmFkX3Ny YXQodm9pZCkKK3sKKyAgICBpbnQgaTsKKworICAgIHByaW50ayhLRVJOX0VSUiAiU1JBVDogU1JB VCBub3QgdXNlZC5cbiIpOworICAgIGFjcGlfbnVtYSA9IC0xOworICAgIGZvciAoaSA9IDA7IGkg PCBBUlJBWV9TSVpFKHB4bTJub2RlKTsgaSsrKQorICAgICAgICBweG0ybm9kZVtpXS5ub2RlID0g TlVNQV9OT19OT0RFOworfQorCitzdGF0aWMgdTY0IGFjcGlfZ2V0X2NwdV9tcGlkcihpbnQgdWlk KQoreworICAgIGludCBpOworCisgICAgaWYgKCB1aWQgPCBBUlJBWV9TSVpFKGNwdV91aWRfdG9f aHdpZCkgJiYgY3B1X3VpZF90b19od2lkW3VpZF0udWlkID09IHVpZCAmJgorICAgICAgICAgY3B1 X3VpZF90b19od2lkW3VpZF0ubXBpZHIgIT0gTVBJRFJfSU5WQUxJRCApCisgICAgICAgIHJldHVy biBjcHVfdWlkX3RvX2h3aWRbdWlkXS5tcGlkcjsKKworICAgIGZvciAoIGkgPSAwOyBpIDwgTlJf Q1BVUzsgaSsrICkKKyAgICB7CisgICAgICAgIGlmICggY3B1X3VpZF90b19od2lkW2ldLnVpZCA9 PSB1aWQgKQorICAgICAgICAgICAgcmV0dXJuIGNwdV91aWRfdG9faHdpZFtpXS5tcGlkcjsKKyAg ICB9CisKKyAgICByZXR1cm4gTVBJRFJfSU5WQUxJRDsKK30KKworc3RhdGljIHZvaWQgX19pbml0 CithY3BpX21hcF9jcHVfdG9fbXBpZHIoc3RydWN0IGFjcGlfbWFkdF9nZW5lcmljX2ludGVycnVw dCAqcHJvY2Vzc29yKQoreworICAgIHN0YXRpYyBpbnQgY3B1cyA9IDA7CisKKyAgICB1NjQgbXBp ZHIgPSBwcm9jZXNzb3ItPmFybV9tcGlkciAmIE1QSURSX0hXSURfTUFTSzsKKworICAgIGlmICgg bXBpZHIgPT0gTVBJRFJfSU5WQUxJRCApCisgICAgeworICAgICAgICBwcmludGsoIlNraXAgTUFE VCBjcHUgZW50cnkgd2l0aCBpbnZhbGlkIE1QSURSXG4iKTsKKyAgICAgICAgYmFkX3NyYXQoKTsK KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGNwdV91aWRfdG9faHdpZFtjcHVzXS5tcGlk ciA9IG1waWRyOworICAgIGNwdV91aWRfdG9faHdpZFtjcHVzXS51aWQgPSBwcm9jZXNzb3ItPnVp ZDsKKworICAgIGNwdXMrKzsKK30KKworc3RhdGljIGludCBfX2luaXQgYWNwaV9wYXJzZV9tYWR0 X2hhbmRsZXIoc3RydWN0IGFjcGlfc3VidGFibGVfaGVhZGVyICpoZWFkZXIsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBsb25nIGVuZCkK K3sKKyAgICBzdHJ1Y3QgYWNwaV9tYWR0X2dlbmVyaWNfaW50ZXJydXB0ICpwID0KKyAgICAgICAg ICAgICAgIGNvbnRhaW5lcl9vZihoZWFkZXIsIHN0cnVjdCBhY3BpX21hZHRfZ2VuZXJpY19pbnRl cnJ1cHQsIGhlYWRlcik7CisKKyAgICBpZiAoIEJBRF9NQURUX0VOVFJZKHAsIGVuZCkgKQorICAg IHsKKyAgICAgICAgLyogVGhvdWdoIE1BRFQgaXMgaW52YWxpZCwgd2UgZGlzYWJsZSBOVU1BIGJ5 IGNhbGxpbmcgYmFkX3NyYXQoKSAqLworICAgICAgICBiYWRfc3JhdCgpOworICAgICAgICByZXR1 cm4gLUVJTlZBTDsKKyAgICB9CisKKyAgICBhY3BpX3RhYmxlX3ByaW50X21hZHRfZW50cnkoaGVh ZGVyKTsKKyAgICBhY3BpX21hcF9jcHVfdG9fbXBpZHIocCk7CisKKyAgICByZXR1cm4gMDsKK30K Kwordm9pZCBfX2luaXQgYWNwaV9tYXBfdWlkX3RvX21waWRyKHZvaWQpCit7CisgICAgaW50IGk7 CisKKyAgICBmb3IgKCBpICA9IDA7IGkgPCBOUl9DUFVTOyBpKysgKQorICAgIHsKKyAgICAgICAg Y3B1X3VpZF90b19od2lkW2ldLm1waWRyID0gTVBJRFJfSU5WQUxJRDsKKyAgICAgICAgY3B1X3Vp ZF90b19od2lkW2ldLnVpZCA9IC0xOworICAgIH0KKworICAgIGFjcGlfdGFibGVfcGFyc2VfbWFk dChBQ1BJX01BRFRfVFlQRV9HRU5FUklDX0lOVEVSUlVQVCwKKyAgICAgICAgICAgICAgICAgICAg YWNwaV9wYXJzZV9tYWR0X2hhbmRsZXIsIDApOworfQorCit2b2lkIF9faW5pdCBhY3BpX251bWFf YXJjaF9maXh1cCh2b2lkKSB7fQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL251bWEuYyBiL3hl bi9hcmNoL2FybS9udW1hLmMKaW5kZXggMzFkYzU1Mi4uNWM0OTM0NyAxMDA2NDQKLS0tIGEveGVu L2FyY2gvYXJtL251bWEuYworKysgYi94ZW4vYXJjaC9hcm0vbnVtYS5jCkBAIC0yMCw2ICsyMCw3 IEBACiAjaW5jbHVkZSA8eGVuL21tLmg+CiAjaW5jbHVkZSA8eGVuL25vZGVtYXNrLmg+CiAjaW5j bHVkZSA8eGVuL3Bmbi5oPgorI2luY2x1ZGUgPHhlbi9hY3BpLmg+CiAjaW5jbHVkZSA8YXNtL21t Lmg+CiAjaW5jbHVkZSA8eGVuL251bWEuaD4KICNpbmNsdWRlIDxhc20vYWNwaS5oPgpkaWZmIC0t Z2l0IGEveGVuL2luY2x1ZGUvYXNtLWFybS9hY3BpLmggYi94ZW4vaW5jbHVkZS9hc20tYXJtL2Fj cGkuaAppbmRleCA5Zjk1NGQzLi5iMWYzNmY0IDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20t YXJtL2FjcGkuaAorKysgYi94ZW4vaW5jbHVkZS9hc20tYXJtL2FjcGkuaApAQCAtNjgsNiArNjgs OCBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZW5hYmxlX2FjcGkodm9pZCkKIHsKICAgICBhY3BpX2Rp c2FibGVkID0gMDsKIH0KKwordm9pZCBhY3BpX21hcF91aWRfdG9fbXBpZHIodm9pZCk7CiAjZWxz ZQogI2RlZmluZSBhY3BpX2Rpc2FibGVkICgxKQogI2RlZmluZSBkaXNhYmxlX2FjcGkoKQotLSAK Mi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlz dHMueGVuLm9yZy94ZW4tZGV2ZWwK