From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pawel Moll Subject: Re: [RFC] virtio-mmio: Update the device to OASIS spec version Date: Thu, 15 Jan 2015 17:32:38 +0000 Message-ID: <1421343158.4601.7.camel@arm.com> References: <1419014284-18500-1-git-send-email-pawel.moll@arm.com> <20150115165101.GA29808@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20150115165101.GA29808@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: "Michael S. Tsirkin" Cc: "virtualization@lists.linux-foundation.org" List-Id: virtualization@lists.linuxfoundation.org T24gVGh1LCAyMDE1LTAxLTE1IGF0IDE2OjUxICswMDAwLCBNaWNoYWVsIFMuIFRzaXJraW4gd3Jv dGU6Cj4gPiArICAgICAgICAgICAgIHVpbnQ2NF90IGFkZHIgPSB2aXJ0X3RvX3BoeXMoaW5mby0+ cXVldWUpOwo+IAo+IEtlcm5lbCBub3JtYWxseSB1c2VzIHU2NCBmb3IgdGhpcyB0eXBlLgoKU3Vy ZSwgd2VsbCBzcG90dGVkLgoKPiA+ICsKPiA+ICsgICAgICAgICAgICAgd3JpdGVsKGFkZHIgJiAw eGZmZmZmZmZmLAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm1fZGV2LT5iYXNl ICsgVklSVElPX01NSU9fUVVFVUVfREVTQ19MT1cpOwo+ID4gKyAgICAgICAgICAgICB3cml0ZWwo KGFkZHIgPj4gMzIpICYgMHhmZmZmZmZmZiwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHZtX2Rldi0+YmFzZSArIFZJUlRJT19NTUlPX1FVRVVFX0RFU0NfSElHSCk7Cj4gPiArCj4g PiArICAgICAgICAgICAgIGFkZHIgKz0gaW5mby0+bnVtICogc2l6ZW9mKHN0cnVjdCB2cmluZ19k ZXNjKTsKPiA+ICsgICAgICAgICAgICAgd3JpdGVsKGFkZHIgJiAweGZmZmZmZmZmLAo+ID4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdm1fZGV2LT5iYXNlICsgVklSVElPX01NSU9fUVVF VUVfQVZBSUxfTE9XKTsKPiA+ICsgICAgICAgICAgICAgd3JpdGVsKChhZGRyID4+IDMyKSAmIDB4 ZmZmZmZmZmYsCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2bV9kZXYtPmJhc2Ug KyBWSVJUSU9fTU1JT19RVUVVRV9BVkFJTF9ISUdIKTsKPiAKPiAweGZmZmZmZmZmIGlzbid0IHJl YWxseSBuZWVkZWQsIGlzIGl0PwoKSSBhZG1pdCBJJ20gbmV2ZXIgc3VyZSB3aGF0IGFyZSB0aGUg bmFycm93aW5nIHNpZGUgZWZmZWN0cy4gWW91IGFyZQpwcm9iYWJseSByaWdodCB0aGF0IHU2NCA+ PiAzMiB3aWxsIGJlIGFsd2F5cyAzMiBiaXQuCgo+ID4gKwo+ID4gKyAgICAgICAgICAgICBhZGRy ICs9IHNpemVvZihzdHJ1Y3QgdnJpbmdfYXZhaWwpICsgaW5mby0+bnVtICogc2l6ZW9mKF9fdTE2 KTsKPiA+ICsgICAgICAgICAgICAgYWRkciArPSBWSVJUSU9fTU1JT19WUklOR19BTElHTiAtIDE7 Cj4gPiArICAgICAgICAgICAgIGFkZHIgJj0gfihWSVJUSU9fTU1JT19WUklOR19BTElHTiAtIDEp Owo+IAo+IAo+IEhvc3Qgbm8gbG9uZ2VyIGtub3dzIHRoZSBhbGlnbm1lbnQsIHNvIHdoeSBpcyBp dCBuZWVkZWQ/Cgpbc2tpcHBlZCB0aGUgc3BlYyByZWZlcmVuY2UsIGl0J3MgYSBzZXBhcmF0ZSBk aXNjdXNzaW9uXQoKPiBJIHRoaW5rIHlvdSBzaG91bGRuJ3QgdXNlIFZJUlRJT19NTUlPX1ZSSU5H X0FMSUdOIGluIG5vbi1sZWdhY3kgY29kZToKPiBpdCdzIGEgbGVnYWN5IHRoaW5nLgoKQnV0IEkg c3RpbGwgbmVlZCB0byBwYXNzIHNvbWV0aGluZyB0byB2cmluZ19uZXdfdmlydHF1ZXVlKCkgYmVs b3csIGRvbid0Ckk/IEFuZCBpdCB3aWxsIGFsbG9jYXRlIHRoZSBxdWV1ZSBiYXNlZCBvbiBzb21l IGFsaWdubWVudCB2YWx1ZS4gSSBjYW4ndApzZWUgYW55dGhpbmcgdGhhdCB3b3VsZCBjcmVhdGUg dGhlIGxheW91dCBmb3IgbWUsIG5laXRoZXIgaW4gbWFpbmxpbmUKbm9yIGluIG5leHQuIEhhdmUg SSBtaXNzZWQgc29tZXRoaW5nPyAod291bGRuJ3QgYmUgc3VycHJpc2VkIGlmIEkgaGF2ZSkKCj4g PiArICAgICAgICAgICAgIHdyaXRlbChhZGRyICYgMHhmZmZmZmZmZiwKPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHZtX2Rldi0+YmFzZSArIFZJUlRJT19NTUlPX1FVRVVFX1VTRURf TE9XKTsKPiA+ICsgICAgICAgICAgICAgd3JpdGVsKChhZGRyID4+IDMyKSAmIDB4ZmZmZmZmZmYs Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2bV9kZXYtPmJhc2UgKyBWSVJUSU9f TU1JT19RVUVVRV9VU0VEX0hJR0gpOwo+ID4gKwo+ID4gKyAgICAgICAgICAgICB3cml0ZWwoMSwg dm1fZGV2LT5iYXNlICsgVklSVElPX01NSU9fUVVFVUVfUkVBRFkpOwo+ID4gKyAgICAgfQo+ID4K PiA+ICAgICAgIC8qIENyZWF0ZSB0aGUgdnJpbmcgKi8KPiA+ICAgICAgIHZxID0gdnJpbmdfbmV3 X3ZpcnRxdWV1ZShpbmRleCwgaW5mby0+bnVtLCBWSVJUSU9fTU1JT19WUklOR19BTElHTiwgdmRl diwKClsuLi5dCgo+ID4gK3N0YXRpYyBzdHJ1Y3QgZGV2aWNlX2F0dHJpYnV0ZSB2bV9kZXZfYXR0 cl92ZXJzaW9uID0KPiA+ICsgICAgICAgICAgICAgX19BVFRSKHZlcnNpb24sIFNfSVJVR08sIHZt X2Rldl9hdHRyX3ZlcnNpb25fc2hvdywgTlVMTCk7Cj4gPiArCj4gPiAgc3RhdGljIGludCB2aXJ0 aW9fbW1pb19wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ID4gIHsKPiA+ICAg ICAgIHN0cnVjdCB2aXJ0aW9fbW1pb19kZXZpY2UgKnZtX2RldjsKPiAKPiBXZSBhbHJlYWR5IGV4 cG9zZSBmZWF0dXJlIGJpdHMgLSB0aGlzIG9uZSByZWFsbHkgbmVjZXNzYXJ5PwoKTmVjZXNzYXJ5 PyBPZiBjb3Vyc2Ugbm90LCBqdXN0IGEgZGVidWdnaW5nIGZlYXR1cmUsIHJlYWxseSwgdG8gc2Vl IHdoYXQKdmVyc2lvbiBvZiBjb250cm9sIHJlZ2lzdGVycyBhcmUgYXZhaWxhYmxlLiBVc2VmdWwg LSBJIHN0cm9uZ2x5IGJlbGlldmUKc28uCgo+ID4gQEAgLTQ3NiwxNiArNTAxLDI2IEBAIHN0YXRp YyBpbnQgdmlydGlvX21taW9fcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiA+ Cj4gPiAgICAgICAvKiBDaGVjayBkZXZpY2UgdmVyc2lvbiAqLwo+ID4gICAgICAgdm1fZGV2LT52 ZXJzaW9uID0gcmVhZGwodm1fZGV2LT5iYXNlICsgVklSVElPX01NSU9fVkVSU0lPTik7Cj4gPiAt ICAgICBpZiAodm1fZGV2LT52ZXJzaW9uICE9IDEpIHsKPiA+ICsgICAgIGlmICh2bV9kZXYtPnZl cnNpb24gPCAxIHx8IHZtX2Rldi0+dmVyc2lvbiA+IDIpIHsKPiA+ICAgICAgICAgICAgICAgZGV2 X2VycigmcGRldi0+ZGV2LCAiVmVyc2lvbiAlbGQgbm90IHN1cHBvcnRlZCFcbiIsCj4gPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB2bV9kZXYtPnZlcnNpb24pOwo+ID4gICAgICAgICAg ICAgICByZXR1cm4gLUVOWElPOwo+ID4gICAgICAgfQo+ID4KPiA+ICAgICAgIHZtX2Rldi0+dmRl di5pZC5kZXZpY2UgPSByZWFkbCh2bV9kZXYtPmJhc2UgKyBWSVJUSU9fTU1JT19ERVZJQ0VfSUQp Owo+ID4gKyAgICAgaWYgKHZtX2Rldi0+dmRldi5pZC5kZXZpY2UgPT0gMCkgewo+ID4gKyAgICAg ICAgICAgICAvKgo+ID4gKyAgICAgICAgICAgICAgKiBJRCAwIG1lYW5zIGEgZHVtbXkgKHBsYWNl aG9sZGVyKSBkZXZpY2UsIHNraXAgcXVpZXRseQo+ID4gKyAgICAgICAgICAgICAgKiAoYXMgaW46 IG5vIGVycm9yKSB3aXRoIG5vIGZ1cnRoZXIgYWN0aW9ucwo+ID4gKyAgICAgICAgICAgICAgKi8K PiA+ICsgICAgICAgICAgICAgcmV0dXJuIDA7Cj4gCj4gTmVjZXNzYXJ5Pwo+IFdlIGRvbid0IGhh dmUgZHJpdmVycyBmb3IgdGhpcyBpZCBhbnl3YXkuCgpJJ20gbm90IHN1cmUgaWYgeW91IGFyZSBq b2tpbmcgb3Igbm90LCBhZnRlciB0aGUgYmF0dGxlIHdlIGZvdWdodCBvdmVyCml0LgoKVGhlIHNo b3J0IGFuc3dlciBpczogeWVzLiBOZWNlc3NhcnkuCgoiNC4yLjIgTU1JTyBEZXZpY2UgUmVnaXN0 ZXIgTGF5b3V0CgpbLi4uXQoKVmlydGlvIFN1YnN5c3RlbSBEZXZpY2UgSUQKU2VlIDUgRGV2aWNl IFR5cGVzIGZvciBwb3NzaWJsZSB2YWx1ZXMuIFZhbHVlIHplcm8gKDB4MCkgaXMgdXNlZCB0byBk ZS0KZmluZSBhIHN5c3RlbSBtZW1vcnkgbWFwIHdpdGggcGxhY2Vob2xkZXIgZGV2aWNlcyBhdCBz dGF0aWMsIHdlbGwga25vd24KYWRkcmVzc2VzLCBhc3NpZ25pbmcgZnVuY3Rpb25zIHRvIHRoZW0g ZGVwZW5kaW5nIG9uIHVzZXLigJlzIG5lZWRzLgoKWy4uLl0KCjQuMi4yLjIgRHJpdmVyIFJlcXVp cmVtZW50czogTU1JTyBEZXZpY2UgUmVnaXN0ZXIgTGF5b3V0CgpUaGUgZHJpdmVyIE1VU1QgaWdu b3JlIGEgZGV2aWNlIHdpdGggRGV2aWNlSUQgMHgwLCBidXQgTVVTVCBOT1QgcmVwb3J0CmFueSBl cnJvci4iCgo+ID4gKyAgICAgfQo+IAo+IE5lZWQgdG8gYWxzbwo+ICAgICAgICAgMS4gdmFsaWRh dGUgdGhhdCBmZWF0dXJlIGJpdCBWSVJUSU9fMSBpcyBzZXQKPiAgICAgICAgIDIuIHZhbGlkYXRl IHRoYXQgSUQgaXMgbm90IGZvciBhIGxlZ2FjeSBkZXZpY2UKPiAKPiBvdGhlcndpc2UgZGV2aWNl IHNwZWNpZmljIGRyaXZlcnMgbWlnaHQgZ2V0IGludm9rZWQKPiBvbiBmdXR1cmUgZGV2aWNlcyAo ZS5nLiB3aGVuIHdlIHVwZGF0ZSBiYWxsb29uIGZvciAxLjApCj4gYW5kIHRoZXkgbm90IGRvIHRo ZSByaWdodCB0aGluZy4KCkknbSBub3QgZm9sbG93aW5nIHlvdSwgYnV0IEkgYWRtaXQgSSBoYXZl bid0IHRob3VnaCB0aGlzIHByb2JsZW0KdGhvcm91Z2hseS4gSWYgeW91IGNhbiB2b2x1bnRlZXIg YW4gZXhhbXBsZSBvZiB0aGluZ3MgZ29pbmcgb24sIGl0IHdvdWxkCmJlIHVzZWZ1bC4gRWl0aGVy IHdheSwgSSdsbCB0aGluayBhYm91dCBpdCBhZ2Fpbi4KCj4gQEAgLTQ5Niw3ICs1MzEsOCBAQCBz dGF0aWMgaW50IHZpcnRpb19tbWlvX3JlbW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2 KQo+ID4gIHsKPiA+ICAgICAgIHN0cnVjdCB2aXJ0aW9fbW1pb19kZXZpY2UgKnZtX2RldiA9IHBs YXRmb3JtX2dldF9kcnZkYXRhKHBkZXYpOwo+ID4KPiA+IC0gICAgIHVucmVnaXN0ZXJfdmlydGlv X2RldmljZSgmdm1fZGV2LT52ZGV2KTsKPiA+ICsgICAgIGlmICh2bV9kZXYpCj4gPiArICAgICAg ICAgICAgIHVucmVnaXN0ZXJfdmlydGlvX2RldmljZSgmdm1fZGV2LT52ZGV2KTsKPiA+Cj4gCj4g V2lsbCByZW1vdmUgZXZlciBiZSBjYWxsZWQgaWYgcHJvYmUgZmFpbHM/CgpOby4KCj4gPiAtLyog R3Vlc3QncyBtZW1vcnkgcGFnZSBzaXplIGluIGJ5dGVzIC0gV3JpdGUgT25seSAqLwo+ID4gKy8q IEd1ZXN0J3MgbWVtb3J5IHBhZ2Ugc2l6ZSBpbiBieXRlcyAtIFdyaXRlIE9ubHkKPiA+ICsgKiBM RUdBQ1kgREVWSUNFUyBPTkxZISAqLwo+IAo+IFRoaXMgaXMgbm90IHRoZSBwcmVmZXJyZWQgc3R5 bGUgZm9yIG11bHRpLWxpbmUgY29tbWVudHMgOikKCkZhY3QuIFdpbGwgZml4LgoKPiBBbHNvIC0g bWF5YmUgYWRkIGEgZmxhZyB0byBzZWxlY3RpdmVseSBkaXNhYmxlIGxlZ2FjeQo+IG9yIG1vZGVy biBtYWNyb3M/Cj4gTWlnaHQgYmUgY2xlYXJlciB0aGFuIGNvbW1lbnRzIHRoYXQsIGFmdGVyIGFs bCwgbmV2ZXIgY29tcGlsZS4KCkFzIGluLCBhIGJ1bmNoIG9mICNpZmRlZnMgZGlzYWJsaW5nIHRo ZSBsZWdhY3kgbGluZXMgb2YgY29kZT8gRG9hYmxlLAphbHRob3VnaCBJJ20gbm90IHN1cmUgaG93 IGJlYXV0aWZ1bCB3b3VsZCB0aGF0IGJlLiBXaWxsIGhhdmUgYSBsb29rLCBidXQKaXQgcHJvYmFi bHkgd291bGQgb25seSBtYWtlIHNlbnNlIHdpdGggQ09ORklHX1ZJUlRJT19NTUlPX0xFR0FDWSBv cHRpb24uCgpQYXdlxYIKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClZpcnR1YWxpemF0aW9uIG1haWxpbmcgbGlzdApWaXJ0dWFsaXphdGlvbkBsaXN0cy5s aW51eC1mb3VuZGF0aW9uLm9yZwpodHRwczovL2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvbWFp bG1hbi9saXN0aW5mby92aXJ0dWFsaXphdGlvbg==