From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v3,2/2] dmaengine: uniphier-mdmac: add UniPhier MIO DMAC driver From: Vinod Koul Message-Id: <20181015170333.GJ2400@vkoul-mobl> Date: Mon, 15 Oct 2018 22:33:33 +0530 To: Masahiro Yamada Cc: "open list:DMA GENERIC OFFLOAD ENGINE SUBSYSTEM" , Masami Hiramatsu , Jassi Brar , Linux Kernel Mailing List , Dan Williams , linux-arm-kernel List-ID: T24gMTItMTAtMTgsIDAxOjI3LCBNYXNhaGlybyBZYW1hZGEgd3JvdGU6Cj4gT24gU3VuLCBPY3Qg NywgMjAxOCBhdCAxOjIzIEFNIFZpbm9kIDx2a291bEBrZXJuZWwub3JnPiB3cm90ZToKPiA+ID4g PiA+ICtzdGF0aWMgaW50IHVuaXBoaWVyX21kbWFjX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZp Y2UgKnBkZXYpCj4gPiA+ID4gPiArewo+ID4gPiA+ID4gKyAgICAgc3RydWN0IGRldmljZSAqZGV2 ID0gJnBkZXYtPmRldjsKPiA+ID4gPiA+ICsgICAgIHN0cnVjdCB1bmlwaGllcl9tZG1hY19kZXZp Y2UgKm1kZXY7Cj4gPiA+ID4gPiArICAgICBzdHJ1Y3QgZG1hX2RldmljZSAqZGRldjsKPiA+ID4g PiA+ICsgICAgIHN0cnVjdCByZXNvdXJjZSAqcmVzOwo+ID4gPiA+ID4gKyAgICAgaW50IG5yX2No YW5zLCByZXQsIGk7Cj4gPiA+ID4gPiArCj4gPiA+ID4gPiArICAgICBucl9jaGFucyA9IHBsYXRm b3JtX2lycV9jb3VudChwZGV2KTsKPiA+ID4gPiA+ICsgICAgIGlmIChucl9jaGFucyA8IDApCj4g PiA+ID4gPiArICAgICAgICAgICAgIHJldHVybiBucl9jaGFuczsKPiA+ID4gPiA+ICsKPiA+ID4g PiA+ICsgICAgIHJldCA9IGRtYV9zZXRfbWFzayhkZXYsIERNQV9CSVRfTUFTSygzMikpOwo+ID4g PiA+ID4gKyAgICAgaWYgKHJldCkKPiA+ID4gPiA+ICsgICAgICAgICAgICAgcmV0dXJuIHJldDsK PiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsgICAgIG1kZXYgPSBkZXZtX2t6YWxsb2MoZGV2LCBzdHJ1 Y3Rfc2l6ZShtZGV2LCBjaGFubmVscywgbnJfY2hhbnMpLAo+ID4gPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICBHRlBfS0VSTkVMKTsKPiA+ID4gPiA+ICsgICAgIGlmICghbWRldikKPiA+ ID4gPiA+ICsgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4gPiA+ID4gPiArCj4gPiA+ID4g PiArICAgICByZXMgPSBwbGF0Zm9ybV9nZXRfcmVzb3VyY2UocGRldiwgSU9SRVNPVVJDRV9NRU0s IDApOwo+ID4gPiA+ID4gKyAgICAgbWRldi0+cmVnX2Jhc2UgPSBkZXZtX2lvcmVtYXBfcmVzb3Vy Y2UoZGV2LCByZXMpOwo+ID4gPiA+ID4gKyAgICAgaWYgKElTX0VSUihtZGV2LT5yZWdfYmFzZSkp Cj4gPiA+ID4gPiArICAgICAgICAgICAgIHJldHVybiBQVFJfRVJSKG1kZXYtPnJlZ19iYXNlKTsK PiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsgICAgIG1kZXYtPmNsayA9IGRldm1fY2xrX2dldChkZXYs IE5VTEwpOwo+ID4gPiA+ID4gKyAgICAgaWYgKElTX0VSUihtZGV2LT5jbGspKSB7Cj4gPiA+ID4g PiArICAgICAgICAgICAgIGRldl9lcnIoZGV2LCAiZmFpbGVkIHRvIGdldCBjbG9ja1xuIik7Cj4g PiA+ID4gPiArICAgICAgICAgICAgIHJldHVybiBQVFJfRVJSKG1kZXYtPmNsayk7Cj4gPiA+ID4g PiArICAgICB9Cj4gPiA+ID4gPiArCj4gPiA+ID4gPiArICAgICByZXQgPSBjbGtfcHJlcGFyZV9l bmFibGUobWRldi0+Y2xrKTsKPiA+ID4gPiA+ICsgICAgIGlmIChyZXQpCj4gPiA+ID4gPiArICAg ICAgICAgICAgIHJldHVybiByZXQ7Cj4gPiA+ID4gPiArCj4gPiA+ID4gPiArICAgICBkZGV2ID0g Jm1kZXYtPmRkZXY7Cj4gPiA+ID4gPiArICAgICBkZGV2LT5kZXYgPSBkZXY7Cj4gPiA+ID4gPiAr ICAgICBkbWFfY2FwX3NldChETUFfUFJJVkFURSwgZGRldi0+Y2FwX21hc2spOwo+ID4gPiA+ID4g KyAgICAgZGRldi0+c3JjX2FkZHJfd2lkdGhzID0gQklUKERNQV9TTEFWRV9CVVNXSURUSF9VTkRF RklORUQpOwo+ID4gPiA+ID4gKyAgICAgZGRldi0+ZHN0X2FkZHJfd2lkdGhzID0gQklUKERNQV9T TEFWRV9CVVNXSURUSF9VTkRFRklORUQpOwo+ID4gPiA+Cj4gPiA+ID4gdW5kZWZpbmVkPwo+ID4g Pgo+ID4gPiBQcmVjaXNlbHksIEkgZG8gbm90IGtub3cgdGhlICpfYWRkcl93aWR0aHMuCj4gPgo+ ID4gVGhpcyBpcyAieW91ciIgY29udHJvbGxlciwgeW91IGtub3cgdGhlIGNhcGFiaWxpdHkhCj4g Cj4gTm8sIEkgZG8gbm90Lgo+IAo+IEkgd3JvdGUgdGhpcyBkcml2ZXIsIGJ1dCB0aGUgaGFyZHdh cmUtaW50ZXJuYWwgaXMgbm90IGZ1bGx5IGRvY3VtZW50ZWQKPiBpbiB0aGUgZGF0YXNoZWV0Lgo+ IEkgY2FuIHNlZSB0aGUgZnVuY3Rpb25hbGl0eSBvbmx5IGZyb20gdGhlIHNvZnR3YXJlIHBvaW50 IG9mIHZpZXcuCgpBaCB0aGF0IGlzIHNhZCEKCj4gPiA+IEFzIGZhciBhcyBJIHJlYWQgZG1hZW5n aW5lL3Byb3ZpZGVyLnJzdAo+ID4gPiB0aGlzIHJlcHJlc2VudHMgdGhlIGRhdGEgYnl0ZXMgdGhh dCBhcmUgcmVhZC93cml0dGVuIGF0IGEgdGltZS4KPiA+ID4KPiA+ID4gUmVhbGx5IEkgZG8gbm90 IGtub3cgKGNhcmUgYWJvdXQpIHRoZSB0cmFuc2ZlciB3aWR0aC4KPiA+ID4KPiA+ID4gQXMgSSBj b21tZW50ZWQgaW4gdjIsIHRoZSBjb25uZWN0aW9uIG9mIHRoZSBkZXZpY2Ugc2lkZSBpcyBoYXJk LXdpcmVkLgo+ID4gPiBUaGUgdHJhbnNmZXIgd2lkdGggY2Fubm90IGJlIG9ic2VydmVkIGZyb20g U1cgdmlldy4KPiA+ID4KPiA+ID4gV2hhdCBzaG91bGQgSSBkbz8KPiA+Cj4gPiBBZGQgdGhlIHdp ZHRocyB0aGF0IGFyZSBzdXBwb3J0ZWQgYnkgdGhlIGNvbnRyb2xsZXIKPiAKPiBUbyBteSBiZXN0 IGtub3dsZWRnZSwgdGhpcyBETUEgZW5naW5lIGlzIGNvbm5lY3RlZCB0byBhIDMyLWJpdCBidXMu Cj4gU28sIDQgYnl0ZXMgYXJlIHJlYWQvd3JpdHRlbiBhdCBhIHRpbWUuCj4gCj4gVGhpcyBIVyBh bGxvd3MgdG8gc2V0IHRoZSB0cmFuc2ZlciBzaXplIGJ5IGJ5dGUgZ3JhbnVsYXJpdHkuCj4gU28s IGl0IHdvdWxkIGJlIHBvc3NpYmxlIHRvIGFjY2VzcyB0aGUgZGF0YSBidXMKPiBieSAxLWJ5dGUs IDItYnl0ZXMsIDMtYnl0ZXMgYXMgd2VsbC4KPiAKPiBJIHdpbGwgc2V0IHRoZSBPUiBvZiAxLCAy LCAzLCA0IGJ5dGVzLgoKdGhhdCB3b3VsZCBiZSBiZXR0ZXIuIEFsc28gaWYgeW91IGNhbiB0ZXN0 IGFuZCB2ZXJpZnkgdGhlc2UgYW5kIGFkZCB0aGUKb25lcyB5b3UgaGF2ZSB2ZXJpZmllZCB3b3Vs ZCBiZSBldmVuIGJldHRlcgoKPiA+ID4gPiA+ICtzdGF0aWMgaW50IHVuaXBoaWVyX21kbWFjX3Jl bW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ID4gPiA+ID4gK3sKPiA+ID4gPiA+ ICsgICAgIHN0cnVjdCB1bmlwaGllcl9tZG1hY19kZXZpY2UgKm1kZXYgPSBwbGF0Zm9ybV9nZXRf ZHJ2ZGF0YShwZGV2KTsKPiA+ID4gPiA+ICsKPiA+ID4gPiA+ICsgICAgIG9mX2RtYV9jb250cm9s bGVyX2ZyZWUocGRldi0+ZGV2Lm9mX25vZGUpOwo+ID4gPiA+ID4gKyAgICAgZG1hX2FzeW5jX2Rl dmljZV91bnJlZ2lzdGVyKCZtZGV2LT5kZGV2KTsKPiA+ID4gPiA+ICsgICAgIGNsa19kaXNhYmxl X3VucHJlcGFyZShtZGV2LT5jbGspOwo+ID4gPiA+Cj4gPiA+ID4gYXQgdGhpcyBwb2ludCB5b3Vy IGlycSBpcyByZWdpc3RlcmVkIGFuZCBjYW4gYmUgZmlyZWQsIHRoZSB0YXNrbGV0cyBhcmUKPiA+ ID4gPiBub3Qga2lsbGVkIDooCj4gPiA+Cj4gPiA+Cj4gPiA+IFBsZWFzZSBsZXQgbWUgY2xhcmlm eSB0aGUgY29uY2VybnMgaGVyZS4KPiA+ID4KPiA+ID4gQmVmb3JlIHRoZSAucmVtb3ZlIGhvb2sg aXMgY2FsbGVkLCBhbGwgdGhlIGNvbnN1bWVycyBzaG91bGQKPiA+ID4gaGF2ZSBhbHJlYWR5IHB1 dCB0aGUgZG1hIGNoYW5uZWxzLgo+ID4gPiBTbywgbm8gbmV3IGRlc2NyaXB0b3IgaXMgY29taW5n IGluLgo+ID4gPgo+ID4gPiBIb3dldmVyLAo+ID4gPgo+ID4gPiBTb21lIGFscmVhZHktaXNzdWVk IGRlc2NyaXB0b3JzIG1pZ2h0IGJlIHJlbWFpbmluZywgYW5kIGJlaW5nIHByb2Nlc3NlZC4KPiA+ ID4KPiA+ID4gWzFdIFRoaXMgRE1BIGVuZ2luZSBtaWdodCBiZSBzdGlsbCBydW5uaW5nCj4gPiA+ ICAgICB3aGVuIGNsa19kaXNhYmxlX3VucHJlcGFyZSgpIGlzIGJlaW5nIGNhbGxlZC4KPiA+ID4g ICAgIFRoZSByZWdpc3RlciBhY2Nlc3Mgd2l0aCBpdHMgY2xvY2sgZGlzYWJsZWQKPiA+ID4gICAg IHdvdWxkIGNhdXNlIHRoZSBzeXN0ZW0gY3Jhc2guCj4gPgo+ID4gWWVzIGFuZCBkbWFlbmdpbmUg bWF5IGZpcmUgYSBzcHVyaW91cyBpcnEuLgo+ID4gPgo+ID4gPiBbMl0gdmNoYW5fY29va2llX2Nv bXBsZXRlKCkgbWlnaHQgYmVpbmcgY2FsbGVkIGF0IHRoaXMgcG9pbnQKPiA+ID4gICAgIGFuZCBz Y2hlZHVsZSB0aGUgdGFza2xldC4KPiA+ID4gICAgIEl0IG1pZ2h0IGNhbGwgdW5pcGhpZXJfbWRt YWNfZGVzY19mcmVlKCkgYWZ0ZXIKPiA+ID4gICAgIHRoZSByZWZlcmVuY2UgZGlzYXBwZXJycy4K PiA+ID4KPiA+ID4gSXMgdGhpcyBjb3JyZWN0Pwo+ID4KPiA+IENvcnJlY3QgOikKPiA+Cj4gPiA+ IERvIHlvdSBoYXZlIHJlY29tbWVuZGF0aW9uCj4gPiA+IGZvciBtb2R1bGUgcmVtb3ZhbCBndWlk ZWxpbmU/Cj4gPgo+ID4gWWVzIHBsZWFzZSBmcmVlIHVwIG9yIGRpc2FibGUgaXJxIGV4cGxpY3Rs eSwgZW5zdXJlIHBlbmRpbmcgaXJxcyBoYXZlCj4gPiBjb21wbGV0ZWQgYW5kIHRoZW4gZW5zdXJl IGFsbCB0aGUgdGFza2xldHMgYXJlIGtpbGxlZCBhbmQgaW4gdGhpcyBvcmRlcgo+ID4gZm9yIG9i dmlvdXMgcmVhc29ucwo+IAo+IEFsc28sIG5lZWQgdG8gZnJlZSB1cCB0aGUgbGVmdC1vdmVyIGRl c2NyaXB0b3IocykgcmlnaHQ/Cj4gSnVzdCBraWxsaW5nIHRoZSB0YXNrbGV0cyBtYXkgcmVzdWx0 IGluIG1lbW9yeSBsZWFrLgoKWWVzIEkgYW0gYXNzdW1pbmcgeW91IHdvdWxkIGhhdmUgZG9uZSBz byBpbiB0ZXJtaW5hdGUgY2FsbHMKCj4gUGxlYXNlIGxldCBrbm93IGlmIHRoZSBpbXBsZW1lbnRh dGlvbiBpbiB2NCBpcyB3cm9uZy4KClN1cmUgd2lsbCBkbwo=