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: Vinod Koul Message-Id: <20190316111324.GI5348@vkoul-mobl> Date: Sat, 16 Mar 2019 16:43:24 +0530 To: Jernej Skrabec 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: T24gMDctMDMtMTksIDE3OjU4LCBKZXJuZWogU2tyYWJlYyB3cm90ZToKPiBINiBETUEgaGFzIG1v cmUgdGhhbiAzMiBzdXBwb3J0ZWQgRFJRcywgd2hpY2ggbWVhbnMgdGhhdCBjb25maWd1cmF0aW9u Cj4gcmVnaXN0ZXIgaXMgc2xpZ2h0bHkgcmVhcnJhbmdlZC4gSXQgYWxzbyBuZWVkcyBhZGRpdGlv bmFsIGNsb2NrIHRvIGJlCj4gZW5hYmxlZC4KCk9rYXkgaG93IG1hbnkgcmVnaXN0ZXIgYXJlIHJl YXJyYWdlZCBpbiB0aGUgbmV3IElQIGJsb2NrLiBJZiB0aGVyZSBhcmUKbGFyZ2UgY2hhbmdlcywg Y29uc2lkZXIgdXNpbmcgcmVnbWFwX2ZpZWxkcyB0byBhYnN0cmFjdCB0aGUgcmVnaXN0ZXIgYW5k CmJpdCBkaWZmZXJlbmNlcy4uCgo+IAo+IEFkZCBzdXBwb3J0IGZvciBpdC4KPiAKPiBTaWduZWQt b2ZmLWJ5OiBKZXJuZWogU2tyYWJlYyA8amVybmVqLnNrcmFiZWNAc2lvbC5uZXQ+Cj4gLS0tCj4g IGRyaXZlcnMvZG1hL3N1bjZpLWRtYS5jIHwgNDQgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0KPiAgMSBmaWxlIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZG1hL3N1bjZpLWRtYS5jIGIvZHJp dmVycy9kbWEvc3VuNmktZG1hLmMKPiBpbmRleCA2YTM3ZjhiYjM5YjEuLmVjZWVkZDEzOTY1MSAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2RtYS9zdW42aS1kbWEuYwo+ICsrKyBiL2RyaXZlcnMvZG1h L3N1bjZpLWRtYS5jCj4gQEAgLTY5LDE0ICs2OSwxOSBAQAo+ICAKPiAgI2RlZmluZSBETUFfQ0hB Tl9DVVJfQ0ZHCTB4MGMKPiAgI2RlZmluZSBETUFfQ0hBTl9NQVhfRFJRX0EzMQkJMHgxZgo+ICsj ZGVmaW5lIERNQV9DSEFOX01BWF9EUlFfSDYJCTB4M2YKPiAgI2RlZmluZSBETUFfQ0hBTl9DRkdf U1JDX0RSUV9BMzEoeCkJKCh4KSAmIERNQV9DSEFOX01BWF9EUlFfQTMxKQo+ICsjZGVmaW5lIERN QV9DSEFOX0NGR19TUkNfRFJRX0g2KHgpCSgoeCkgJiBETUFfQ0hBTl9NQVhfRFJRX0g2KQo+ICAj ZGVmaW5lIERNQV9DSEFOX0NGR19TUkNfTU9ERV9BMzEoeCkJKCgoeCkgJiAweDEpIDw8IDUpCj4g KyNkZWZpbmUgRE1BX0NIQU5fQ0ZHX1NSQ19NT0RFX0g2KHgpCSgoKHgpICYgMHgxKSA8PCA4KQo+ ICAjZGVmaW5lIERNQV9DSEFOX0NGR19TUkNfQlVSU1RfQTMxKHgpCSgoKHgpICYgMHgzKSA8PCA3 KQo+ICAjZGVmaW5lIERNQV9DSEFOX0NGR19TUkNfQlVSU1RfSDMoeCkJKCgoeCkgJiAweDMpIDw8 IDYpCj4gICNkZWZpbmUgRE1BX0NIQU5fQ0ZHX1NSQ19XSURUSCh4KQkoKCh4KSAmIDB4MykgPDwg OSkKPiAgCj4gICNkZWZpbmUgRE1BX0NIQU5fQ0ZHX0RTVF9EUlFfQTMxKHgpCShETUFfQ0hBTl9D RkdfU1JDX0RSUV9BMzEoeCkgPDwgMTYpCj4gKyNkZWZpbmUgRE1BX0NIQU5fQ0ZHX0RTVF9EUlFf SDYoeCkJKERNQV9DSEFOX0NGR19TUkNfRFJRX0g2KHgpIDw8IDE2KQo+ICAjZGVmaW5lIERNQV9D SEFOX0NGR19EU1RfTU9ERV9BMzEoeCkJKERNQV9DSEFOX0NGR19TUkNfTU9ERV9BMzEoeCkgPDwg MTYpCj4gKyNkZWZpbmUgRE1BX0NIQU5fQ0ZHX0RTVF9NT0RFX0g2KHgpCShETUFfQ0hBTl9DRkdf U1JDX01PREVfSDYoeCkgPDwgMTYpCj4gICNkZWZpbmUgRE1BX0NIQU5fQ0ZHX0RTVF9CVVJTVF9B MzEoeCkJKERNQV9DSEFOX0NGR19TUkNfQlVSU1RfQTMxKHgpIDw8IDE2KQo+ICAjZGVmaW5lIERN QV9DSEFOX0NGR19EU1RfQlVSU1RfSDMoeCkJKERNQV9DSEFOX0NGR19TUkNfQlVSU1RfSDMoeCkg PDwgMTYpCj4gICNkZWZpbmUgRE1BX0NIQU5fQ0ZHX0RTVF9XSURUSCh4KQkoRE1BX0NIQU5fQ0ZH X1NSQ19XSURUSCh4KSA8PCAxNikKPiBAQCAtMzE5LDEyICszMjQsMjQgQEAgc3RhdGljIHZvaWQg c3VuNmlfc2V0X2RycV9hMzEodTMyICpwX2NmZywgczggc3JjX2RycSwgczggZHN0X2RycSkKPiAg CQkgIERNQV9DSEFOX0NGR19EU1RfRFJRX0EzMShkc3RfZHJxKTsKPiAgfQo+ICAKPiArc3RhdGlj IHZvaWQgc3VuNmlfc2V0X2RycV9oNih1MzIgKnBfY2ZnLCBzOCBzcmNfZHJxLCBzOCBkc3RfZHJx KQo+ICt7Cj4gKwkqcF9jZmcgfD0gRE1BX0NIQU5fQ0ZHX1NSQ19EUlFfSDYoc3JjX2RycSkgfAo+ ICsJCSAgRE1BX0NIQU5fQ0ZHX0RTVF9EUlFfSDYoZHN0X2RycSk7Cj4gK30KPiArCj4gIHN0YXRp YyB2b2lkIHN1bjZpX3NldF9tb2RlX2EzMSh1MzIgKnBfY2ZnLCBzOCBzcmNfbW9kZSwgczggZHN0 X21vZGUpCj4gIHsKPiAgCSpwX2NmZyB8PSBETUFfQ0hBTl9DRkdfU1JDX01PREVfQTMxKHNyY19t b2RlKSB8Cj4gIAkJICBETUFfQ0hBTl9DRkdfRFNUX01PREVfQTMxKGRzdF9tb2RlKTsKPiAgfQo+ ICAKPiArc3RhdGljIHZvaWQgc3VuNmlfc2V0X21vZGVfaDYodTMyICpwX2NmZywgczggc3JjX21v ZGUsIHM4IGRzdF9tb2RlKQo+ICt7Cj4gKwkqcF9jZmcgfD0gRE1BX0NIQU5fQ0ZHX1NSQ19NT0RF X0g2KHNyY19tb2RlKSB8Cj4gKwkJICBETUFfQ0hBTl9DRkdfRFNUX01PREVfSDYoZHN0X21vZGUp Owo+ICt9Cj4gKwo+ICBzdGF0aWMgc2l6ZV90IHN1bjZpX2dldF9jaGFuX3NpemUoc3RydWN0IHN1 bjZpX3BjaGFuICpwY2hhbikKPiAgewo+ICAJc3RydWN0IHN1bjZpX2Rlc2MgKnR4ZCA9IHBjaGFu LT5kZXNjOwo+IEBAIC0xMTYwLDYgKzExNzcsMjggQEAgc3RhdGljIHN0cnVjdCBzdW42aV9kbWFf Y29uZmlnIHN1bjUwaV9hNjRfZG1hX2NmZyA9IHsKPiAgCQkJICAgICBCSVQoRE1BX1NMQVZFX0JV U1dJRFRIXzhfQllURVMpLAo+ICB9Owo+ICAKPiArLyoKPiArICogVGhlIEg2IGJpbmRpbmcgdXNl cyB0aGUgbnVtYmVyIG9mIGRtYSBjaGFubmVscyBmcm9tIHRoZQo+ICsgKiBkZXZpY2UgdHJlZSBu b2RlLgo+ICsgKi8KPiArc3RhdGljIHN0cnVjdCBzdW42aV9kbWFfY29uZmlnIHN1bjUwaV9oNl9k bWFfY2ZnID0gewo+ICsJLmNsb2NrX2F1dG9nYXRlX2VuYWJsZSA9IHN1bjZpX2VuYWJsZV9jbG9j a19hdXRvZ2F0ZV9oMywKPiArCS5zZXRfYnVyc3RfbGVuZ3RoID0gc3VuNmlfc2V0X2J1cnN0X2xl bmd0aF9oMywKPiArCS5zZXRfZHJxICAgICAgICAgID0gc3VuNmlfc2V0X2RycV9oNiwKPiArCS5z ZXRfbW9kZSAgICAgICAgID0gc3VuNmlfc2V0X21vZGVfaDYsCj4gKwkuc3JjX2J1cnN0X2xlbmd0 aHMgPSBCSVQoMSkgfCBCSVQoNCkgfCBCSVQoOCkgfCBCSVQoMTYpLAo+ICsJLmRzdF9idXJzdF9s ZW5ndGhzID0gQklUKDEpIHwgQklUKDQpIHwgQklUKDgpIHwgQklUKDE2KSwKPiArCS5zcmNfYWRk cl93aWR0aHMgICA9IEJJVChETUFfU0xBVkVfQlVTV0lEVEhfMV9CWVRFKSB8Cj4gKwkJCSAgICAg QklUKERNQV9TTEFWRV9CVVNXSURUSF8yX0JZVEVTKSB8Cj4gKwkJCSAgICAgQklUKERNQV9TTEFW RV9CVVNXSURUSF80X0JZVEVTKSB8Cj4gKwkJCSAgICAgQklUKERNQV9TTEFWRV9CVVNXSURUSF84 X0JZVEVTKSwKPiArCS5kc3RfYWRkcl93aWR0aHMgICA9IEJJVChETUFfU0xBVkVfQlVTV0lEVEhf MV9CWVRFKSB8Cj4gKwkJCSAgICAgQklUKERNQV9TTEFWRV9CVVNXSURUSF8yX0JZVEVTKSB8Cj4g KwkJCSAgICAgQklUKERNQV9TTEFWRV9CVVNXSURUSF80X0JZVEVTKSB8Cj4gKwkJCSAgICAgQklU KERNQV9TTEFWRV9CVVNXSURUSF84X0JZVEVTKSwKPiArCS5tYnVzX2NsayA9IHRydWUsCj4gK307 Cj4gKwo+ICAvKgo+ICAgKiBUaGUgVjNzIGhhdmUgb25seSA4IHBoeXNpY2FsIGNoYW5uZWxzLCBh IG1heGltdW0gRFJRIHBvcnQgaWQgb2YgMjMsCj4gICAqIGFuZCBhIHRvdGFsIG9mIDI0IHVzYWJs ZSBzb3VyY2UgYW5kIGRlc3RpbmF0aW9uIGVuZHBvaW50cy4KPiBAQCAtMTE5MCw2ICsxMjI5LDcg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBvZl9kZXZpY2VfaWQgc3VuNmlfZG1hX21hdGNoW10gPSB7 Cj4gIAl7IC5jb21wYXRpYmxlID0gImFsbHdpbm5lcixzdW44aS1oMy1kbWEiLCAuZGF0YSA9ICZz dW44aV9oM19kbWFfY2ZnIH0sCj4gIAl7IC5jb21wYXRpYmxlID0gImFsbHdpbm5lcixzdW44aS12 M3MtZG1hIiwgLmRhdGEgPSAmc3VuOGlfdjNzX2RtYV9jZmcgfSwKPiAgCXsgLmNvbXBhdGlibGUg PSAiYWxsd2lubmVyLHN1bjUwaS1hNjQtZG1hIiwgLmRhdGEgPSAmc3VuNTBpX2E2NF9kbWFfY2Zn IH0sCj4gKwl7IC5jb21wYXRpYmxlID0gImFsbHdpbm5lcixzdW41MGktaDYtZG1hIiwgLmRhdGEg PSAmc3VuNTBpX2g2X2RtYV9jZmcgfSwKPiAgCXsgLyogc2VudGluZWwgKi8gfQo+ICB9Owo+ICBN T0RVTEVfREVWSUNFX1RBQkxFKG9mLCBzdW42aV9kbWFfbWF0Y2gpOwo+IEBAIC0xMjg4LDggKzEz MjgsOCBAQCBzdGF0aWMgaW50IHN1bjZpX2RtYV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNl ICpwZGV2KQo+ICAJcmV0ID0gb2ZfcHJvcGVydHlfcmVhZF91MzIobnAsICJkbWEtcmVxdWVzdHMi LCAmc2RjLT5tYXhfcmVxdWVzdCk7Cj4gIAlpZiAocmV0ICYmICFzZGMtPm1heF9yZXF1ZXN0KSB7 Cj4gIAkJZGV2X2luZm8oJnBkZXYtPmRldiwgIk1pc3NpbmcgZG1hLXJlcXVlc3RzLCB1c2luZyAl dS5cbiIsCj4gLQkJCSBETUFfQ0hBTl9NQVhfRFJRX0EzMSk7Cj4gLQkJc2RjLT5tYXhfcmVxdWVz dCA9IERNQV9DSEFOX01BWF9EUlFfQTMxOwo+ICsJCQkgRE1BX0NIQU5fTUFYX0RSUV9INik7Cj4g KwkJc2RjLT5tYXhfcmVxdWVzdCA9IERNQV9DSEFOX01BWF9EUlFfSDY7Cj4gIAl9Cj4gIAo+ICAJ LyoKPiAtLSAKPiAyLjIxLjAK