From mboxrd@z Thu Jan 1 00:00:00 1970 From: vijay.kilari@gmail.com Subject: [RFC PATCH v3 19/24] ARM: NUMA: Extract MPIDR from MADT table Date: Tue, 18 Jul 2017 17:11:41 +0530 Message-ID: <1500378106-2620-20-git-send-email-vijay.kilari@gmail.com> References: <1500378106-2620-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: In-Reply-To: <1500378106-2620-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: xen-devel@lists.xen.org Cc: kevin.tian@intel.com, sstabellini@kernel.org, wei.liu2@citrix.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, tim@xen.org, julien.grall@arm.com, jbeulich@suse.com, Vijaya Kumar K List-Id: xen-devel@lists.xenproject.org RnJvbTogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgoKUGFyc2UgTUFE VCB0YWJsZSBhbmQgZXh0cmFjdCBNUElEUiBmb3IgYWxsCkNQVSBJRHMgaW4gTUFEVCBBQ1BJX01B RFRfVFlQRV9HRU5FUklDX0lOVEVSUlVQVCBlbnRyaWVzCmFuZCBzdG9yZSBpbiBjcHVpZF90b19o d2lkX21hcFtdCgpUaGlzIG1hcHBpbmcgaXMgdXNlZCBieSBTUkFUIHRhYmxlIHBhcnNpbmcgdG8g ZXh0cmFjdCBNUElEUgpvZiB0aGUgQ1BVIElELgoKTUFEVCB0YWJsZSBpcyBhbHNvIHBhcnNlZCBp biBhcm0vYWNwaS9ib290LmMgZHVyaW5nIHNtcCBib290LgpIb3dldmVyIGNhbm5vdCB3YWl0IHRp bGwgc21wIGJvb3QgYXMgU1JBVCB0YWJsZSBpcyBwYXJzZWQKbXVjaCBiZWZvcmUgZHVyaW5nIG51 bWFfaW5pdC4gSGVuY2UgTUFEVCBpcyBwYXJzZWQgdHdpY2UKZHVyaW5nIGJvb3QuIE9uY2UgaW4g bnVtYV9pbml0IGFuZCBhbm90aGVyIGluIHNtcCBpbml0LgoKU2lnbmVkLW9mZi1ieTogVmlqYXlh IEt1bWFyIDxWaWpheWEuS3VtYXJAY2F2aXVtLmNvbT4KLS0tCnYzOiAtIGFjcGlfbnVtYSBpcyBz ZXQgdG8gLTEgb24gbnVtYSBmYWlsdXJlLgotLS0KIHhlbi9hcmNoL2FybS9udW1hL01ha2VmaWxl ICAgIHwgIDEgKwogeGVuL2FyY2gvYXJtL251bWEvYWNwaV9udW1hLmMgfCA5NCArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB4ZW4vYXJjaC9hcm0vbnVtYS9udW1h LmMgICAgICB8ICA2ICsrKwogMyBmaWxlcyBjaGFuZ2VkLCAxMDEgaW5zZXJ0aW9ucygrKQoKZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9udW1hL01ha2VmaWxlIGIveGVuL2FyY2gvYXJtL251bWEv TWFrZWZpbGUKaW5kZXggM2FmM2FmZi4uYjU0OTQ1OSAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJt L251bWEvTWFrZWZpbGUKKysrIGIveGVuL2FyY2gvYXJtL251bWEvTWFrZWZpbGUKQEAgLTEsMiAr MSwzIEBACiBvYmoteSArPSBkdF9udW1hLm8KIG9iai15ICs9IG51bWEubworb2JqLSQoQ09ORklH X0FDUElfTlVNQSkgKz0gYWNwaV9udW1hLm8KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9udW1h L2FjcGlfbnVtYS5jIGIveGVuL2FyY2gvYXJtL251bWEvYWNwaV9udW1hLmMKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDlhZDU0NwotLS0gL2Rldi9udWxsCisrKyBiL3hlbi9h cmNoL2FybS9udW1hL2FjcGlfbnVtYS5jCkBAIC0wLDAgKzEsOTQgQEAKKy8qCisgKiBBQ1BJIGJh c2VkIE5VTUEgc2V0dXAKKyAqCisgKiBDb3B5cmlnaHQgKEMpIDIwMTYgLSBDYXZpdW0gSW5jLgor ICogVmlqYXlhIEt1bWFyIEsgPFZpamF5YS5LdW1hckBjYXZpdW0uY29tPgorICoKKyAqIFJlYWRz IHRoZSBBQ1BJIE1BRFQgYW5kIFNSQVQgdGFibGUgdG8gc2V0dXAgTlVNQSBpbmZvcm1hdGlvbi4K KyAqIENvbnRhaW5zIEV4Y2VycHRzIGZyb20geDg2IGltcGxlbWVudGF0aW9uCisgKgorICogVGhp cyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9v ciBtb2RpZnkKKyAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgdmVyc2lvbiAyIGFzCisgKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgKiBNRVJDSEFOVEFCSUxJVFkg b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgKiBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICovCisKKyNpbmNsdWRlIDx4 ZW4vaW5pdC5oPgorI2luY2x1ZGUgPHhlbi9tbS5oPgorI2luY2x1ZGUgPHhlbi9pbnR0eXBlcy5o PgorI2luY2x1ZGUgPHhlbi9ub2RlbWFzay5oPgorI2luY2x1ZGUgPHhlbi9hY3BpLmg+CisjaW5j bHVkZSA8eGVuL251bWEuaD4KKyNpbmNsdWRlIDx4ZW4vcGZuLmg+CisjaW5jbHVkZSA8eGVuL2Fj cGkuaD4KKyNpbmNsdWRlIDxhY3BpL3NyYXQuaD4KKyNpbmNsdWRlIDxhc20vcGFnZS5oPgorCisv KiBIb2xkcyBDUFVJRCB0byBNUElEUiBtYXBwaW5nIHJlYWQgZnJvbSBNQURUIHRhYmxlLiAqLwor c3RydWN0IGNwdWlkX3RvX2h3aWQgeworICAgIHVpbnQzMl90IGNwdWlkOworICAgIHVpbnQ2NF90 IGh3aWQ7Cit9OworCisjZGVmaW5lIFBIWVNfQ1BVSURfSU5WQUxJRCAweGZmCisKKy8qIEhvbGRz IG1hcHBpbmcgb2YgQ1BVIGlkIHRvIE1QSURSIHJlYWQgZnJvbSBNQURUICovCitzdGF0aWMgc3Ry dWN0IGNwdWlkX3RvX2h3aWQgX19yZWFkX21vc3RseSBjcHVpZF90b19od2lkX21hcFtOUl9DUFVT XSA9CisgICAgeyBbMCAuLi4gTlJfQ1BVUyAtIDFdID0ge1BIWVNfQ1BVSURfSU5WQUxJRCwgTVBJ RFJfSU5WQUxJRH0gfTsKK3N0YXRpYyB1bnNpZ25lZCBpbnQgbnVtX2NwdWlkX3RvX2h3aWQ7CisK K3N0YXRpYyB2b2lkIF9faW5pdCBhY3BpX21hcF9jcHVfdG9faHdpZCh1aW50MzJfdCBjcHVpZCwg dWludDY0X3QgbXBpZHIpCit7CisgICAgaWYgKCBtcGlkciA9PSBNUElEUl9JTlZBTElEICkKKyAg ICB7CisgICAgICAgIHByaW50aygiU2tpcCBNQURUIGNwdSBlbnRyeSB3aXRoIGludmFsaWQgTVBJ RFJcbiIpOworICAgICAgICBudW1hX2ZhaWxlZCgpOworICAgICAgICByZXR1cm47CisgICAgfQor CisgICAgY3B1aWRfdG9faHdpZF9tYXBbbnVtX2NwdWlkX3RvX2h3aWRdLmh3aWQgPSBtcGlkcjsK KyAgICBjcHVpZF90b19od2lkX21hcFtudW1fY3B1aWRfdG9faHdpZF0uY3B1aWQgPSBjcHVpZDsK KyAgICBudW1fY3B1aWRfdG9faHdpZCsrOworfQorCitzdGF0aWMgaW50IF9faW5pdCBhY3BpX3Bh cnNlX21hZHRfaGFuZGxlcihzdHJ1Y3QgYWNwaV9zdWJ0YWJsZV9oZWFkZXIgKmhlYWRlciwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGxv bmcgZW5kKQoreworICAgIHVpbnQ2NF90IG1waWRyOworICAgIHN0cnVjdCBhY3BpX21hZHRfZ2Vu ZXJpY19pbnRlcnJ1cHQgKnAgPQorICAgICAgICAgICAgICAgY29udGFpbmVyX29mKGhlYWRlciwg c3RydWN0IGFjcGlfbWFkdF9nZW5lcmljX2ludGVycnVwdCwgaGVhZGVyKTsKKworICAgIGlmICgg QkFEX01BRFRfRU5UUlkocCwgZW5kKSApCisgICAgeworICAgICAgICAvKiBNQURUIGlzIGludmFs aWQsIHdlIGRpc2FibGUgTlVNQSBieSBjYWxsaW5nIG51bWFfZmFpbGVkKCkgKi8KKyAgICAgICAg bnVtYV9mYWlsZWQoKTsKKyAgICAgICAgcmV0dXJuIC1FSU5WQUw7CisgICAgfQorCisgICAgYWNw aV90YWJsZV9wcmludF9tYWR0X2VudHJ5KGhlYWRlcik7CisgICAgbXBpZHIgPSBwLT5hcm1fbXBp ZHIgJiBNUElEUl9IV0lEX01BU0s7CisgICAgYWNwaV9tYXBfY3B1X3RvX2h3aWQocC0+dWlkLCBt cGlkcik7CisKKyAgICByZXR1cm4gMDsKK30KKwordm9pZCBfX2luaXQgYWNwaV9tYXBfdWlkX3Rv X21waWRyKHZvaWQpCit7CisgICAgYWNwaV90YWJsZV9wYXJzZV9tYWR0KEFDUElfTUFEVF9UWVBF X0dFTkVSSUNfSU5URVJSVVBULAorICAgICAgICAgICAgICAgICAgICBhY3BpX3BhcnNlX21hZHRf aGFuZGxlciwgTlJfQ1BVUyk7Cit9CisKK3ZvaWQgX19pbml0IGFjcGlfbnVtYV9hcmNoX2ZpeHVw KHZvaWQpIHt9CisKKy8qCisgKiBMb2NhbCB2YXJpYWJsZXM6CisgKiBtb2RlOiBDCisgKiBjLWZp bGUtc3R5bGU6ICJCU0QiCisgKiBjLWJhc2ljLW9mZnNldDogNAorICogaW5kZW50LXRhYnMtbW9k ZTogbmlsCisgKiBFbmQ6CisgKi8KZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9udW1hL251bWEu YyBiL3hlbi9hcmNoL2FybS9udW1hL251bWEuYwppbmRleCA4NTM1MmRjLi4yNmFhNGMwIDEwMDY0 NAotLS0gYS94ZW4vYXJjaC9hcm0vbnVtYS9udW1hLmMKKysrIGIveGVuL2FyY2gvYXJtL251bWEv bnVtYS5jCkBAIC0xOSw2ICsxOSw3IEBACiAjaW5jbHVkZSA8eGVuL25vZGVtYXNrLmg+CiAjaW5j bHVkZSA8eGVuL251bWEuaD4KICNpbmNsdWRlIDx4ZW4vcGZuLmg+CisjaW5jbHVkZSA8YWNwaS9z cmF0Lmg+CiAjaW5jbHVkZSA8YXNtL2FjcGkuaD4KIAogc3RhdGljIHVpbnQ4X3QgKCpub2RlX2Rp c3RhbmNlX2ZuKShub2RlaWRfdCBhLCBub2RlaWRfdCBiKTsKQEAgLTQwLDYgKzQxLDExIEBAIHZv aWQgbnVtYV9mYWlsZWQodm9pZCkKICAgICBpbml0X2R0X251bWFfZGlzdGFuY2UoKTsKICAgICBu b2RlX2Rpc3RhbmNlX2ZuID0gTlVMTDsKICAgICBpbml0X2NwdV90b19ub2RlKCk7CisKKyNpZmRl ZiBDT05GSUdfQUNQSV9OVU1BCisgICAgYWNwaV9udW1hID0gLTE7CisgICAgcmVzZXRfcHhtMm5v ZGUoKTsKKyNlbmRpZgogfQogCiB2b2lkIF9faW5pdCBudW1hX3NldF9jcHVfbm9kZShpbnQgY3B1 LCB1bnNpZ25lZCBpbnQgbmlkKQotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK