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,2/7] dmaengine: xilinx_dma: in axidma slave_sg and dma_cylic mode align split descriptors From: Andrea Merello Message-Id: <20180802141012.19970-2-andrea.merello@gmail.com> Date: Thu, 2 Aug 2018 16:10:07 +0200 To: vkoul@kernel.org, dan.j.williams@intel.com, michal.simek@xilinx.com, appana.durga.rao@xilinx.com, dmaengine@vger.kernel.org Cc: v4-000linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, robh+dt@kernel.org, mark.rutland@arm.com, devicetree@vger.kernel.org, radhey.shyam.pandey@xilinx.com, Andrea Merello List-ID: V2hlbmV2ZXIgYSBzaW5nbGUgb3IgY3ljbGljIHRyYW5zYWN0aW9uIGlzIHByZXBhcmVkLCB0aGUg ZHJpdmVyCmNvdWxkIGV2ZW50dWFsbHkgc3BsaXQgaXQgb3ZlciBzZXZlcmFsIFNHIGRlc2NyaXB0 b3JzIGluIG9yZGVyCnRvIGRlYWwgd2l0aCB0aGUgSFcgbWF4aW11bSB0cmFuc2ZlciBsZW5ndGgu CgpUaGlzIGNvdWxkIGVuZCB1cCBpbiBETUEgb3BlcmF0aW9ucyBzdGFydGluZyBmcm9tIGEgbWlz YWxpZ25lZAphZGRyZXNzLiBUaGlzIHNlZW1zIGZhdGFsIGZvciB0aGUgSFcgaWYgRFJFIGlzIG5v dCBlbmFibGVkLgoKVGhpcyBwYXRjaCBldmVudHVhbGx5IGFkanVzdHMgdGhlIHRyYW5zZmVyIHNp emUgaW4gb3JkZXIgdG8gbWFrZSBzdXJlCmFsbCBvcGVyYXRpb25zIHN0YXJ0IGZyb20gYW4gYWxp Z25lZCBhZGRyZXNzLgoKQ2M6IFJhZGhleSBTaHlhbSBQYW5kZXkgPHJhZGhleS5zaHlhbS5wYW5k ZXlAeGlsaW54LmNvbT4KU2lnbmVkLW9mZi1ieTogQW5kcmVhIE1lcmVsbG8gPGFuZHJlYS5tZXJl bGxvQGdtYWlsLmNvbT4KUmV2aWV3ZWQtYnk6IFJhZGhleSBTaHlhbSBQYW5kZXkgPHJhZGhleS5z aHlhbS5wYW5kZXlAeGlsaW54LmNvbT4KLS0tCkNoYW5nZXMgaW4gdjI6CiAgICAgICAgLSBkb24n dCBpbnRyb2R1Y2UgY29weV9tYXNrIGZpZWxkLCByYXRoZXIgcmVseSBvbiBhbHJlYWR5LWVzaXN0 ZW50CiAgICAgICAgICBjb3B5X2FsaWduIGZpZWxkLiBTdWdnZXN0ZWQgYnkgUmFkaGV5IFNoeWFt IFBhbmRleQogICAgICAgIC0gcmV3b3JkIHRpdGxlCkNoYW5nZXMgaW4gdjM6CgktIGZpeCBidWcg aW50cm9kdWNlZCBpbiB2Mjogd3JvbmcgY29weSBzaXplIHdoZW4gRFJFIGlzIGVuYWJsZWQKCS0g dXNlIGltcGxlbWVudGF0aW9uIHN1Z2dlc3RlZCBieSBSYWRoZXkgU2h5YW0gUGFuZGV5CkNoYW5n ZXMgaW4gdjQ6CgktIHJld29yayBvbiB0aGUgdG9wIG9mIDEvNgotLS0KIGRyaXZlcnMvZG1hL3hp bGlueC94aWxpbnhfZG1hLmMgfCAyMiArKysrKysrKysrKysrKysrKystLS0tCiAxIGZpbGUgY2hh bmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2RtYS94aWxpbngveGlsaW54X2RtYS5jIGIvZHJpdmVycy9kbWEveGlsaW54L3hpbGlueF9k bWEuYwppbmRleCBhM2FhYTBlMzRjYzcuLmFhYTZkZThhNzBlNCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9kbWEveGlsaW54L3hpbGlueF9kbWEuYworKysgYi9kcml2ZXJzL2RtYS94aWxpbngveGlsaW54 X2RtYS5jCkBAIC05NTQsMTUgKzk1NCwyOCBAQCBzdGF0aWMgaW50IHhpbGlueF9kbWFfYWxsb2Nf Y2hhbl9yZXNvdXJjZXMoc3RydWN0IGRtYV9jaGFuICpkY2hhbikKIAogLyoqCiAgKiB4aWxpbnhf ZG1hX2NhbGNfY29weXNpemUgLSBDYWxjdWxhdGUgdGhlIGFtb3VudCBvZiBkYXRhIHRvIGNvcHkK KyAqIEBjaGFuOiBEcml2ZXIgc3BlY2lmaWMgRE1BIGNoYW5uZWwKICAqIEBzaXplOiBUb3RhbCBk YXRhIHRoYXQgbmVlZHMgdG8gYmUgY29waWVkCiAgKiBAZG9uZTogQW1vdW50IG9mIGRhdGEgdGhh dCBoYXMgYmVlbiBhbHJlYWR5IGNvcGllZAogICoKICAqIFJldHVybjogQW1vdW50IG9mIGRhdGEg dGhhdCBoYXMgdG8gYmUgY29waWVkCiAgKi8KLXN0YXRpYyBpbnQgeGlsaW54X2RtYV9jYWxjX2Nv cHlzaXplKGludCBzaXplLCBpbnQgZG9uZSkKK3N0YXRpYyBpbnQgeGlsaW54X2RtYV9jYWxjX2Nv cHlzaXplKHN0cnVjdCB4aWxpbnhfZG1hX2NoYW4gKmNoYW4sCisJCQkJICAgIGludCBzaXplLCBp bnQgZG9uZSkKIHsKLQlyZXR1cm4gbWluX3Qoc2l6ZV90LCBzaXplIC0gZG9uZSwKKwlzaXplX3Qg Y29weSA9IG1pbl90KHNpemVfdCwgc2l6ZSAtIGRvbmUsCiAJCSAgICAgWElMSU5YX0RNQV9NQVhf VFJBTlNfTEVOKTsKKworCWlmICgoY29weSArIGRvbmUgPCBzaXplKSAmJgorCSAgICBjaGFuLT54 ZGV2LT5jb21tb24uY29weV9hbGlnbikgeworCQkvKgorCQkgKiBJZiB0aGlzIGlzIG5vdCB0aGUg bGFzdCBkZXNjcmlwdG9yLCBtYWtlIHN1cmUKKwkJICogdGhlIG5leHQgb25lIHdpbGwgYmUgcHJv cGVybHkgYWxpZ25lZAorCQkgKi8KKwkJY29weSA9IHJvdW5kZG93bihjb3B5LAorCQkJCSAoMSA8 PCBjaGFuLT54ZGV2LT5jb21tb24uY29weV9hbGlnbikpOworCX0KKwlyZXR1cm4gY29weTsKIH0K IAogLyoqCkBAIC0xODA0LDcgKzE4MTcsNyBAQCBzdGF0aWMgc3RydWN0IGRtYV9hc3luY190eF9k ZXNjcmlwdG9yICp4aWxpbnhfZG1hX3ByZXBfc2xhdmVfc2coCiAJCQkgKiBDYWxjdWxhdGUgdGhl IG1heGltdW0gbnVtYmVyIG9mIGJ5dGVzIHRvIHRyYW5zZmVyLAogCQkJICogbWFraW5nIHN1cmUg aXQgaXMgbGVzcyB0aGFuIHRoZSBodyBsaW1pdAogCQkJICovCi0JCQljb3B5ID0geGlsaW54X2Rt YV9jYWxjX2NvcHlzaXplKHNnX2RtYV9sZW4oc2cpLAorCQkJY29weSA9IHhpbGlueF9kbWFfY2Fs Y19jb3B5c2l6ZShjaGFuLCBzZ19kbWFfbGVuKHNnKSwKIAkJCQkJCQlzZ191c2VkKTsKIAkJCWh3 ID0gJnNlZ21lbnQtPmh3OwogCkBAIC0xOTA5LDcgKzE5MjIsOCBAQCBzdGF0aWMgc3RydWN0IGRt YV9hc3luY190eF9kZXNjcmlwdG9yICp4aWxpbnhfZG1hX3ByZXBfZG1hX2N5Y2xpYygKIAkJCSAq IENhbGN1bGF0ZSB0aGUgbWF4aW11bSBudW1iZXIgb2YgYnl0ZXMgdG8gdHJhbnNmZXIsCiAJCQkg KiBtYWtpbmcgc3VyZSBpdCBpcyBsZXNzIHRoYW4gdGhlIGh3IGxpbWl0CiAJCQkgKi8KLQkJCWNv cHkgPSB4aWxpbnhfZG1hX2NhbGNfY29weXNpemUocGVyaW9kX2xlbiwgc2dfdXNlZCk7CisJCQlj b3B5ID0geGlsaW54X2RtYV9jYWxjX2NvcHlzaXplKGNoYW4sCisJCQkJCQkJcGVyaW9kX2xlbiwg c2dfdXNlZCk7CiAJCQlodyA9ICZzZWdtZW50LT5odzsKIAkJCXhpbGlueF9heGlkbWFfYnVmKGNo YW4sIGh3LCBidWZfYWRkciwgc2dfdXNlZCwKIAkJCQkJICBwZXJpb2RfbGVuICogaSk7Cg==