From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH v8 20/21] xen/arm: Add a hypercall for device mmio mapping Date: Wed, 30 Mar 2016 12:11:12 -0400 Message-ID: <20160330161112.GC8720@char.us.oracle.com> References: <1459332494-18964-1-git-send-email-zhaoshenglong@huawei.com> <1459332494-18964-21-git-send-email-zhaoshenglong@huawei.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1459332494-18964-21-git-send-email-zhaoshenglong@huawei.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Shannon Zhao Cc: sstabellini@kernel.org, Keir Fraser , Ian Jackson , Tim Deegan , peter.huangpeng@huawei.com, xen-devel@lists.xen.org, julien.grall@arm.com, stefano.stabellini@citrix.com, shannon.zhao@linaro.org, Jan Beulich List-Id: xen-devel@lists.xenproject.org T24gV2VkLCBNYXIgMzAsIDIwMTYgYXQgMDY6MDg6MTNQTSArMDgwMCwgU2hhbm5vbiBaaGFvIHdy b3RlOgo+IEZyb206IFNoYW5ub24gWmhhbyA8c2hhbm5vbi56aGFvQGxpbmFyby5vcmc+Cj4gCj4g SXQgbmVlZHMgdG8gbWFwIHBsYXRmb3JtIG9yIGFtYmEgZGV2aWNlIG1taW8gdG8gRG9tMCBvbiBB Uk0uIEJ1dCB3aGVuCj4gYm9vdGluZyB3aXRoIEFDUEksIGl0IGNhbid0IGdldCB0aGUgbW1pbyBy ZWdpb24gaW4gWGVuIGR1ZSB0byBsYWNrIG9mCj4gQU1MIGludGVycHJldGVyIHRvIHBhcnNlIERT RFQgdGFibGUuIFRoZXJlZm9yZSwgbGV0IERvbTAgY2FsbCBhCj4gaHlwZXJjYWxsIHRvIG1hcCBt bWlvIHJlZ2lvbiB3aGVuIGl0IGFkZHMgdGhlIGRldmljZXMuCj4gCj4gSGVyZSB3ZSBhZGQgYSBu ZXcgbWFwIHNwYWNlIGxpa2UgdGhlIFhFTl9ET01DVExfbWVtb3J5X21hcHBpbmcgdG8gbWFwCj4g bW1pbyByZWdpb24gZm9yIERvbTAuIEFsc28gYWRkIGEgaGVscGVyIHRvIGNvbWJpbmUgdGhlCj4g eHNtX2FkZF90b19waHlzbWFwIGFuZCBYRU5NQVBTUEFDRV9kZXZfbW1pbyBzcGFjZSBjaGVjayB0 b2dldGhlci4KPiAKPiBDYzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGV1LmNpdHJpeC5jb20+ Cj4gQ2M6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KPiBDYzogS2VpciBGcmFzZXIg PGtlaXJAeGVuLm9yZz4KPiBDYzogVGltIERlZWdhbiA8dGltQHhlbi5vcmc+Cj4gU2lnbmVkLW9m Zi1ieTogU2hhbm5vbiBaaGFvIDxzaGFubm9uLnpoYW9AbGluYXJvLm9yZz4KPiAtLS0KPiB2ODog YWRkIGEgaGVscGVyIHRvIGNvbWJpbmUgeHNtX2FkZF90b19waHlzbWFwIGFuZCBYRU5NQVBTUEFD RV9kZXZfbW1pbwo+IHNwYWNlIGNoZWNrIHRvZ2V0aGVyCgpJIHdhcyBieSBhY2NpZGVudCByZXZp ZXdpbmcgdGhlIGVhcmxpZXIgZXJzaW9uLiBTbyBsZXQgbWUgZ2l2ZSBjb21tZW50cwpoZXJlIGFz IHdlbGwuCi4uIHNuaXBwLgo+ICtpbnQgbWFwX2Rldl9tbWlvX3JlZ2lvbihzdHJ1Y3QgZG9tYWlu ICpkLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHN0YXJ0X2dmbiwK PiArICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBuciwKPiArICAgICAgICAg ICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBtZm4pCj4gK3sKPiArICAgIGludCByZXM7Cj4g Kwo+ICsgICAgaWYgKCAhKG5yICYmIGlvbWVtX2FjY2Vzc19wZXJtaXR0ZWQoZCwgc3RhcnRfZ2Zu LCBzdGFydF9nZm4gKyBuciAtIDEpKSApCj4gKyAgICAgICAgcmV0dXJuIDA7Cj4gKwo+ICsgICAg cmVzID0gbWFwX21taW9fcmVnaW9ucyhkLCBzdGFydF9nZm4sIG5yLCBtZm4pOwo+ICsgICAgaWYg KCByZXMgPCAwICkKPiArICAgIHsKPiArICAgICAgICBwcmludGsoWEVOTE9HX0VSUiAiVW5hYmxl IHRvIG1hcCBbJSNseCAtICUjbHhdIGluIERvbSVkXG4iLAoKU2hvdWxkIHRoaXMgYmUgcHJpbnRr IHJhdGVsaW1pdGVkPwo+ICsgICAgICAgICAgICAgICBzdGFydF9nZm4sIHN0YXJ0X2dmbiArIG5y IC0gMSwgZC0+ZG9tYWluX2lkKTsKPiArICAgICAgICByZXR1cm4gcmVzOwo+ICsgICAgfQo+ICsK PiArICAgIHJldHVybiAwOwo+ICt9Cj4gKwo+ICBpbnQgZ3Vlc3RfcGh5c21hcF9hZGRfZW50cnko c3RydWN0IGRvbWFpbiAqZCwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGxvbmcgZ3BmbiwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcg bWZuLAo+IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL21lbW9yeS5jIGIveGVuL2NvbW1vbi9tZW1v cnkuYwo+IGluZGV4IGM3ZmNhOTYuLjY0NGY4MWEgMTAwNjQ0Cj4gLS0tIGEveGVuL2NvbW1vbi9t ZW1vcnkuYwo+ICsrKyBiL3hlbi9jb21tb24vbWVtb3J5LmMKPiBAQCAtODM0LDYgKzgzNCwxOSBA QCBzdGF0aWMgaW50IGdldF9yZXNlcnZlZF9kZXZpY2VfbWVtb3J5KHhlbl9wZm5fdCBzdGFydCwg eGVuX3Vsb25nX3QgbnIsCj4gIH0KPiAgI2VuZGlmCj4gIAo+ICtzdGF0aWMgbG9uZyB4YXRwX3Bl cm1pc3Npb25fY2hlY2soc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IHNwYWNlKQo+ICt7 Cj4gKyAgICAvKgo+ICsgICAgICogWEVOTUFQU1BBQ0VfZGV2X21taW8gbWFwcGluZyBpcyBvbmx5 IHN1cHBvcnRlZCBmb3IgaGFyZHdhcmUgRG9tYWluCgpzL0RvbWFpbi9kb21haW4vCj4gKyAgICAg KiB0byBtYXAgdGhpcyBraW5kIG9mIHNwYWNlIHRvIGl0c2VsZi4KPiArICAgICAqLwo+ICsgICAg aWYgKCAoc3BhY2UgPT0gWEVOTUFQU1BBQ0VfZGV2X21taW8pICYmCj4gKyAgICAgICAgICghaXNf aGFyZHdhcmVfZG9tYWluKGN1cnJlbnQtPmRvbWFpbikgfHwgKGQgIT0gY3VycmVudC0+ZG9tYWlu KSkgKQo+ICsgICAgICAgIHJldHVybiAtRUFDQ0VTOwoKV2h5IG5vdCAtRVBFUk0/Cgo+ICsKPiAr ICAgIHJldHVybiB4c21fYWRkX3RvX3BoeXNtYXAoWFNNX1RBUkdFVCwgY3VycmVudC0+ZG9tYWlu LCBkKTsKPiArfQo+ICsKPiAgbG9uZyBkb19tZW1vcnlfb3AodW5zaWduZWQgbG9uZyBjbWQsIFhF Tl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYXJnKQo+ICB7Cj4gICAgICBzdHJ1Y3QgZG9tYWlu ICpkOwo+IEBAIC05ODAsNyArOTkzLDcgQEAgbG9uZyBkb19tZW1vcnlfb3AodW5zaWduZWQgbG9u ZyBjbWQsIFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYXJnKQo+ICAgICAgICAgIGlmICgg ZCA9PSBOVUxMICkKPiAgICAgICAgICAgICAgcmV0dXJuIC1FU1JDSDsKPiAgCj4gLSAgICAgICAg cmMgPSB4c21fYWRkX3RvX3BoeXNtYXAoWFNNX1RBUkdFVCwgY3VycmVudC0+ZG9tYWluLCBkKTsK PiArICAgICAgICByYyA9IHhhdHBfcGVybWlzc2lvbl9jaGVjayhkLCB4YXRwLnNwYWNlKTsKCkFo LCB3aGljaCBuaWNlbHkgdGFrZXMgY2FyZSBvZiByY3VfdW5sb2NrX2RvbWFpbi4KPiAgICAgICAg ICBpZiAoIHJjICkKPiAgICAgICAgICB7Cj4gICAgICAgICAgICAgIHJjdV91bmxvY2tfZG9tYWlu KGQpOwo+IEBAIC0xMDI0LDcgKzEwMzcsNyBAQCBsb25nIGRvX21lbW9yeV9vcCh1bnNpZ25lZCBs b25nIGNtZCwgWEVOX0dVRVNUX0hBTkRMRV9QQVJBTSh2b2lkKSBhcmcpCj4gICAgICAgICAgaWYg KCBkID09IE5VTEwgKQo+ICAgICAgICAgICAgICByZXR1cm4gLUVTUkNIOwo+ICAKPiAtICAgICAg ICByYyA9IHhzbV9hZGRfdG9fcGh5c21hcChYU01fVEFSR0VULCBjdXJyZW50LT5kb21haW4sIGQp Owo+ICsgICAgICAgIHJjID0geGF0cF9wZXJtaXNzaW9uX2NoZWNrKGQsIHhhdHBiLnNwYWNlKTsK PiAgICAgICAgICBpZiAoIHJjICkKPiAgICAgICAgICB7Cj4gICAgICAgICAgICAgIHJjdV91bmxv Y2tfZG9tYWluKGQpOwo+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL3AybS5oIGIv eGVuL2luY2x1ZGUvYXNtLWFybS9wMm0uaAo+IGluZGV4IDU1NjI2YjQuLmQyNDBkMWUgMTAwNjQ0 Cj4gLS0tIGEveGVuL2luY2x1ZGUvYXNtLWFybS9wMm0uaAo+ICsrKyBiL3hlbi9pbmNsdWRlL2Fz bS1hcm0vcDJtLmgKPiBAQCAtMTU0LDYgKzE1NCwxMSBAQCBpbnQgdW5tYXBfcmVnaW9uc19yd19j YWNoZShzdHJ1Y3QgZG9tYWluICpkLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBsb25nIG5yX21mbnMsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGxvbmcgbWZuKTsKPiAgCj4gK2ludCBtYXBfZGV2X21taW9fcmVnaW9uKHN0cnVjdCBkb21haW4g KmQsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgc3RhcnRfZ2ZuLAo+ ICsgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG5yLAo+ICsgICAgICAgICAg ICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1mbik7Cj4gKwo+ICBpbnQgZ3Vlc3RfcGh5c21h cF9hZGRfZW50cnkoc3RydWN0IGRvbWFpbiAqZCwKPiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHVuc2lnbmVkIGxvbmcgZ2ZuLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z aWduZWQgbG9uZyBtZm4sCj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3B1YmxpYy9tZW1vcnku aCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9tZW1vcnkuaAo+IGluZGV4IGY2OWU5MmYuLmZlNTJlZTEg MTAwNjQ0Cj4gLS0tIGEveGVuL2luY2x1ZGUvcHVibGljL21lbW9yeS5oCj4gKysrIGIveGVuL2lu Y2x1ZGUvcHVibGljL21lbW9yeS5oCj4gQEAgLTIyMCw2ICsyMjAsNyBAQCBERUZJTkVfWEVOX0dV RVNUX0hBTkRMRSh4ZW5fbWFjaHBoeXNfbWFwcGluZ190KTsKPiAgI2RlZmluZSBYRU5NQVBTUEFD RV9nbWZuX3JhbmdlICAgMyAvKiBHTUZOIHJhbmdlLCBYRU5NRU1fYWRkX3RvX3BoeXNtYXAgb25s eS4gKi8KPiAgI2RlZmluZSBYRU5NQVBTUEFDRV9nbWZuX2ZvcmVpZ24gNCAvKiBHTUZOIGZyb20g YW5vdGhlciBkb20sCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogWEVO TUVNX2FkZF90b19waHlzbWFwX2JhdGNoIG9ubHkuICovCj4gKyNkZWZpbmUgWEVOTUFQU1BBQ0Vf ZGV2X21taW8gICAgIDUgLyogZGV2aWNlIG1taW8gcmVnaW9uICovCgpzL2RldmljZS9EZXZpY2Uv IEFuZCBtYXliZSBhbiBmdWxsIHN0b3AgYXQgdGhlIGVuZD8KCj4gIC8qIGAgfSAqLwo+ICAKPiAg LyoKPiAtLSAKPiAyLjAuNAo+IAo+IAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gWGVuLWRldmVsIG1haWxpbmcgbGlzdAo+IFhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCj4gaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBs aXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZl bAo=