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: [v4,07/18] dmaengine: dma-jz4780: Add support for the JZ4770 SoC From: Paul Cercueil Message-Id: <20180807114218.20091-8-paul@crapouillou.net> Date: Tue, 7 Aug 2018 13:42:07 +0200 To: Vinod Koul , Rob Herring , Mark Rutland , Ralf Baechle , Paul Burton , James Hogan , Zubair Lutfullah Kakakhel Cc: Paul Cercueil , dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mips@linux-mips.org List-ID: VGhlIEpaNDc3MCBTb0MgaGFzIHR3byBETUEgY29yZXMsIGVhY2ggb25lIGZlYXR1cmluZyBzaXgg RE1BIGNoYW5uZWxzLgpUaGUgbWFqb3IgY2hhbmdlIGlzIHRoYXQgZWFjaCBjaGFubmVsJ3MgY2xv Y2sgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQKdGhyb3VnaCByZWdpc3RlciB3cml0ZXMuCgpT aWduZWQtb2ZmLWJ5OiBQYXVsIENlcmN1ZWlsIDxwYXVsQGNyYXBvdWlsbG91Lm5ldD4KVGVzdGVk LWJ5OiBNYXRoaWV1IE1hbGF0ZXJyZSA8bWFsYXRAZGViaWFuLm9yZz4KLS0tCiBkcml2ZXJzL2Rt YS9kbWEtano0NzgwLmMgfCA2MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9u cygtKQoKIHYyOiAtIE1vdmUgdHJhbnNmZXJfb3JkX21heCB2YXJpYWJsZSB0byB0aGUgbmV3IGp6 NDc4MF9kbWFfc29jX2RhdGEKICAgICAgIHN0cnVjdHVyZQogICAgIC0gVGhlIGRvY3VtZW50YXRp b24gdXBkYXRlIGlzIG5vdyBpbiBwYXRjaCAwMS8xNwoKIHYzOiBUaGUgS2NvbmZpZyB1cGRhdGUg d2FzIGRyb3BwZWQgdGhhbmtzIHRvIHBhdGNoIDA2LzE4CgogdjQ6IFBhc3Mgano0NzgwX2RtYV9z b2NfZGF0YSBzdHJ1Y3R1cmUgcG9pbnRlciBkaXJlY3RseSBhcyBkZXZpY2V0cmVlCiAgICAgbWF0 Y2ggZGF0YTsgQWRkIGEgJ2ZsYWdzJyBmaWVsZCBpbiB0aGF0IHN0cnVjdHVyZSBhbmQgbWFjcm9z IGZvcgogICAgIGl0LCB0byByZXBsYWNlIGNoZWNraW5nIHZzLiB0aGUgU29DIHZlcnNpb24uCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9kbWEvZG1hLWp6NDc4MC5jIGIvZHJpdmVycy9kbWEvZG1hLWp6 NDc4MC5jCmluZGV4IDc2ODNkZTlmYjllZS4uMTg0ZDFhMmJmOWJhIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2RtYS9kbWEtano0NzgwLmMKKysrIGIvZHJpdmVycy9kbWEvZG1hLWp6NDc4MC5jCkBAIC0y OSw2ICsyOSw5IEBACiAjZGVmaW5lIEpaX0RNQV9SRUdfRElSUVAJMHgwNAogI2RlZmluZSBKWl9E TUFfUkVHX0REUgkJMHgwOAogI2RlZmluZSBKWl9ETUFfUkVHX0REUlMJCTB4MGMKKyNkZWZpbmUg SlpfRE1BX1JFR19EQ0tFCQkweDEwCisjZGVmaW5lIEpaX0RNQV9SRUdfRENLRVMJMHgxNAorI2Rl ZmluZSBKWl9ETUFfUkVHX0RDS0VDCTB4MTgKICNkZWZpbmUgSlpfRE1BX1JFR19ETUFDUAkweDFj CiAjZGVmaW5lIEpaX0RNQV9SRUdfRFNJUlFQCTB4MjAKICNkZWZpbmUgSlpfRE1BX1JFR19EU0lS UU0JMHgyNApAQCAtODcsNiArOTAsMTEgQEAKIAogI2RlZmluZSBKWjQ3ODBfRE1BX0NUUkxfT0ZG U0VUCTB4MTAwMAogCisvKiBtYWNyb3MgZm9yIHVzZSB3aXRoIGp6NDc4MF9kbWFfc29jX2RhdGEu ZmxhZ3MgKi8KKyNkZWZpbmUgSlpfU09DX0RBVEFfQUxMT1dfTEVHQUNZX0RUCUJJVCgwKQorI2Rl ZmluZSBKWl9TT0NfREFUQV9QUk9HUkFNTUFCTEVfRE1BCUJJVCgxKQorI2RlZmluZSBKWl9TT0Nf REFUQV9QRVJfQ0hBTl9QTQkJQklUKDIpCisKIC8qKgogICogc3RydWN0IGp6NDc4MF9kbWFfaHdk ZXNjIC0gZGVzY3JpcHRvciBzdHJ1Y3R1cmUgcmVhZCBieSB0aGUgRE1BIGNvbnRyb2xsZXIuCiAg KiBAZGNtOiB2YWx1ZSBmb3IgdGhlIERDTSAoY2hhbm5lbCBjb21tYW5kKSByZWdpc3RlcgpAQCAt MTMzLDYgKzE0MSw4IEBAIHN0cnVjdCBqejQ3ODBfZG1hX2NoYW4gewogCiBzdHJ1Y3Qgano0Nzgw X2RtYV9zb2NfZGF0YSB7CiAJdW5zaWduZWQgaW50IG5iX2NoYW5uZWxzOworCXVuc2lnbmVkIGlu dCB0cmFuc2Zlcl9vcmRfbWF4OworCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CiB9OwogCiBzdHJ1Y3Qg ano0NzgwX2RtYV9kZXYgewpAQCAtMTk1LDYgKzIwNSwyMCBAQCBzdGF0aWMgaW5saW5lIHZvaWQg ano0NzgwX2RtYV9jdHJsX3dyaXRlbChzdHJ1Y3Qgano0NzgwX2RtYV9kZXYgKmp6ZG1hLAogCXdy aXRlbCh2YWwsIGp6ZG1hLT5jdHJsX2Jhc2UgKyByZWcpOwogfQogCitzdGF0aWMgaW5saW5lIHZv aWQgano0NzgwX2RtYV9jaGFuX2VuYWJsZShzdHJ1Y3Qgano0NzgwX2RtYV9kZXYgKmp6ZG1hLAor CXVuc2lnbmVkIGludCBjaG4pCit7CisJaWYgKGp6ZG1hLT5zb2NfZGF0YS0+ZmxhZ3MgJiBKWl9T T0NfREFUQV9QRVJfQ0hBTl9QTSkKKwkJano0NzgwX2RtYV9jdHJsX3dyaXRlbChqemRtYSwgSlpf RE1BX1JFR19EQ0tFUywgQklUKGNobikpOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQgano0Nzgw X2RtYV9jaGFuX2Rpc2FibGUoc3RydWN0IGp6NDc4MF9kbWFfZGV2ICpqemRtYSwKKwl1bnNpZ25l ZCBpbnQgY2huKQoreworCWlmIChqemRtYS0+c29jX2RhdGEtPmZsYWdzICYgSlpfU09DX0RBVEFf UEVSX0NIQU5fUE0pCisJCWp6NDc4MF9kbWFfY3RybF93cml0ZWwoanpkbWEsIEpaX0RNQV9SRUdf RENLRUMsIEJJVChjaG4pKTsKK30KKwogc3RhdGljIHN0cnVjdCBqejQ3ODBfZG1hX2Rlc2MgKmp6 NDc4MF9kbWFfZGVzY19hbGxvYygKIAlzdHJ1Y3Qgano0NzgwX2RtYV9jaGFuICpqemNoYW4sIHVu c2lnbmVkIGludCBjb3VudCwKIAllbnVtIGRtYV90cmFuc2FjdGlvbl90eXBlIHR5cGUpCkBAIC0y MjksOCArMjUzLDEwIEBAIHN0YXRpYyB2b2lkIGp6NDc4MF9kbWFfZGVzY19mcmVlKHN0cnVjdCB2 aXJ0X2RtYV9kZXNjICp2ZGVzYykKIAlrZnJlZShkZXNjKTsKIH0KIAotc3RhdGljIHVpbnQzMl90 IGp6NDc4MF9kbWFfdHJhbnNmZXJfc2l6ZSh1bnNpZ25lZCBsb25nIHZhbCwgdWludDMyX3QgKnNo aWZ0KQorc3RhdGljIHVpbnQzMl90IGp6NDc4MF9kbWFfdHJhbnNmZXJfc2l6ZShzdHJ1Y3Qgano0 NzgwX2RtYV9jaGFuICpqemNoYW4sCisJdW5zaWduZWQgbG9uZyB2YWwsIHVpbnQzMl90ICpzaGlm dCkKIHsKKwlzdHJ1Y3Qgano0NzgwX2RtYV9kZXYgKmp6ZG1hID0gano0NzgwX2RtYV9jaGFuX3Bh cmVudChqemNoYW4pOwogCWludCBvcmQgPSBmZnModmFsKSAtIDE7CiAKIAkvKgpAQCAtMjQyLDgg KzI2OCw4IEBAIHN0YXRpYyB1aW50MzJfdCBqejQ3ODBfZG1hX3RyYW5zZmVyX3NpemUodW5zaWdu ZWQgbG9uZyB2YWwsIHVpbnQzMl90ICpzaGlmdCkKIAkgKi8KIAlpZiAob3JkID09IDMpCiAJCW9y ZCA9IDI7Ci0JZWxzZSBpZiAob3JkID4gNykKLQkJb3JkID0gNzsKKwllbHNlIGlmIChvcmQgPiBq emRtYS0+c29jX2RhdGEtPnRyYW5zZmVyX29yZF9tYXgpCisJCW9yZCA9IGp6ZG1hLT5zb2NfZGF0 YS0+dHJhbnNmZXJfb3JkX21heDsKIAogCSpzaGlmdCA9IG9yZDsKIApAQCAtMjk1LDcgKzMyMSw3 IEBAIHN0YXRpYyBpbnQgano0NzgwX2RtYV9zZXR1cF9od2Rlc2Moc3RydWN0IGp6NDc4MF9kbWFf Y2hhbiAqanpjaGFuLAogCSAqIGRpdmlzaWJsZSBieSB0aGUgdHJhbnNmZXIgc2l6ZSwgYW5kIHdl IG11c3Qgbm90IHVzZSBtb3JlIHRoYW4gdGhlCiAJICogbWF4aW11bSBidXJzdCBzcGVjaWZpZWQg YnkgdGhlIHVzZXIuCiAJICovCi0JdHN6ID0gano0NzgwX2RtYV90cmFuc2Zlcl9zaXplKGFkZHIg fCBsZW4gfCAod2lkdGggKiBtYXhidXJzdCksCisJdHN6ID0gano0NzgwX2RtYV90cmFuc2Zlcl9z aXplKGp6Y2hhbiwgYWRkciB8IGxlbiB8ICh3aWR0aCAqIG1heGJ1cnN0KSwKIAkJCQkgICAgICAg Jmp6Y2hhbi0+dHJhbnNmZXJfc2hpZnQpOwogCiAJc3dpdGNoICh3aWR0aCkgewpAQCAtNDI0LDcg KzQ1MCw3IEBAIHN0YXRpYyBzdHJ1Y3QgZG1hX2FzeW5jX3R4X2Rlc2NyaXB0b3IgKmp6NDc4MF9k bWFfcHJlcF9kbWFfbWVtY3B5KAogCWlmICghZGVzYykKIAkJcmV0dXJuIE5VTEw7CiAKLQl0c3og PSBqejQ3ODBfZG1hX3RyYW5zZmVyX3NpemUoZGVzdCB8IHNyYyB8IGxlbiwKKwl0c3ogPSBqejQ3 ODBfZG1hX3RyYW5zZmVyX3NpemUoanpjaGFuLCBkZXN0IHwgc3JjIHwgbGVuLAogCQkJCSAgICAg ICAmanpjaGFuLT50cmFuc2Zlcl9zaGlmdCk7CiAKIAlqemNoYW4tPnRyYW5zZmVyX3R5cGUgPSBK Wl9ETUFfRFJUX0FVVE87CkBAIC00ODUsNiArNTExLDkgQEAgc3RhdGljIHZvaWQgano0NzgwX2Rt YV9iZWdpbihzdHJ1Y3Qgano0NzgwX2RtYV9jaGFuICpqemNoYW4pCiAJCQkoanpjaGFuLT5jdXJy X2h3ZGVzYyArIDEpICUganpjaGFuLT5kZXNjLT5jb3VudDsKIAl9CiAKKwkvKiBFbmFibGUgdGhl IGNoYW5uZWwncyBjbG9jay4gKi8KKwlqejQ3ODBfZG1hX2NoYW5fZW5hYmxlKGp6ZG1hLCBqemNo YW4tPmlkKTsKKwogCS8qIFVzZSA0LXdvcmQgZGVzY3JpcHRvcnMuICovCiAJano0NzgwX2RtYV9j aG5fd3JpdGVsKGp6ZG1hLCBqemNoYW4tPmlkLCBKWl9ETUFfUkVHX0RDUywgMCk7CiAKQEAgLTUz Miw2ICs1NjEsOCBAQCBzdGF0aWMgaW50IGp6NDc4MF9kbWFfdGVybWluYXRlX2FsbChzdHJ1Y3Qg ZG1hX2NoYW4gKmNoYW4pCiAJCWp6Y2hhbi0+ZGVzYyA9IE5VTEw7CiAJfQogCisJano0NzgwX2Rt YV9jaGFuX2Rpc2FibGUoanpkbWEsIGp6Y2hhbi0+aWQpOworCiAJdmNoYW5fZ2V0X2FsbF9kZXNj cmlwdG9ycygmanpjaGFuLT52Y2hhbiwgJmhlYWQpOwogCiAJc3Bpbl91bmxvY2tfaXJxcmVzdG9y ZSgmanpjaGFuLT52Y2hhbi5sb2NrLCBmbGFncyk7CkBAIC01NDMsOCArNTc0LDEwIEBAIHN0YXRp YyBpbnQgano0NzgwX2RtYV90ZXJtaW5hdGVfYWxsKHN0cnVjdCBkbWFfY2hhbiAqY2hhbikKIHN0 YXRpYyB2b2lkIGp6NDc4MF9kbWFfc3luY2hyb25pemUoc3RydWN0IGRtYV9jaGFuICpjaGFuKQog ewogCXN0cnVjdCBqejQ3ODBfZG1hX2NoYW4gKmp6Y2hhbiA9IHRvX2p6NDc4MF9kbWFfY2hhbihj aGFuKTsKKwlzdHJ1Y3Qgano0NzgwX2RtYV9kZXYgKmp6ZG1hID0gano0NzgwX2RtYV9jaGFuX3Bh cmVudChqemNoYW4pOwogCiAJdmNoYW5fc3luY2hyb25pemUoJmp6Y2hhbi0+dmNoYW4pOworCWp6 NDc4MF9kbWFfY2hhbl9kaXNhYmxlKGp6ZG1hLCBqemNoYW4tPmlkKTsKIH0KIAogc3RhdGljIGlu dCBqejQ3ODBfZG1hX2NvbmZpZyhzdHJ1Y3QgZG1hX2NoYW4gKmNoYW4sCkBAIC04MTIsMTMgKzg0 NSwxNiBAQCBzdGF0aWMgaW50IGp6NDc4MF9kbWFfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldikKIAkJanpkbWEtPmN0cmxfYmFzZSA9IGRldm1faW9yZW1hcF9yZXNvdXJjZShkZXYs IHJlcyk7CiAJCWlmIChJU19FUlIoanpkbWEtPmN0cmxfYmFzZSkpCiAJCQlyZXR1cm4gUFRSX0VS UihqemRtYS0+Y3RybF9iYXNlKTsKLQl9IGVsc2UgeworCX0gZWxzZSBpZiAoc29jX2RhdGEtPmZs YWdzICYgSlpfU09DX0RBVEFfQUxMT1dfTEVHQUNZX0RUKSB7CiAJCS8qCiAJCSAqIE9uIEpaNDc4 MCwgaWYgdGhlIHNlY29uZCBtZW1vcnkgcmVzb3VyY2Ugd2FzIG5vdCBzdXBwbGllZCwKIAkJICog YXNzdW1lIHdlJ3JlIHVzaW5nIGFuIG9sZCBkZXZpY2V0cmVlLCBhbmQgY2FsY3VsYXRlIHRoZQog CQkgKiBvZmZzZXQgdG8gdGhlIGNvbnRyb2wgcmVnaXN0ZXJzLgogCQkgKi8KIAkJanpkbWEtPmN0 cmxfYmFzZSA9IGp6ZG1hLT5jaG5fYmFzZSArIEpaNDc4MF9ETUFfQ1RSTF9PRkZTRVQ7CisJfSBl bHNlIHsKKwkJZGV2X2VycihkZXYsICJmYWlsZWQgdG8gZ2V0IEkvTyBtZW1vcnlcbiIpOworCQly ZXR1cm4gLUVJTlZBTDsKIAl9CiAKIAlyZXQgPSBwbGF0Zm9ybV9nZXRfaXJxKHBkZXYsIDApOwpA QCAtODc5LDcgKzkxNSw5IEBAIHN0YXRpYyBpbnQgano0NzgwX2RtYV9wcm9iZShzdHJ1Y3QgcGxh dGZvcm1fZGV2aWNlICpwZGV2KQogCSAqLwogCWp6NDc4MF9kbWFfY3RybF93cml0ZWwoanpkbWEs IEpaX0RNQV9SRUdfRE1BQywKIAkJCSAgSlpfRE1BX0RNQUNfRE1BRSB8IEpaX0RNQV9ETUFDX0ZN U0MpOwotCWp6NDc4MF9kbWFfY3RybF93cml0ZWwoanpkbWEsIEpaX0RNQV9SRUdfRE1BQ1AsIDAp OworCisJaWYgKHNvY19kYXRhLT5mbGFncyAmIEpaX1NPQ19EQVRBX1BST0dSQU1NQUJMRV9ETUEp CisJCWp6NDc4MF9kbWFfY3RybF93cml0ZWwoanpkbWEsIEpaX0RNQV9SRUdfRE1BQ1AsIDApOwog CiAJSU5JVF9MSVNUX0hFQUQoJmRkLT5jaGFubmVscyk7CiAKQEAgLTkzNSwxMSArOTczLDIwIEBA IHN0YXRpYyBpbnQgano0NzgwX2RtYV9yZW1vdmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRl dikKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIGNvbnN0IHN0cnVjdCBqejQ3ODBfZG1hX3NvY19k YXRhIGp6NDc3MF9kbWFfc29jX2RhdGEgPSB7CisJLm5iX2NoYW5uZWxzID0gNiwKKwkudHJhbnNm ZXJfb3JkX21heCA9IDYsCisJLmZsYWdzID0gSlpfU09DX0RBVEFfUEVSX0NIQU5fUE0sCit9Owor CiBzdGF0aWMgY29uc3Qgc3RydWN0IGp6NDc4MF9kbWFfc29jX2RhdGEgano0NzgwX2RtYV9zb2Nf ZGF0YSA9IHsKIAkubmJfY2hhbm5lbHMgPSAzMiwKKwkudHJhbnNmZXJfb3JkX21heCA9IDcsCisJ LmZsYWdzID0gSlpfU09DX0RBVEFfQUxMT1dfTEVHQUNZX0RUIHwgSlpfU09DX0RBVEFfUFJPR1JB TU1BQkxFX0RNQSwKIH07CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIGp6NDc4 MF9kbWFfZHRfbWF0Y2hbXSA9IHsKKwl7IC5jb21wYXRpYmxlID0gImluZ2VuaWMsano0NzcwLWRt YSIsIC5kYXRhID0gJmp6NDc3MF9kbWFfc29jX2RhdGEgfSwKIAl7IC5jb21wYXRpYmxlID0gImlu Z2VuaWMsano0NzgwLWRtYSIsIC5kYXRhID0gJmp6NDc4MF9kbWFfc29jX2RhdGEgfSwKIAl7fSwK IH07Cg==