From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexandre Courbot Subject: Re: [RFC] drm/ttm: dma: Fixes for 32-bit and 64-bit ARM Date: Mon, 8 Dec 2014 17:19:03 +0900 Message-ID: <54855EF7.8050900@nvidia.com> References: <1415795945-17575-1-git-send-email-thierry.reding@gmail.com> <54854FE7.8000604@nvidia.com> <54855D4B.50307@nvidia.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from hqemgate15.nvidia.com (hqemgate15.nvidia.com [216.228.121.64]) by gabe.freedesktop.org (Postfix) with ESMTP id 2C68D6E383 for ; Mon, 8 Dec 2014 00:19:22 -0800 (PST) In-Reply-To: <54855D4B.50307@nvidia.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Thierry Reding , dri-devel@lists.freedesktop.org Cc: Alexandre Courbot , Thomas Hellstrom , Allen Martin , Arnd Bergmann , Konrad Rzeszutek Wilk List-Id: dri-devel@lists.freedesktop.org T24gMTIvMDgvMjAxNCAwNToxMSBQTSwgQWxleGFuZHJlIENvdXJib3Qgd3JvdGU6Cj4gT24gMTIv MDgvMjAxNCAwNDoxNCBQTSwgQWxleGFuZHJlIENvdXJib3Qgd3JvdGU6Cj4+IE9uIDExLzEyLzIw MTQgMDk6MzkgUE0sIFRoaWVycnkgUmVkaW5nIHdyb3RlOgo+Pj4gRnJvbTogVGhpZXJyeSBSZWRp bmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KPj4+Cj4+PiBkbWFfYWxsb2NfY29oZXJlbnQoKSByZXR1 cm5zIGEga2VybmVsIHZpcnR1YWwgYWRkcmVzcyB0aGF0IGlzIHBhcnQgb2YKPj4+IHRoZSBsaW5l YXIgcmFuZ2UuIFBhc3Npbmcgc3VjaCBhbiBhZGRyZXNzIHRvIHZpcnRfdG9fcGFnZSgpIGlzIGls bGVnYWwKPj4+IG9uIG5vbi1jb2hlcmVudCBhcmNoaXRlY3R1cmVzLiBUaGlzIGNhdXNlcyB0aGUg a2VybmVsIHRvIG9vcHMgb24gNjQtYml0Cj4+PiBBUk0gYmVjYXVzZSB0aGUgc3RydWN0IHBhZ2Ug KiBvYnRhaW5lZCBmcm9tIHZpcnRfdG9fcGFnZSgpIHBvaW50cyB0bwo+Pj4gdW5tYXBwZWQgbWVt b3J5Lgo+Pj4KPj4+IFRoaXMgY29tbWl0IGZpeGVzIHRoaXMgYnkgdXNpbmcgcGh5c190b19wYWdl KCkgc2luY2Ugd2UgZ2V0IGEgcGh5c2ljYWwKPj4+IGFkZHJlc3MgZnJvbSBkbWFfYWxsb2NfY29o ZXJlbnQoKS4gTm90ZSB0aGF0IHRoaXMgaXMgbm90IGEgcHJvcGVyIGZpeAo+Pj4gYmVjYXVzZSBp ZiBhbiBJT01NVSBpcyBzZXQgdXAgdG8gdHJhbnNsYXRlIGFkZHJlc3NlcyBmb3IgdGhlIEdQVSB0 aGlzCj4+PiBhZGRyZXNzIHdpbGwgYmUgYW4gSS9PIHZpcnR1YWwgYWRkcmVzcyByYXRoZXIgdGhh biBhIHBoeXNpY2FsIG9uZS4gVGhlCj4+PiBwcm9wZXIgZml4IHByb2JhYmx5IGludm9sdmVzIG5v dCBnZXR0aW5nIGEgcG9pbnRlciB0byB0aGUgc3RydWN0IHBhZ2UKPj4+IGluIHRoZSBmaXJzdCBw bGFjZSwgYnV0IHRoYXQgd291bGQgYmUgYSBtdWNoIG1vcmUgaW50cnVzaXZlIGNoYW5nZSwgaWYK Pj4+IGF0IGFsbCBwb3NzaWJsZS4KPj4+Cj4+PiBVbnRpbCB0aGF0IHRpbWUsIHRoaXMgdGVtcG9y YXJ5IGZpeCB3aWxsIGFsbG93IFRUTSB0byB3b3JrIG9uIDMyLWJpdAo+Pj4gYW5kIDY0LWJpdCBB Uk0gYXMgd2VsbCwgcHJvdmlkZWQgdGhhdCBubyBJT01NVSB0cmFuc2xhdGlvbnMgYXJlIGVuYWJs ZWQKPj4+IGZvciB0aGUgR1BVLgo+Pj4KPj4+IFNpZ25lZC1vZmYtYnk6IFRoaWVycnkgUmVkaW5n IDx0cmVkaW5nQG52aWRpYS5jb20+Cj4+PiAtLS0KPj4+IEFybmQsIEkgcmVhbGl6ZSB0aGF0IHRo aXMgaXNuJ3QgYSBwcm9wZXIgZml4IGFjY29yZGluZyB0byB3aGF0IHdlCj4+PiBkaXNjdXNzZWQg b24KPj4+IElSQyB5ZXN0ZXJkYXksIGJ1dCBJIGNhbid0IHNlZSBhIHdheSB0byByZW1vdmUgYWNj ZXNzIHRvIHRoZSBwYWdlcwo+Pj4gYXJyYXkgdGhhdAo+Pj4gd291bGQgYmUgYXMgc2ltcGxlIGFz IHRoaXMuIEkndmUgbWFya2VkIHRoaXMgYXMgUkZDIGluIHRoZSBob3BlIHRoYXQKPj4+IGl0IHdp bGwKPj4+IHRyaWdnZXIgc29tZSBkaXNjdXNzaW9uIHRoYXQgd2lsbCBsZWFkIHRvIGEgcHJvcGVy IHNvbHV0aW9uLgo+Pj4KPj4+ICAgZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fcGFnZV9hbGxvY19k bWEuYyB8IDQgKysrKwo+Pj4gICAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspCj4+Pgo+ Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX3BhZ2VfYWxsb2NfZG1hLmMK Pj4+IGIvZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fcGFnZV9hbGxvY19kbWEuYwo+Pj4gaW5kZXgg Yzk2ZGI0MzNmOGFmLi5kNzk5Mzk4NTc1MmMgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vdHRtL3R0bV9wYWdlX2FsbG9jX2RtYS5jCj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vdHRt L3R0bV9wYWdlX2FsbG9jX2RtYS5jCj4+PiBAQCAtMzQzLDcgKzM0MywxMSBAQCBzdGF0aWMgc3Ry dWN0IGRtYV9wYWdlCj4+PiAqX190dG1fZG1hX2FsbG9jX3BhZ2Uoc3RydWN0IGRtYV9wb29sICpw b29sKQo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAgICZkX3BhZ2UtPmRtYSwKPj4+ICAgICAg ICAgICAgICAgICAgICAgICAgICBwb29sLT5nZnBfZmxhZ3MpOwo+Pj4gICAgICAgaWYgKGRfcGFn ZS0+dmFkZHIpCj4+PiArI2lmIGRlZmluZWQoQ09ORklHX0FSTSkgfHwgZGVmaW5lZChDT05GSUdf QVJNNjQpCj4+PiArICAgICAgICBkX3BhZ2UtPnAgPSBwaHlzX3RvX3BhZ2UoZF9wYWdlLT5kbWEp Owo+Pj4gKyNlbHNlCj4+PiAgICAgICAgICAgZF9wYWdlLT5wID0gdmlydF90b19wYWdlKGRfcGFn ZS0+dmFkZHIpOwo+Pj4gKyNlbmRpZgo+Pgo+PiBTaW5jZSBJIGFtIG1lc3Npbmcgd2l0aCB0aGUg SU9NTVUgSSBqdXN0IGhhcHBlbmVkIHRvIGhhdmUgaGl0IHRoZSBpc3N1ZQo+PiB5b3UgYXJlIG1l bnRpb25pbmcuIFdvdWxkbid0IHRoZSBmb2xsb3dpbmcgd29yazoKPj4KPj4gLSAgICAgICBpZiAo ZF9wYWdlLT52YWRkcikKPj4gLSNpZiBkZWZpbmVkKENPTkZJR19BUk0pIHx8IGRlZmluZWQoQ09O RklHX0FSTTY0KQo+PiAtICAgICAgICAgICAgICAgZF9wYWdlLT5wID0gcGh5c190b19wYWdlKGRf cGFnZS0+ZG1hKTsKPj4gLSNlbHNlCj4+IC0gICAgICAgICAgICAgICBkX3BhZ2UtPnAgPSB2aXJ0 X3RvX3BhZ2UoZF9wYWdlLT52YWRkcik7Cj4+IC0jZW5kaWYKPj4gLSAgICAgICBlbHNlIHsKPj4g KyAgICAgICBpZiAoZF9wYWdlLT52YWRkcikgewo+PiArICAgICAgICAgICAgICAgaWYgKGlzX3Zt YWxsb2NfYWRkcihkX3BhZ2UtPnZhZGRyKSkgewo+PiArICAgICAgICAgICAgICAgICAgICAgICBk X3BhZ2UtPnAgPSB2bWFsbG9jX3RvX3BhZ2UoZF9wYWdlLT52YWRkcik7Cj4+ICsgICAgICAgICAg ICAgICB9IGVsc2Ugewo+PiArICAgICAgICAgICAgICAgICAgICAgICBkX3BhZ2UtPnAgPSB2aXJ0 X3RvX3BhZ2UoZF9wYWdlLT52YWRkcik7Cj4+ICsgICAgICAgICAgICAgICB9Cj4+ICsgICAgICAg fSBlbHNlIHsKPj4KPj4gQSByZW1hcHBlZCBwYWdlIHdpbGwgZW5kIHVwIGluIHRoZSB2bWFsbG9j IHJhbmdlIG9mIHRoZSBhZGRyZXNzIHNwYWNlLAo+PiBhbmQgaW4gdGhpcyBjYXNlIHdlIGNhbiB1 c2Ugdm1hbGxvY190b19wYWdlKCkgdG8gZ2V0IHRoZSByaWdodCBwYWdlLgo+PiBQYWdlcyBvdXRz aWRlIG9mIHRoaXMgcmFuZ2UgYXJlIHBhcnQgb2YgdGhlIGxpbmVhciBtYXBwaW5nIGFuZCBjYW4g YmUKPj4gcmVzb2x2ZWQgdXNpbmcgdmlydF90b19wYWdlKCkuCj4+Cj4+IEpldHNvbiBzZWVtcyB0 byBiZSBtb3N0bHkgaGFwcHkgd2l0aCB0aGlzLCBhbHRob3VnaCBJIHNvbWV0aW1lcyBnZXQgdGhl Cj4+IGZvbGxvd2luZyB0cmFjZToKPj4KPj4gWyAgIDEzLjE3NDc2M10ga2VybmVsIEJVRyBhdCAu Li9tbS9zbGFiLmM6MjU5MyEKPj4gWyAgIDEzLjE3NDc2N10gSW50ZXJuYWwgZXJyb3I6IE9vcHMg LSBCVUc6IDAgWyMxXSBQUkVFTVBUIFNNUCBBUk0KPj4gWyAgIDEzLjE3NDc5MF0gTW9kdWxlcyBs aW5rZWQgaW46IG5vdXZlYXVfcGxhdGZvcm0oTyspIG5vdXZlYXUoTykKPj4gY2ZiZmlsbHJlY3Qg Y2ZiaW1nYmx0IGNmYmNvcHlhcmVhIHR0bQo+PiAuLi4KPj4gWyAgIDEzLjE3NTIzNF0gWzxjMDBk ZTIzOD5dIChjYWNoZV9hbGxvY19yZWZpbGwpIGZyb20gWzxjMDBkZTUyOD5dCj4+IChfX2ttYWxs b2MrMHgxMDAvMHgxM2MpCj4+IFsgICAxMy4xNzUyNDddIFs8YzAwZGU1Mjg+XSAoX19rbWFsbG9j KSBmcm9tIFs8YzAwMWQ1NjQ+XQo+PiAoYXJtX2lvbW11X2FsbG9jX2F0dHJzKzB4OTQvMHgzYTgp Cj4+IFsgICAxMy4xNzUyNjldIFs8YzAwMWQ1NjQ+XSAoYXJtX2lvbW11X2FsbG9jX2F0dHJzKSBm cm9tIFs8YmYwMDhmNGM+XQo+PiAodHRtX2RtYV9wb3B1bGF0ZSsweDQ5OC8weDc2YyBbdHRtXSkK Pj4gWyAgIDEzLjE3NTI5NF0gWzxiZjAwOGY0Yz5dICh0dG1fZG1hX3BvcHVsYXRlIFt0dG1dKSBm cm9tIFs8YmYwMDBiYjg+XQo+PiAodHRtX3R0X2JpbmQrMHgzOC8weDY4IFt0dG1dKQo+PiBbICAg MTMuMTc1MzE1XSBbPGJmMDAwYmI4Pl0gKHR0bV90dF9iaW5kIFt0dG1dKSBmcm9tIFs8YmYwMDI5 OGM+XQo+PiAodHRtX2JvX2hhbmRsZV9tb3ZlX21lbSsweDQwOC8weDQ3YyBbdHRtXSkKPj4gWyAg IDEzLjE3NTMzN10gWzxiZjAwMjk4Yz5dICh0dG1fYm9faGFuZGxlX21vdmVfbWVtIFt0dG1dKSBm cm9tCj4+IFs8YmYwMDM3NTg+XSAodHRtX2JvX3ZhbGlkYXRlKzB4MjIwLzB4MjJjIFt0dG1dKQo+ PiBbICAgMTMuMTc1MzU5XSBbPGJmMDAzNzU4Pl0gKHR0bV9ib192YWxpZGF0ZSBbdHRtXSkgZnJv bSBbPGJmMDAzOTg0Pl0KPj4gKHR0bV9ib19pbml0KzB4MjIwLzB4MzM4IFt0dG1dKQo+PiBbICAg MTMuMTc1NDgwXSBbPGJmMDAzOTg0Pl0gKHR0bV9ib19pbml0IFt0dG1dKSBmcm9tIFs8YmYwYzcw YTA+XQo+PiAobm91dmVhdV9ib19uZXcrMHgxYzAvMHgyOTQgW25vdXZlYXVdKQo+PiBbICAgMTMu MTc1Njg4XSBbPGJmMGM3MGEwPl0gKG5vdXZlYXVfYm9fbmV3IFtub3V2ZWF1XSkgZnJvbSBbPGJm MGNlODhjPl0KPj4gKG52ODRfZmVuY2VfY3JlYXRlKzB4MWNjLzB4MjQwIFtub3V2ZWF1XSkKPj4g WyAgIDEzLjE3NTg5MV0gWzxiZjBjZTg4Yz5dIChudjg0X2ZlbmNlX2NyZWF0ZSBbbm91dmVhdV0p IGZyb20KPj4gWzxiZjBjZWM5MD5dIChudmMwX2ZlbmNlX2NyZWF0ZSsweGMvMHgyNCBbbm91dmVh dV0pCj4+IFsgICAxMy4xNzYwOTRdIFs8YmYwY2VjOTA+XSAobnZjMF9mZW5jZV9jcmVhdGUgW25v dXZlYXVdKSBmcm9tCj4+IFs8YmYwYzE0ODA+XSAobm91dmVhdV9hY2NlbF9pbml0KzB4ZWMvMHg0 NTAgW25vdXZlYXVdKQo+Pgo+PiBJIHN1c3BlY3QgdGhpcyBpcyByZWxhdGVkIHRvIHRoaXMgY2hh bmdlLCBidXQgaXQgbWlnaHQgYWxzbyBiZSB0aGUKPj4gc2lkZS1lZmZlY3Qgb2YgYW5vdGhlciBi dWcgaW4gbXkgY29kZS4KPgo+IE9rLCBJIGZpbmFsbHkgdW5kZXJzdGFuZCB3aGVyZSB0aGlzIHRy YWNlIGNvbWVzIGZyb20uCj4KPiBzbGFiLmM6MjU5MzoKPiBCVUdfT04oZmxhZ3MgJiBHRlBfU0xB Ql9CVUdfTUFTSyk7Cj4KPiBnZnAuaDoKPiAjZGVmaW5lIEdGUF9TTEFCX0JVR19NQVNLIChfX0dG UF9ETUEzMnxfX0dGUF9ISUdITUVNfH5fX0dGUF9CSVRTX01BU0spCj4KPiBhbmQgdHRtX2RtYV9w b3B1bGF0ZSgpIGNhbGxzIHR0bV9kbWFfcG9vbF9pbml0KCkgd2l0aCBnZnBfZmxhZ3MgPT0KPiBH RlBfSElHSFVTRVIsIHdoaWNoIGluY2x1ZGVzIF9fR0ZQX0hJR0hNRU0uIFNvbWVob3cgdGhlc2Ug ZmxhZ3MgYXJlCj4gcHJvcGFnYXRlZCB0aHJvdWdoIGFybV9pb21tdV9hbGxvY19hdHRycygpIHVw IHRvIHRoZSBzbGFiIGFsbG9jYXRvciwKPiB3aGljaCBtZWV0cyB0aGlzIEJVR19PTigpIHdoZW4g aXQgbmVlZHMgdG8gZ3JvdyBpdHMgY2FjaGUuCj4KPiBOb3RlIHRoYXQgdHRtX2RtYV9wb29sX2lu aXQoKSBjYW4gYWxzbyBiZSBjYWxsZWQgd2l0aCBHRlBfRE1BMzIsIHdoaWNoCj4gd2lsbCB0cmln Z2VyIHRoZSBzYW1lIGVycm9yLgo+Cj4gU28gYWx0aG91Z2ggSSBhbSBzdGlsbCBub3Qgc3VyZSBo b3cgdGhpcyBzaG91bGQgYmUgZml4ZWQsIGl0IHNlZW1zIGxpa2UKPiB0aGlzIGhhcyBub3RoaW5n IHRvIGRvIHdpdGggdGhlIGNoYW5nZSBJIGFtIHByb3Bvc2luZy4KPgo+IFRlbXBvcmFyeSB3b3Jr YXJvdW5kOgo+Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fcGFnZV9hbGxvY19kbWEu Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX3BhZ2VfYWxsb2NfZG1hLmMKPiBAQCAt ODgyLDkgKzg4Miw5IEBAIGludCB0dG1fZG1hX3BvcHVsYXRlKHN0cnVjdCB0dG1fZG1hX3R0ICp0 dG1fZG1hLAo+IHN0cnVjdCBkZXZpY2UgKmRldikKPgo+ICAgICAgICAgIHR5cGUgPSB0dG1fdG9f dHlwZSh0dG0tPnBhZ2VfZmxhZ3MsIHR0bS0+Y2FjaGluZ19zdGF0ZSk7Cj4gICAgICAgICAgaWYg KHR0bS0+cGFnZV9mbGFncyAmIFRUTV9QQUdFX0ZMQUdfRE1BMzIpCj4gLSAgICAgICAgICAgICAg IGdmcF9mbGFncyA9IEdGUF9VU0VSIHwgR0ZQX0RNQTMyOwo+ICsgICAgICAgICAgICAgICBnZnBf ZmxhZ3MgPSBHRlBfVVNFUjsKPiAgICAgICAgICBlbHNlCj4gLSAgICAgICAgICAgICAgIGdmcF9m bGFncyA9IEdGUF9ISUdIVVNFUjsKPiArICAgICAgICAgICAgICAgZ2ZwX2ZsYWdzID0gR0ZQX1VT RVI7Cj4gICAgICAgICAgaWYgKHR0bS0+cGFnZV9mbGFncyAmIFRUTV9QQUdFX0ZMQUdfWkVST19B TExPQykKPiAgICAgICAgICAgICAgICAgIGdmcF9mbGFncyB8PSBfX0dGUF9aRVJPOwo+Cj4gLi4u IHdoaWNoIG9idmlvdXNseSBkb2Vzbid0IGxvb2sgcmlnaHQuCgpUaGlzLCBob3dldmVyLCBsb29r cyBiZXR0ZXI6CgpkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vbW0vZG1hLW1hcHBpbmcuYyBiL2FyY2gv YXJtL21tL2RtYS1tYXBwaW5nLmMKaW5kZXggZTg5MDcxMTc4NjFlLi5iYzQ5NTM1NGM4MDIgMTAw NjQ0Ci0tLSBhL2FyY2gvYXJtL21tL2RtYS1tYXBwaW5nLmMKKysrIGIvYXJjaC9hcm0vbW0vZG1h LW1hcHBpbmcuYwpAQCAtMTEwNiw3ICsxMTA2LDcgQEAgc3RhdGljIHN0cnVjdCBwYWdlICoqX19p b21tdV9hbGxvY19idWZmZXIoc3RydWN0IApkZXZpY2UgKmRldiwgc2l6ZV90IHNpemUsCiAgICAg ICAgIGludCBpID0gMDsKCiAgICAgICAgIGlmIChhcnJheV9zaXplIDw9IFBBR0VfU0laRSkKLSAg ICAgICAgICAgICAgIHBhZ2VzID0ga3phbGxvYyhhcnJheV9zaXplLCBnZnApOworICAgICAgICAg ICAgICAgcGFnZXMgPSBremFsbG9jKGFycmF5X3NpemUsIEdGUF9LRVJORUwpOwogICAgICAgICBl bHNlCiAgICAgICAgICAgICAgICAgcGFnZXMgPSB2emFsbG9jKGFycmF5X3NpemUpOwogICAgICAg ICBpZiAoIXBhZ2VzKQoKSSBkb24ndCBzZWUgYW55IHJlYXNvbiB3aHkgdGhlIGFycmF5IG9mIHBh Z2VzIHNob3VsZCBiZSBhbGxvY2F0ZWQgd2l0aCAKdGhlIHNhbWUgcHJvcGVydGllcyBhcyB0aGUg YnVmZmVyIGl0c2VsZi4gTG9va3MgbGlrZSB0aGlzIGlzIGEgRE1BIAphbGxvY2F0b3IgYnVnLiBT b3JyeSBhYm91dCB0aGUgbm9pc2UuCgpBbGV4LgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVsCg==