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: [v1,1/4] dmaengine: imx-sdma: add memcpy interface From: Vinod Koul Message-Id: <20180710152912.GE3219@vkoul-mobl> Date: Tue, 10 Jul 2018 20:59:12 +0530 To: Robin Gong Cc: dan.j.williams@intel.com, shawnguo@kernel.org, s.hauer@pengutronix.de, fabio.estevam@nxp.com, linux@armlinux.org.uk, linux-arm-kernel@lists.infradead.org, kernel@pengutronix.de, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, linux-imx@nxp.com List-ID: SGkgUm9iaW4sCgpPbiAxMS0wNy0xOCwgMDA6MjMsIFJvYmluIEdvbmcgd3JvdGU6Cj4gQWRkIE1F TUNQWSBzdXBwb3J0LCBtZWFud2hpbGUsIGFkZCBTRE1BX0JEX01BWF9DTlQgaW5zdGVhZAo+IG9m ICcweGZmZmYnLgoKbGF0dGVyIHBhcnQgc2hvdWxkIGJlIGl0cyBvd24gcGF0Y2guIE5ldmVyIG1p eCB0aGluZ3MKCj4gK3N0YXRpYyBzdHJ1Y3QgZG1hX2FzeW5jX3R4X2Rlc2NyaXB0b3IgKnNkbWFf cHJlcF9tZW1jcHkoCj4gKwkJc3RydWN0IGRtYV9jaGFuICpjaGFuLCBkbWFfYWRkcl90IGRtYV9k c3QsCj4gKwkJZG1hX2FkZHJfdCBkbWFfc3JjLCBzaXplX3QgbGVuLCB1bnNpZ25lZCBsb25nIGZs YWdzKQo+ICt7Cj4gKwlzdHJ1Y3Qgc2RtYV9jaGFubmVsICpzZG1hYyA9IHRvX3NkbWFfY2hhbihj aGFuKTsKPiArCXN0cnVjdCBzZG1hX2VuZ2luZSAqc2RtYSA9IHNkbWFjLT5zZG1hOwo+ICsJaW50 IGNoYW5uZWwgPSBzZG1hYy0+Y2hhbm5lbDsKPiArCXNpemVfdCBjb3VudDsKPiArCWludCBpID0g MCwgcGFyYW07Cj4gKwlzdHJ1Y3Qgc2RtYV9idWZmZXJfZGVzY3JpcHRvciAqYmQ7Cj4gKwlzdHJ1 Y3Qgc2RtYV9kZXNjICpkZXNjOwo+ICsKPiArCWlmICghY2hhbiB8fCAhbGVuKQo+ICsJCXJldHVy biBOVUxMOwo+ICsKPiArCWRldl9kYmcoc2RtYS0+ZGV2LCAibWVtY3B5OiAlcGFkLT4lcGFkLCBs ZW49JXp1LCBjaGFubmVsPSVkLlxuIiwKPiArCQkmZG1hX3NyYywgJmRtYV9kc3QsIGxlbiwgY2hh bm5lbCk7Cj4gKwo+ICsJZGVzYyA9IHNkbWFfdHJhbnNmZXJfaW5pdChzZG1hYywgRE1BX01FTV9U T19NRU0sIGxlbiAvIFNETUFfQkRfTUFYX0NOVAo+ICsJCQkJCSsgMSk7Cgp0aGlzIGxvb2tzIHF1 aXRlIG9kZCB0byByZWFkIGNvbnNpZGVyOgoKICAgICAgICBlc2MgPSBzZG1hX3RyYW5zZmVyX2lu aXQoc2RtYWMsIERNQV9NRU1fVE9fTUVNLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBsZW4gLyBTRE1BX0JEX01BWF9DTlQgKyAxKTsKCj4gKwlpZiAoIWRlc2MpCj4gKwkJZ290byBl cnJfb3V0Owo+ICsKPiArCWRvIHsKPiArCQljb3VudCA9IG1pbl90KHNpemVfdCwgbGVuLCBTRE1B X0JEX01BWF9DTlQpOwo+ICsJCWJkID0gJmRlc2MtPmJkW2ldOwo+ICsJCWJkLT5idWZmZXJfYWRk ciA9IGRtYV9zcmM7Cj4gKwkJYmQtPmV4dF9idWZmZXJfYWRkciA9IGRtYV9kc3Q7Cj4gKwkJYmQt Pm1vZGUuY291bnQgPSBjb3VudDsKPiArCQlkZXNjLT5jaG5fY291bnQgKz0gY291bnQ7Cj4gKwo+ ICsJCXN3aXRjaCAoc2RtYWMtPndvcmRfc2l6ZSkgewo+ICsJCWNhc2UgRE1BX1NMQVZFX0JVU1dJ RFRIXzRfQllURVM6CgpUaGlzIGxvb2tzIHdyb25nLCB3ZSBhcmUgaW4gbWVtY3B5LCB0aGVyZSBp cyBubyBTTEFWRSBzbyBubyBTTEFWRQp3aWR0aHMuLgoKPiAgc3RhdGljIHN0cnVjdCBkbWFfYXN5 bmNfdHhfZGVzY3JpcHRvciAqc2RtYV9wcmVwX3NsYXZlX3NnKAo+ICAJCXN0cnVjdCBkbWFfY2hh biAqY2hhbiwgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2wsCj4gIAkJdW5zaWduZWQgaW50IHNnX2xl biwgZW51bSBkbWFfdHJhbnNmZXJfZGlyZWN0aW9uIGRpcmVjdGlvbiwKPiBAQCAtMTM0NCw5ICsx NDMxLDkgQEAgc3RhdGljIHN0cnVjdCBkbWFfYXN5bmNfdHhfZGVzY3JpcHRvciAqc2RtYV9wcmVw X3NsYXZlX3NnKAo+ICAKPiAgCQljb3VudCA9IHNnX2RtYV9sZW4oc2cpOwo+ICAKPiAtCQlpZiAo Y291bnQgPiAweGZmZmYpIHsKPiArCQlpZiAoY291bnQgPiBTRE1BX0JEX01BWF9DTlQpIHsKPiAg CQkJZGV2X2VycihzZG1hLT5kZXYsICJTRE1BIGNoYW5uZWwgJWQ6IG1heGltdW0gYnl0ZXMgZm9y IHNnIGVudHJ5IGV4Y2VlZGVkOiAlZCA+ICVkXG4iLAo+IC0JCQkJCWNoYW5uZWwsIGNvdW50LCAw eGZmZmYpOwo+ICsJCQkJCWNoYW5uZWwsIGNvdW50LCBTRE1BX0JEX01BWF9DTlQpOwoKdGhlc2Ug Y2hhbmdlcyBkb250IGJlbG9uZyB0byB0aGlzIHBhdGNoCgo+IEBAIC0xNDg2LDYgKzE1NzMsOCBA QCBzdGF0aWMgaW50IHNkbWFfY29uZmlnKHN0cnVjdCBkbWFfY2hhbiAqY2hhbiwKPiAgCQlzZG1h Yy0+d2F0ZXJtYXJrX2xldmVsIHw9IChkbWFlbmdpbmVfY2ZnLT5kc3RfbWF4YnVyc3QgPDwgMTYp ICYKPiAgCQkJU0RNQV9XQVRFUk1BUktfTEVWRUxfSFdNTDsKPiAgCQlzZG1hYy0+d29yZF9zaXpl ID0gZG1hZW5naW5lX2NmZy0+ZHN0X2FkZHJfd2lkdGg7Cj4gKwl9IGVsc2UgaWYgKGRtYWVuZ2lu ZV9jZmctPmRpcmVjdGlvbiA9PSBETUFfTUVNX1RPX01FTSkgewo+ICsJCXNkbWFjLT53b3JkX3Np emUgPSBkbWFlbmdpbmVfY2ZnLT5kc3RfYWRkcl93aWR0aDsKCnNhbWUgaGVyZSB0b28sIHdlIGFy ZSBpbiAuZGV2aWNlX2NvbmZpZyB3aGljaCBkZWFscyB3aXRoIHNsYXZlLiBOb3QKbWVtY3B5IQoK PiAgCX0gZWxzZSB7Cj4gIAkJc2RtYWMtPnBlcl9hZGRyZXNzID0gZG1hZW5naW5lX2NmZy0+ZHN0 X2FkZHI7Cj4gIAkJc2RtYWMtPndhdGVybWFya19sZXZlbCA9IGRtYWVuZ2luZV9jZmctPmRzdF9t YXhidXJzdCAqCj4gQEAgLTE5MDIsNiArMTk5MSw3IEBAIHN0YXRpYyBpbnQgc2RtYV9wcm9iZShz dHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2KQo+ICAKPiAgCWRtYV9jYXBfc2V0KERNQV9TTEFW RSwgc2RtYS0+ZG1hX2RldmljZS5jYXBfbWFzayk7Cj4gIAlkbWFfY2FwX3NldChETUFfQ1lDTElD LCBzZG1hLT5kbWFfZGV2aWNlLmNhcF9tYXNrKTsKPiArCWRtYV9jYXBfc2V0KERNQV9NRU1DUFks IHNkbWEtPmRtYV9kZXZpY2UuY2FwX21hc2spOwo+ICAKPiAgCUlOSVRfTElTVF9IRUFEKCZzZG1h LT5kbWFfZGV2aWNlLmNoYW5uZWxzKTsKPiAgCS8qIEluaXRpYWxpemUgY2hhbm5lbCBwYXJhbWV0 ZXJzICovCj4gQEAgLTE5NjgsOSArMjA1OCwxMSBAQCBzdGF0aWMgaW50IHNkbWFfcHJvYmUoc3Ry dWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiAgCXNkbWEtPmRtYV9kZXZpY2UuZHN0X2FkZHJf d2lkdGhzID0gU0RNQV9ETUFfQlVTV0lEVEhTOwo+ICAJc2RtYS0+ZG1hX2RldmljZS5kaXJlY3Rp b25zID0gU0RNQV9ETUFfRElSRUNUSU9OUzsKPiAgCXNkbWEtPmRtYV9kZXZpY2UucmVzaWR1ZV9n cmFudWxhcml0eSA9IERNQV9SRVNJRFVFX0dSQU5VTEFSSVRZX1NFR01FTlQ7Cj4gKwlzZG1hLT5k bWFfZGV2aWNlLmRldmljZV9wcmVwX2RtYV9tZW1jcHkgPSBzZG1hX3ByZXBfbWVtY3B5Owo+ICAJ c2RtYS0+ZG1hX2RldmljZS5kZXZpY2VfaXNzdWVfcGVuZGluZyA9IHNkbWFfaXNzdWVfcGVuZGlu ZzsKPiAgCXNkbWEtPmRtYV9kZXZpY2UuZGV2LT5kbWFfcGFybXMgPSAmc2RtYS0+ZG1hX3Bhcm1z Owo+IC0JZG1hX3NldF9tYXhfc2VnX3NpemUoc2RtYS0+ZG1hX2RldmljZS5kZXYsIDY1NTM1KTsK PiArCXNkbWEtPmRtYV9kZXZpY2UuY29weV9hbGlnbiA9IERNQUVOR0lORV9BTElHTl80X0JZVEVT Owo+ICsJZG1hX3NldF9tYXhfc2VnX3NpemUoc2RtYS0+ZG1hX2RldmljZS5kZXYsIFNETUFfQkRf TUFYX0NOVCk7Cgp0aGlzIGxpbmUgc2hvdWxkIG5vdCBiZSBwYXJ0IG9mIHRoaXMgcGF0Y2gK