From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andre Przywara Subject: [PATCH v4 21/27] ARM: vITS: handle MOVI command Date: Mon, 3 Apr 2017 21:28:23 +0100 Message-ID: <20170403202829.7278-22-andre.przywara@arm.com> References: <20170403202829.7278-1-andre.przywara@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cv8Yx-0005G8-S9 for xen-devel@lists.xenproject.org; Mon, 03 Apr 2017 20:26:55 +0000 In-Reply-To: <20170403202829.7278-1-andre.przywara@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Julien Grall , Stefano Stabellini Cc: xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org VGhlIE1PVkkgY29tbWFuZCBtb3ZlcyB0aGUgaW50ZXJydXB0IGFmZmluaXR5IGZyb20gb25lIHJl ZGlzdHJpYnV0b3IKKHJlYWQ6IFZDUFUpIHRvIGFub3RoZXIuCkZvciBub3cgbWlncmF0aW9uIG9m ICJsaXZlIiBMUElzIGlzIG5vdCB5ZXQgaW1wbGVtZW50ZWQsIGJ1dCB3ZSBzdG9yZQp0aGUgY2hh bmdlZCBhZmZpbml0eSBpbiB0aGUgaG9zdCBMUEkgc3RydWN0dXJlIGFuZCBpbiBvdXIgdmlydHVh bCBJVFRFLgoKU2lnbmVkLW9mZi1ieTogQW5kcmUgUHJ6eXdhcmEgPGFuZHJlLnByenl3YXJhQGFy bS5jb20+Ci0tLQogeGVuL2FyY2gvYXJtL2dpYy12My1pdHMuYyAgICAgICAgfCAyNCArKysrKysr KysrKysrKysrKysrKysrKysKIHhlbi9hcmNoL2FybS9naWMtdjMtbHBpLmMgICAgICAgIHwgMTMg KysrKysrKysrKysrKwogeGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMgICAgICAgfCAyNCArKysr KysrKysrKysrKysrKysrKysrKysKIHhlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5oIHwg IDQgKysrKwogNCBmaWxlcyBjaGFuZ2VkLCA2NSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEv eGVuL2FyY2gvYXJtL2dpYy12My1pdHMuYyBiL3hlbi9hcmNoL2FybS9naWMtdjMtaXRzLmMKaW5k ZXggM2JjMWU1OC4uZjYxMWUyZiAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL2dpYy12My1pdHMu YworKysgYi94ZW4vYXJjaC9hcm0vZ2ljLXYzLWl0cy5jCkBAIC04MzUsNiArODM1LDMwIEBAIHN0 cnVjdCBwZW5kaW5nX2lycSAqZ2ljdjNfYXNzaWduX2d1ZXN0X2V2ZW50KHN0cnVjdCBkb21haW4g KmQsCiAgICAgcmV0dXJuIHBpcnE7CiB9CiAKKy8qIENoYW5nZXMgdGhlIHRhcmdldCBWQ1BVIGZv ciBhIGdpdmVuIGhvc3QgTFBJIGFzc2lnbmVkIHRvIGEgZG9tYWluLiAqLworaW50IGdpY3YzX2xw aV9jaGFuZ2VfdmNwdShzdHJ1Y3QgZG9tYWluICpkLCBwYWRkcl90IGRvb3JiZWxsLAorICAgICAg ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZGV2aWQsIHVpbnQzMl90IHZldmVudGlkLAor ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgdmNwdV9pZCkKK3sKKyAgICB1 aW50MzJfdCBob3N0X2xwaTsKKyAgICBzdHJ1Y3QgaXRzX2RldmljZXMgKmRldjsKKworICAgIHNw aW5fbG9jaygmZC0+YXJjaC52Z2ljLml0c19kZXZpY2VzX2xvY2spOworICAgIGRldiA9IGdldF9p dHNfZGV2aWNlKGQsIGRvb3JiZWxsLCB2ZGV2aWQpOworICAgIGlmICggZGV2ICkKKyAgICAgICAg aG9zdF9scGkgPSBnZXRfaG9zdF9scGkoZGV2LCB2ZXZlbnRpZCk7CisgICAgZWxzZQorICAgICAg ICBob3N0X2xwaSA9IDA7CisgICAgc3Bpbl91bmxvY2soJmQtPmFyY2gudmdpYy5pdHNfZGV2aWNl c19sb2NrKTsKKworICAgIGlmICggIWhvc3RfbHBpICkKKyAgICAgICAgcmV0dXJuIC1FTk9FTlQ7 CisKKyAgICBnaWN2M19scGlfdXBkYXRlX2hvc3RfdmNwdWlkKGhvc3RfbHBpLCB2Y3B1X2lkKTsK KworICAgIHJldHVybiAwOworfQorCiAvKiBTY2FuIHRoZSBEVCBmb3IgYW55IElUUyBub2RlcyBh bmQgY3JlYXRlIGEgbGlzdCBvZiBob3N0IElUU2VzIG91dCBvZiBpdC4gKi8KIHZvaWQgZ2ljdjNf aXRzX2R0X2luaXQoY29uc3Qgc3RydWN0IGR0X2RldmljZV9ub2RlICpub2RlKQogewpkaWZmIC0t Z2l0IGEveGVuL2FyY2gvYXJtL2dpYy12My1scGkuYyBiL3hlbi9hcmNoL2FybS9naWMtdjMtbHBp LmMKaW5kZXggMDY3Y2NiMi4uOTRjMzY0NiAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL2dpYy12 My1scGkuYworKysgYi94ZW4vYXJjaC9hcm0vZ2ljLXYzLWxwaS5jCkBAIC0yMDYsNiArMjA2LDE5 IEBAIHZvaWQgZ2ljdjNfbHBpX3VwZGF0ZV9ob3N0X2VudHJ5KHVpbnQzMl90IGhvc3RfbHBpLCBp bnQgZG9tYWluX2lkLAogICAgIHdyaXRlX3U2NF9hdG9taWMoJmhscGlwLT5kYXRhLCBobHBpLmRh dGEpOwogfQogCitpbnQgZ2ljdjNfbHBpX3VwZGF0ZV9ob3N0X3ZjcHVpZCh1aW50MzJfdCBob3N0 X2xwaSwgdW5zaWduZWQgaW50IHZjcHVfaWQpCit7CisgICAgdW5pb24gaG9zdF9scGkgKmhscGlw OworCisgICAgaG9zdF9scGkgLT0gTFBJX09GRlNFVDsKKworICAgIGhscGlwID0gJmxwaV9kYXRh Lmhvc3RfbHBpc1tob3N0X2xwaSAvIEhPU1RfTFBJU19QRVJfUEFHRV1baG9zdF9scGkgJSBIT1NU X0xQSVNfUEVSX1BBR0VdOworCisgICAgd3JpdGVfdTE2X2F0b21pYygmaGxwaXAtPnZjcHVfaWQs IHZjcHVfaWQpOworCisgICAgcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgZ2ljdjNfbHBpX2Fs bG9jYXRlX3BlbmR0YWJsZSh1aW50NjRfdCAqcmVnKQogewogICAgIHVpbnQ2NF90IHZhbDsKZGlm ZiAtLWdpdCBhL3hlbi9hcmNoL2FybS92Z2ljLXYzLWl0cy5jIGIveGVuL2FyY2gvYXJtL3ZnaWMt djMtaXRzLmMKaW5kZXggZTlhMzA5ZC4uYTI3NThjZCAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJt L3ZnaWMtdjMtaXRzLmMKKysrIGIveGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMKQEAgLTQ1NSw2 ICs0NTUsMjQgQEAgc3RhdGljIGludCBpdHNfaGFuZGxlX21hcHRpKHN0cnVjdCB2aXJ0X2l0cyAq aXRzLCB1aW50NjRfdCAqY21kcHRyKQogICAgIHJldHVybiAwOwogfQogCitzdGF0aWMgaW50IGl0 c19oYW5kbGVfbW92aShzdHJ1Y3QgdmlydF9pdHMgKml0cywgdWludDY0X3QgKmNtZHB0cikKK3sK KyAgICB1aW50MzJfdCBkZXZpZCA9IGl0c19jbWRfZ2V0X2RldmljZWlkKGNtZHB0cik7CisgICAg dWludDMyX3QgZXZlbnRpZCA9IGl0c19jbWRfZ2V0X2lkKGNtZHB0cik7CisgICAgaW50IGNvbGxp ZCA9IGl0c19jbWRfZ2V0X2NvbGxlY3Rpb24oY21kcHRyKTsKKyAgICBzdHJ1Y3QgdmNwdSAqdmNw dTsKKworICAgIGlmICggIXdyaXRlX2l0dGUoaXRzLCBkZXZpZCwgZXZlbnRpZCwgY29sbGlkLCBT S0lQX0xQSV9VUERBVEUsICZ2Y3B1KSApCisgICAgICAgIHJldHVybiAtMTsKKworICAgIC8qIFRP RE86IGxvb2t1cCBjdXJyZW50bHktaW4tZ3Vlc3QgdmlydHVhbCBJUlFzIGFuZCBtaWdyYXRlIHRo ZW0gKi8KKworICAgIGdpY3YzX2xwaV9jaGFuZ2VfdmNwdShpdHMtPmQsCisgICAgICAgICAgICAg ICAgICAgICAgICAgIGl0cy0+ZG9vcmJlbGxfYWRkcmVzcywgZGV2aWQsIGV2ZW50aWQsIHZjcHUt PnZjcHVfaWQpOworCisgICAgcmV0dXJuIDA7Cit9CisKICNkZWZpbmUgSVRTX0NNRF9CVUZGRVJf U0laRShiYXNlcikgICAgICAoKCgoYmFzZXIpICYgMHhmZikgKyAxKSA8PCAxMikKIAogc3RhdGlj IGludCB2Z2ljX2l0c19oYW5kbGVfY21kcyhzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgdmlydF9p dHMgKml0cywKQEAgLTUwOCw2ICs1MjYsMTIgQEAgc3RhdGljIGludCB2Z2ljX2l0c19oYW5kbGVf Y21kcyhzdHJ1Y3QgZG9tYWluICpkLCBzdHJ1Y3QgdmlydF9pdHMgKml0cywKICAgICAgICAgY2Fz ZSBHSVRTX0NNRF9NQVBUSToKICAgICAgICAgICAgIHJldCA9IGl0c19oYW5kbGVfbWFwdGkoaXRz LCBjbWRwdHIpOwogICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgR0lUU19DTURfTU9W QUxMOgorICAgICAgICAgICAgZ2RwcmludGsoWEVOTE9HX0dfSU5GTywgIklUUzogaWdub3Jpbmcg TU9WQUxMIGNvbW1hbmRcbiIpOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgR0lU U19DTURfTU9WSToKKyAgICAgICAgICAgIHJldCA9IGl0c19oYW5kbGVfbW92aShpdHMsIGNtZHB0 cik7CisgICAgICAgICAgICBicmVhazsKICAgICAgICAgY2FzZSBHSVRTX0NNRF9TWU5DOgogICAg ICAgICAgICAgLyogV2UgaGFuZGxlIElUUyBjb21tYW5kcyBzeW5jaHJvbm91c2x5LCBzbyB3ZSBp Z25vcmUgU1lOQy4gKi8KIAkgICAgYnJlYWs7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20t YXJtL2dpY192M19pdHMuaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5oCmluZGV4 IGVlZmZkNTguLjNiNWY4OTggMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3Yz X2l0cy5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljX3YzX2l0cy5oCkBAIC0xNjksOCAr MTY5LDEyIEBAIHZvaWQgZ2ljdjNfZnJlZV9ob3N0X2xwaV9ibG9jayh1aW50MzJfdCBmaXJzdF9s cGkpOwogc3RydWN0IHBlbmRpbmdfaXJxICpnaWN2M19hc3NpZ25fZ3Vlc3RfZXZlbnQoc3RydWN0 IGRvbWFpbiAqZCwgcGFkZHJfdCBkb29yYmVsbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGRldmlkLCB1aW50MzJfdCBldmVudGlkLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHZjcHUgKnYs IHVpbnQzMl90IHZpcnRfbHBpKTsKK2ludCBnaWN2M19scGlfY2hhbmdlX3ZjcHUoc3RydWN0IGRv bWFpbiAqZCwgcGFkZHJfdCBkb29yYmVsbCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdWlu dDMyX3QgZGV2aWQsIHVpbnQzMl90IGV2ZW50aWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg IHVuc2lnbmVkIGludCB2Y3B1X2lkKTsKIHZvaWQgZ2ljdjNfbHBpX3VwZGF0ZV9ob3N0X2VudHJ5 KHVpbnQzMl90IGhvc3RfbHBpLCBpbnQgZG9tYWluX2lkLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdW5zaWduZWQgaW50IHZjcHVfaWQsIHVpbnQzMl90IHZpcnRfbHBpKTsKK2lu dCBnaWN2M19scGlfdXBkYXRlX2hvc3RfdmNwdWlkKHVpbnQzMl90IGhvc3RfbHBpLCB1bnNpZ25l ZCBpbnQgdmNwdV9pZCk7CiAKICNlbHNlCiAKLS0gCjIuOS4wCgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4t ZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==