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: [5/6] dmaengine: sun6i: Add support for H6 DMA From: =?utf-8?q?Jernej_=C5=A0krabec?= Message-Id: <5341987.B6qKFIFFIv@jernej-laptop> Date: Sat, 16 Mar 2019 12:37:35 +0100 To: Vinod Koul Cc: maxime.ripard@bootlin.com, wens@csie.org, robh+dt@kernel.org, mark.rutland@arm.com, dan.j.williams@intel.com, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com List-ID: RG5lIHNvYm90YSwgMTYuIG1hcmVjIDIwMTkgb2IgMTI6MTM6MjQgQ0VUIGplIFZpbm9kIEtvdWwg bmFwaXNhbChhKToKPiBPbiAwNy0wMy0xOSwgMTc6NTgsIEplcm5laiBTa3JhYmVjIHdyb3RlOgo+ ID4gSDYgRE1BIGhhcyBtb3JlIHRoYW4gMzIgc3VwcG9ydGVkIERSUXMsIHdoaWNoIG1lYW5zIHRo YXQgY29uZmlndXJhdGlvbgo+ID4gcmVnaXN0ZXIgaXMgc2xpZ2h0bHkgcmVhcnJhbmdlZC4gSXQg YWxzbyBuZWVkcyBhZGRpdGlvbmFsIGNsb2NrIHRvIGJlCj4gPiBlbmFibGVkLgo+IAo+IE9rYXkg aG93IG1hbnkgcmVnaXN0ZXIgYXJlIHJlYXJyYWdlZCBpbiB0aGUgbmV3IElQIGJsb2NrLiBJZiB0 aGVyZSBhcmUKPiBsYXJnZSBjaGFuZ2VzLCBjb25zaWRlciB1c2luZyByZWdtYXBfZmllbGRzIHRv IGFic3RyYWN0IHRoZSByZWdpc3RlciBhbmQKPiBiaXQgZGlmZmVyZW5jZXMuLgoKT25seSBvbmUs IGNvbmZpZyByZWdpc3Rlci4gUmVnbWFwIHVuZm9ydHVuYXRlbHkgaXMgbm90IGFuIG9wdGlvbiBo ZXJlLCBiZWNhdXNlIApob3cgRE1BIHBlcmlwaGVyYWwgd29ya3MuIFJlZ2lzdGVyIHZhbHVlcyBh cmUgYWN0dWFsbHkgc3RvcmVkIGluIGxpbmtlZCBsaXN0IApzb21ld2hlcmUgaW4gUkFNIGFuZCB3 aGVuIGN1cnJlbnQgRE1BIHJlcXVlc3QgaXMgZmluaXNoZWQsIERNQSBwZXJpcGhlcmFsIGF1dG8g CmxvYWRzIG5leHQgc2V0IG9mIHJlZ2lzdGVycyBmcm9tIG1lbW9yeS4KCj4gCj4gPiBBZGQgc3Vw cG9ydCBmb3IgaXQuCj4gPiAKPiA+IFNpZ25lZC1vZmYtYnk6IEplcm5laiBTa3JhYmVjIDxqZXJu ZWouc2tyYWJlY0BzaW9sLm5ldD4KPiA+IC0tLQo+ID4gCj4gPiAgZHJpdmVycy9kbWEvc3VuNmkt ZG1hLmMgfCA0NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLQo+ID4g IDEgZmlsZSBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQo+ID4gCj4g PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9kbWEvc3VuNmktZG1hLmMgYi9kcml2ZXJzL2RtYS9zdW42 aS1kbWEuYwo+ID4gaW5kZXggNmEzN2Y4YmIzOWIxLi5lY2VlZGQxMzk2NTEgMTAwNjQ0Cj4gPiAt LS0gYS9kcml2ZXJzL2RtYS9zdW42aS1kbWEuYwo+ID4gKysrIGIvZHJpdmVycy9kbWEvc3VuNmkt ZG1hLmMKPiA+IEBAIC02OSwxNCArNjksMTkgQEAKPiA+IAo+ID4gICNkZWZpbmUgRE1BX0NIQU5f Q1VSX0NGRwkweDBjCj4gPiAgI2RlZmluZSBETUFfQ0hBTl9NQVhfRFJRX0EzMQkJMHgxZgo+ID4g Cj4gPiArI2RlZmluZSBETUFfQ0hBTl9NQVhfRFJRX0g2CQkweDNmCj4gPiAKPiA+ICAjZGVmaW5l IERNQV9DSEFOX0NGR19TUkNfRFJRX0EzMSh4KQkoKHgpICYgRE1BX0NIQU5fTUFYX0RSUV9BMzEp Cj4gPiAKPiA+ICsjZGVmaW5lIERNQV9DSEFOX0NGR19TUkNfRFJRX0g2KHgpCSgoeCkgJiBETUFf Q0hBTl9NQVhfRFJRX0g2KQo+ID4gCj4gPiAgI2RlZmluZSBETUFfQ0hBTl9DRkdfU1JDX01PREVf QTMxKHgpCSgoKHgpICYgMHgxKSA8PCA1KQo+ID4gCj4gPiArI2RlZmluZSBETUFfQ0hBTl9DRkdf U1JDX01PREVfSDYoeCkJKCgoeCkgJiAweDEpIDw8IDgpCj4gPiAKPiA+ICAjZGVmaW5lIERNQV9D SEFOX0NGR19TUkNfQlVSU1RfQTMxKHgpCSgoKHgpICYgMHgzKSA8PCA3KQo+ID4gICNkZWZpbmUg RE1BX0NIQU5fQ0ZHX1NSQ19CVVJTVF9IMyh4KQkoKCh4KSAmIDB4MykgPDwgNikKPiA+ICAjZGVm aW5lIERNQV9DSEFOX0NGR19TUkNfV0lEVEgoeCkJKCgoeCkgJiAweDMpIDw8IDkpCj4gPiAgCj4g PiAgI2RlZmluZSBETUFfQ0hBTl9DRkdfRFNUX0RSUV9BMzEoeCkJKERNQV9DSEFOX0NGR19TUkNf RFJRX0EzMSh4KSA8PCAKMTYpCj4gPiAKPiA+ICsjZGVmaW5lIERNQV9DSEFOX0NGR19EU1RfRFJR X0g2KHgpCShETUFfQ0hBTl9DRkdfU1JDX0RSUV9INih4KSA8PCAxNikKPiA+IAo+ID4gICNkZWZp bmUgRE1BX0NIQU5fQ0ZHX0RTVF9NT0RFX0EzMSh4KQkoRE1BX0NIQU5fQ0ZHX1NSQ19NT0RFX0Ez MSh4KSA8PCAKMTYpCj4gPiAKPiA+ICsjZGVmaW5lIERNQV9DSEFOX0NGR19EU1RfTU9ERV9INih4 KQkoRE1BX0NIQU5fQ0ZHX1NSQ19NT0RFX0g2KHgpIDw8IDE2KQo+ID4gCj4gPiAgI2RlZmluZSBE TUFfQ0hBTl9DRkdfRFNUX0JVUlNUX0EzMSh4KQkoRE1BX0NIQU5fQ0ZHX1NSQ19CVVJTVF9BMzEo eCkgPDwKPiA+ICAxNikKPiA+ICAjZGVmaW5lIERNQV9DSEFOX0NGR19EU1RfQlVSU1RfSDMoeCkJ KERNQV9DSEFOX0NGR19TUkNfQlVSU1RfSDMoeCkgPDwgCjE2KQo+ID4gICNkZWZpbmUgRE1BX0NI QU5fQ0ZHX0RTVF9XSURUSCh4KQkoRE1BX0NIQU5fQ0ZHX1NSQ19XSURUSCh4KSA8PCAxNikKPiA+ IAo+ID4gQEAgLTMxOSwxMiArMzI0LDI0IEBAIHN0YXRpYyB2b2lkIHN1bjZpX3NldF9kcnFfYTMx KHUzMiAqcF9jZmcsIHM4Cj4gPiBzcmNfZHJxLCBzOCBkc3RfZHJxKT4gCj4gPiAgCQkgIERNQV9D SEFOX0NGR19EU1RfRFJRX0EzMShkc3RfZHJxKTsKPiA+ICAKPiA+ICB9Cj4gPiAKPiA+ICtzdGF0 aWMgdm9pZCBzdW42aV9zZXRfZHJxX2g2KHUzMiAqcF9jZmcsIHM4IHNyY19kcnEsIHM4IGRzdF9k cnEpCj4gPiArewo+ID4gKwkqcF9jZmcgfD0gRE1BX0NIQU5fQ0ZHX1NSQ19EUlFfSDYoc3JjX2Ry cSkgfAo+ID4gKwkJICBETUFfQ0hBTl9DRkdfRFNUX0RSUV9INihkc3RfZHJxKTsKPiA+ICt9Cj4g PiArCj4gPiAKPiA+ICBzdGF0aWMgdm9pZCBzdW42aV9zZXRfbW9kZV9hMzEodTMyICpwX2NmZywg czggc3JjX21vZGUsIHM4IGRzdF9tb2RlKQo+ID4gIHsKPiA+ICAKPiA+ICAJKnBfY2ZnIHw9IERN QV9DSEFOX0NGR19TUkNfTU9ERV9BMzEoc3JjX21vZGUpIHwKPiA+ICAJCj4gPiAgCQkgIERNQV9D SEFOX0NGR19EU1RfTU9ERV9BMzEoZHN0X21vZGUpOwo+ID4gIAo+ID4gIH0KPiA+IAo+ID4gK3N0 YXRpYyB2b2lkIHN1bjZpX3NldF9tb2RlX2g2KHUzMiAqcF9jZmcsIHM4IHNyY19tb2RlLCBzOCBk c3RfbW9kZSkKPiA+ICt7Cj4gPiArCSpwX2NmZyB8PSBETUFfQ0hBTl9DRkdfU1JDX01PREVfSDYo c3JjX21vZGUpIHwKPiA+ICsJCSAgRE1BX0NIQU5fQ0ZHX0RTVF9NT0RFX0g2KGRzdF9tb2RlKTsK PiA+ICt9Cj4gPiArCj4gPiAKPiA+ICBzdGF0aWMgc2l6ZV90IHN1bjZpX2dldF9jaGFuX3NpemUo c3RydWN0IHN1bjZpX3BjaGFuICpwY2hhbikKPiA+ICB7Cj4gPiAgCj4gPiAgCXN0cnVjdCBzdW42 aV9kZXNjICp0eGQgPSBwY2hhbi0+ZGVzYzsKPiA+IAo+ID4gQEAgLTExNjAsNiArMTE3NywyOCBA QCBzdGF0aWMgc3RydWN0IHN1bjZpX2RtYV9jb25maWcgc3VuNTBpX2E2NF9kbWFfY2ZnID0KPiA+ IHs+IAo+ID4gIAkJCSAgICAgQklUKERNQV9TTEFWRV9CVVNXSURUSF84X0JZVEVTKSwKPiA+ICAK PiA+ICB9Owo+ID4gCj4gPiArLyoKPiA+ICsgKiBUaGUgSDYgYmluZGluZyB1c2VzIHRoZSBudW1i ZXIgb2YgZG1hIGNoYW5uZWxzIGZyb20gdGhlCj4gPiArICogZGV2aWNlIHRyZWUgbm9kZS4KPiA+ ICsgKi8KPiA+ICtzdGF0aWMgc3RydWN0IHN1bjZpX2RtYV9jb25maWcgc3VuNTBpX2g2X2RtYV9j ZmcgPSB7Cj4gPiArCS5jbG9ja19hdXRvZ2F0ZV9lbmFibGUgPSBzdW42aV9lbmFibGVfY2xvY2tf YXV0b2dhdGVfaDMsCj4gPiArCS5zZXRfYnVyc3RfbGVuZ3RoID0gc3VuNmlfc2V0X2J1cnN0X2xl bmd0aF9oMywKPiA+ICsJLnNldF9kcnEgICAgICAgICAgPSBzdW42aV9zZXRfZHJxX2g2LAo+ID4g Kwkuc2V0X21vZGUgICAgICAgICA9IHN1bjZpX3NldF9tb2RlX2g2LAo+ID4gKwkuc3JjX2J1cnN0 X2xlbmd0aHMgPSBCSVQoMSkgfCBCSVQoNCkgfCBCSVQoOCkgfCBCSVQoMTYpLAo+ID4gKwkuZHN0 X2J1cnN0X2xlbmd0aHMgPSBCSVQoMSkgfCBCSVQoNCkgfCBCSVQoOCkgfCBCSVQoMTYpLAo+ID4g Kwkuc3JjX2FkZHJfd2lkdGhzICAgPSBCSVQoRE1BX1NMQVZFX0JVU1dJRFRIXzFfQllURSkgfAo+ ID4gKwkJCSAgICAgQklUKERNQV9TTEFWRV9CVVNXSURUSF8yX0JZVEVTKSB8Cj4gPiArCQkJICAg ICBCSVQoRE1BX1NMQVZFX0JVU1dJRFRIXzRfQllURVMpIHwKPiA+ICsJCQkgICAgIEJJVChETUFf U0xBVkVfQlVTV0lEVEhfOF9CWVRFUyksCj4gPiArCS5kc3RfYWRkcl93aWR0aHMgICA9IEJJVChE TUFfU0xBVkVfQlVTV0lEVEhfMV9CWVRFKSB8Cj4gPiArCQkJICAgICBCSVQoRE1BX1NMQVZFX0JV U1dJRFRIXzJfQllURVMpIHwKPiA+ICsJCQkgICAgIEJJVChETUFfU0xBVkVfQlVTV0lEVEhfNF9C WVRFUykgfAo+ID4gKwkJCSAgICAgQklUKERNQV9TTEFWRV9CVVNXSURUSF84X0JZVEVTKSwKPiA+ ICsJLm1idXNfY2xrID0gdHJ1ZSwKPiA+ICt9Owo+ID4gKwo+ID4gCj4gPiAgLyoKPiA+ICAKPiA+ ICAgKiBUaGUgVjNzIGhhdmUgb25seSA4IHBoeXNpY2FsIGNoYW5uZWxzLCBhIG1heGltdW0gRFJR IHBvcnQgaWQgb2YgMjMsCj4gPiAgICogYW5kIGEgdG90YWwgb2YgMjQgdXNhYmxlIHNvdXJjZSBh bmQgZGVzdGluYXRpb24gZW5kcG9pbnRzLgo+ID4gCj4gPiBAQCAtMTE5MCw2ICsxMjI5LDcgQEAg c3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgc3VuNmlfZG1hX21hdGNoW10gPQo+ID4g ez4gCj4gPiAgCXsgLmNvbXBhdGlibGUgPSAiYWxsd2lubmVyLHN1bjhpLWgzLWRtYSIsIC5kYXRh ID0gCiZzdW44aV9oM19kbWFfY2ZnIH0sCj4gPiAgCXsgLmNvbXBhdGlibGUgPSAiYWxsd2lubmVy LHN1bjhpLXYzcy1kbWEiLCAuZGF0YSA9IAomc3VuOGlfdjNzX2RtYV9jZmcgfSwKPiA+ICAJeyAu Y29tcGF0aWJsZSA9ICJhbGx3aW5uZXIsc3VuNTBpLWE2NC1kbWEiLCAuZGF0YSA9IAomc3VuNTBp X2E2NF9kbWFfY2ZnCj4gPiAgCX0sCj4gPiAKPiA+ICsJeyAuY29tcGF0aWJsZSA9ICJhbGx3aW5u ZXIsc3VuNTBpLWg2LWRtYSIsIC5kYXRhID0gCiZzdW41MGlfaDZfZG1hX2NmZyB9LAo+ID4gCj4g PiAgCXsgLyogc2VudGluZWwgKi8gfQo+ID4gIAo+ID4gIH07Cj4gPiAgTU9EVUxFX0RFVklDRV9U QUJMRShvZiwgc3VuNmlfZG1hX21hdGNoKTsKPiA+IAo+ID4gQEAgLTEyODgsOCArMTMyOCw4IEBA IHN0YXRpYyBpbnQgc3VuNmlfZG1hX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UKPiA+ICpw ZGV2KT4gCj4gPiAgCXJldCA9IG9mX3Byb3BlcnR5X3JlYWRfdTMyKG5wLCAiZG1hLXJlcXVlc3Rz IiwgJnNkYy0+bWF4X3JlcXVlc3QpOwo+ID4gIAlpZiAocmV0ICYmICFzZGMtPm1heF9yZXF1ZXN0 KSB7Cj4gPiAgCQo+ID4gIAkJZGV2X2luZm8oJnBkZXYtPmRldiwgIk1pc3NpbmcgZG1hLXJlcXVl c3RzLCB1c2luZyAldS4KXG4iLAo+ID4gCj4gPiAtCQkJIERNQV9DSEFOX01BWF9EUlFfQTMxKTsK PiA+IC0JCXNkYy0+bWF4X3JlcXVlc3QgPSBETUFfQ0hBTl9NQVhfRFJRX0EzMTsKPiA+ICsJCQkg RE1BX0NIQU5fTUFYX0RSUV9INik7Cj4gPiArCQlzZGMtPm1heF9yZXF1ZXN0ID0gRE1BX0NIQU5f TUFYX0RSUV9INjsKPiA+IAo+ID4gIAl9Cj4gPiAgCQo+ID4gIAkvKgo=